From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Francois Moine Subject: [PATCH] ASoC: make snd_soc_dai_link more symmetrical Date: Thu, 12 Dec 2013 18:59:17 +0100 Message-ID: <20131212185917.7ed6b21f@armhf> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp5-g21.free.fr (smtp5-g21.free.fr [212.27.42.5]) by alsa0.perex.cz (Postfix) with ESMTP id A078F2608D7 for ; Thu, 12 Dec 2013 19:00:03 +0100 (CET) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Liam Girdwood , Mark Brown Cc: Takashi Iwai , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org List-Id: alsa-devel@alsa-project.org VGhpcyBwYXRjaCByZW5kZXJzIG9wdGlvbmFsIHRoZSBDT0RFQyBuYW1lIC8gT0Ygbm9kZSBvbiBz b3VuZCBjYXJkIHJlZ2lzdGVyLAphcyBpdCBpcyBkb25lIGZvciB0aGUgQ1BVIHNpZGUsIGluIHRo ZSBjYXNlIHRoZSBDT0RFQyBEQUkgbmFtZSBpcyB1bmlxdWUuCgpUaGlzIHNpbXBsaWZpZXMgdGhl IGRlZmluaXRpb24gb2YgQ09ERUNzIHdpdGggbXVsdGlwbGUgREFJcywgZXNwZWNpYWxseQppbiBE VHMsIHdoaWxlIGtlZXBpbmcgY29tcGF0aWJpbGl0eS4KClNpZ25lZC1vZmYtYnk6IEplYW4tRnJh bmNvaXMgTW9pbmUgPG1vaW5lamZAZnJlZS5mcj4KLS0tCiBpbmNsdWRlL3NvdW5kL3NvYy5oICB8 ICA2ICsrKystLQogc291bmQvc29jL3NvYy1jb3JlLmMgfCA3MyArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFu Z2VkLCA1MSBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9pbmNs dWRlL3NvdW5kL3NvYy5oIGIvaW5jbHVkZS9zb3VuZC9zb2MuaAppbmRleCAxZjc0MWNiLi42N2Mz ODJlIDEwMDY0NAotLS0gYS9pbmNsdWRlL3NvdW5kL3NvYy5oCisrKyBiL2luY2x1ZGUvc291bmQv c29jLmgKQEAgLTg1Miw4ICs4NTIsMTAgQEAgc3RydWN0IHNuZF9zb2NfZGFpX2xpbmsgewogCSAq LwogCWNvbnN0IGNoYXIgKmNwdV9kYWlfbmFtZTsKIAkvKgotCSAqIFlvdSBNVVNUIHNwZWNpZnkg dGhlIGxpbmsncyBjb2RlYywgZWl0aGVyIGJ5IGRldmljZSBuYW1lLCBvciBieQotCSAqIERUL09G IG5vZGUsIGJ1dCBub3QgYm90aC4KKwkgKiBZb3UgTUFZIHNwZWNpZnkgdGhlIGxpbmsncyBjb2Rl YywgZWl0aGVyIGJ5IGRldmljZSBuYW1lLCBvciBieQorCSAqIERUL09GIG5vZGUsIGJ1dCBub3Qg Ym90aC4gSWYgdGhpcyBpbmZvcm1hdGlvbiBpcyBvbWl0dGVkLAorCSAqIHRoZSBDT0RFQyBEQUkg aXMgbWF0Y2hlZCB1c2luZyAuY29kZWNfZGFpX25hbWUgb25seSwgd2hpY2ggaGVuY2UKKwkgKiBt dXN0IGJlIGdsb2JhbGx5IHVuaXF1ZS4KIAkgKi8KIAljb25zdCBjaGFyICpjb2RlY19uYW1lOwog CWNvbnN0IHN0cnVjdCBkZXZpY2Vfbm9kZSAqY29kZWNfb2Zfbm9kZTsKZGlmZiAtLWdpdCBhL3Nv dW5kL3NvYy9zb2MtY29yZS5jIGIvc291bmQvc29jL3NvYy1jb3JlLmMKaW5kZXggNGU1M2Q4Ny4u MTFiNzI5YyAxMDA2NDQKLS0tIGEvc291bmQvc29jL3NvYy1jb3JlLmMKKysrIGIvc291bmQvc29j L3NvYy1jb3JlLmMKQEAgLTg4MywyOCArODgzLDU0IEBAIHN0YXRpYyBpbnQgc29jX2JpbmRfZGFp X2xpbmsoc3RydWN0IHNuZF9zb2NfY2FyZCAqY2FyZCwgaW50IG51bSkKIAkJcmV0dXJuIC1FUFJP QkVfREVGRVI7CiAJfQogCi0JLyogRmluZCBDT0RFQyBmcm9tIHJlZ2lzdGVyZWQgQ09ERUNzICov Ci0JbGlzdF9mb3JfZWFjaF9lbnRyeShjb2RlYywgJmNvZGVjX2xpc3QsIGxpc3QpIHsKLQkJaWYg KGRhaV9saW5rLT5jb2RlY19vZl9ub2RlKSB7Ci0JCQlpZiAoY29kZWMtPmRldi0+b2Zfbm9kZSAh PSBkYWlfbGluay0+Y29kZWNfb2Zfbm9kZSkKLQkJCQljb250aW51ZTsKLQkJfSBlbHNlIHsKLQkJ CWlmIChzdHJjbXAoY29kZWMtPm5hbWUsIGRhaV9saW5rLT5jb2RlY19uYW1lKSkKLQkJCQljb250 aW51ZTsKKwlpZiAoZGFpX2xpbmstPmNvZGVjX29mX25vZGUgfHwgZGFpX2xpbmstPmNvZGVjX25h bWUpIHsKKworCQkvKiBGaW5kIENPREVDIGZyb20gcmVnaXN0ZXJlZCBDT0RFQ3MgKi8KKwkJbGlz dF9mb3JfZWFjaF9lbnRyeShjb2RlYywgJmNvZGVjX2xpc3QsIGxpc3QpIHsKKwkJCWlmIChkYWlf bGluay0+Y29kZWNfb2Zfbm9kZSkgeworCQkJCWlmIChjb2RlYy0+ZGV2LT5vZl9ub2RlICE9IGRh aV9saW5rLT5jb2RlY19vZl9ub2RlKQorCQkJCQljb250aW51ZTsKKwkJCX0gZWxzZSB7CisJCQkJ aWYgKHN0cmNtcChjb2RlYy0+bmFtZSwgZGFpX2xpbmstPmNvZGVjX25hbWUpKQorCQkJCQljb250 aW51ZTsKKwkJCX0KKworCQkJcnRkLT5jb2RlYyA9IGNvZGVjOworCisJCQkvKgorCQkJICogQ09E RUMgZm91bmQsIHNvIGZpbmQgQ09ERUMgREFJIGZyb20gcmVnaXN0ZXJlZCBEQUlzIGZyb20KKwkJ CSAqIHRoaXMgQ09ERUMKKwkJCSAqLworCQkJbGlzdF9mb3JfZWFjaF9lbnRyeShjb2RlY19kYWks ICZkYWlfbGlzdCwgbGlzdCkgeworCQkJCWlmIChjb2RlYy0+ZGV2ID09IGNvZGVjX2RhaS0+ZGV2 ICYmCisJCQkJCSFzdHJjbXAoY29kZWNfZGFpLT5uYW1lLAorCQkJCQkJZGFpX2xpbmstPmNvZGVj X2RhaV9uYW1lKSkgeworCisJCQkJCXJ0ZC0+Y29kZWNfZGFpID0gY29kZWNfZGFpOworCQkJCX0K KwkJCX0KKworCQkJaWYgKCFydGQtPmNvZGVjX2RhaSkgeworCQkJCWRldl9lcnIoY2FyZC0+ZGV2 LCAiQVNvQzogQ09ERUMgREFJICVzIG5vdCByZWdpc3RlcmVkXG4iLAorCQkJCQlkYWlfbGluay0+ Y29kZWNfZGFpX25hbWUpOworCQkJCXJldHVybiAtRVBST0JFX0RFRkVSOworCQkJfQogCQl9CiAK LQkJcnRkLT5jb2RlYyA9IGNvZGVjOworCQlpZiAoIXJ0ZC0+Y29kZWMpIHsKKwkJCWRldl9lcnIo Y2FyZC0+ZGV2LCAiQVNvQzogQ09ERUMgJXMgbm90IHJlZ2lzdGVyZWRcbiIsCisJCQkJZGFpX2xp bmstPmNvZGVjX25hbWUpOworCQkJcmV0dXJuIC1FUFJPQkVfREVGRVI7CisJCX0KKwl9IGVsc2Ug ewogCi0JCS8qCi0JCSAqIENPREVDIGZvdW5kLCBzbyBmaW5kIENPREVDIERBSSBmcm9tIHJlZ2lz dGVyZWQgREFJcyBmcm9tCi0JCSAqIHRoaXMgQ09ERUMKLQkJICovCisJCS8qIGZpbmQgQ09ERUMg REFJIGZyb20gcmVnaXN0ZXJlZCBEQUlzICovCiAJCWxpc3RfZm9yX2VhY2hfZW50cnkoY29kZWNf ZGFpLCAmZGFpX2xpc3QsIGxpc3QpIHsKLQkJCWlmIChjb2RlYy0+ZGV2ID09IGNvZGVjX2RhaS0+ ZGV2ICYmCi0JCQkJIXN0cmNtcChjb2RlY19kYWktPm5hbWUsCisJCQlpZiAoIXN0cmNtcChjb2Rl Y19kYWktPm5hbWUsCiAJCQkJCWRhaV9saW5rLT5jb2RlY19kYWlfbmFtZSkpIHsKLQogCQkJCXJ0 ZC0+Y29kZWNfZGFpID0gY29kZWNfZGFpOworCQkJCXJ0ZC0+Y29kZWMgPSBjb2RlY19kYWktPmNv ZGVjOworCQkJCWJyZWFrOwogCQkJfQogCQl9CiAKQEAgLTkxNSwxMiArOTQxLDYgQEAgc3RhdGlj IGludCBzb2NfYmluZF9kYWlfbGluayhzdHJ1Y3Qgc25kX3NvY19jYXJkICpjYXJkLCBpbnQgbnVt KQogCQl9CiAJfQogCi0JaWYgKCFydGQtPmNvZGVjKSB7Ci0JCWRldl9lcnIoY2FyZC0+ZGV2LCAi QVNvQzogQ09ERUMgJXMgbm90IHJlZ2lzdGVyZWRcbiIsCi0JCQlkYWlfbGluay0+Y29kZWNfbmFt ZSk7Ci0JCXJldHVybiAtRVBST0JFX0RFRkVSOwotCX0KLQogCS8qIGlmIHRoZXJlJ3Mgbm8gcGxh dGZvcm0gd2UgbWF0Y2ggb24gdGhlIGVtcHR5IHBsYXRmb3JtICovCiAJcGxhdGZvcm1fbmFtZSA9 IGRhaV9saW5rLT5wbGF0Zm9ybV9uYW1lOwogCWlmICghcGxhdGZvcm1fbmFtZSAmJiAhZGFpX2xp bmstPnBsYXRmb3JtX29mX25vZGUpCkBAIC0zNzEwLDEyICszNzMwLDEzIEBAIGludCBzbmRfc29j X3JlZ2lzdGVyX2NhcmQoc3RydWN0IHNuZF9zb2NfY2FyZCAqY2FyZCkKIAkJc3RydWN0IHNuZF9z b2NfZGFpX2xpbmsgKmxpbmsgPSAmY2FyZC0+ZGFpX2xpbmtbaV07CiAKIAkJLyoKLQkJICogQ29k ZWMgbXVzdCBiZSBzcGVjaWZpZWQgYnkgMSBvZiBuYW1lIG9yIE9GIG5vZGUsCi0JCSAqIG5vdCBi b3RoIG9yIG5laXRoZXIuCisJCSAqIENvZGVjIG1heSBiZSBzcGVjaWZpZWQgYnkgZWl0aGVyIG5h bWUgb3IgT0Ygbm9kZSwKKwkJICogYnV0IGNhbiBiZSBsZWZ0IHVuc3BlY2lmaWVkCisJCSAqIGFu ZCB3aWxsIGJlIG1hdGNoZWQgYmFzZWQgb24gQ09ERUMgREFJIG5hbWUgYWxvbmUuCiAJCSAqLwot CQlpZiAoISFsaW5rLT5jb2RlY19uYW1lID09ICEhbGluay0+Y29kZWNfb2Zfbm9kZSkgeworCQlp ZiAobGluay0+Y29kZWNfbmFtZSAmJiBsaW5rLT5jb2RlY19vZl9ub2RlKSB7CiAJCQlkZXZfZXJy KGNhcmQtPmRldiwKLQkJCQkiQVNvQzogTmVpdGhlci9ib3RoIGNvZGVjIG5hbWUvb2Zfbm9kZSBh cmUgc2V0IGZvciAlc1xuIiwKKwkJCQkiQVNvQzogQm90aCBjb2RlYyBuYW1lL29mX25vZGUgYXJl IHNldCBmb3IgJXNcbiIsCiAJCQkJbGluay0+bmFtZSk7CiAJCQlyZXR1cm4gLUVJTlZBTDsKIAkJ fQoKCi0tIApLZW4gYXIgYydoZW50YcOxCXwJICAgICAgKiogQnJlaXpoIGhhIExpbnV4IGF0YXYh ICoqCkplZgkJfAkJaHR0cDovL21vaW5lamYuZnJlZS5mci8KX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KQWxzYS1kZXZlbCBtYWlsaW5nIGxpc3QKQWxzYS1k ZXZlbEBhbHNhLXByb2plY3Qub3JnCmh0dHA6Ly9tYWlsbWFuLmFsc2EtcHJvamVjdC5vcmcvbWFp bG1hbi9saXN0aW5mby9hbHNhLWRldmVsCg==