signature=d60f979e909db97dbaa034ebe539f2fd,Advanced Linux Sound Architecture / [alsa-cvslog] [ALSA G...

This is an automated email from the git hooks/post-receive script. It was

generated because a ref change was pushed to the repository containing

the project "ALSA driver repository - compatibility code and drivers, mirrored kernel code".

The branch, mirror has been updated

via 243df249a65cc7bc0233615ef2596e64c67a82f6 (commit)

via 477b16e76d3416c7958a3a4482c37aa1961f60ea (commit)

via fa8188a15d0ec3e3246fe34405ac9baeafbd075c (commit)

via 84e0f933844cc09a190b5e915929d2a838f411d4 (commit)

via 5041b3be6496746087f0825b6abc743924f942d2 (commit)

via a9893632906699ee10dd26d4e410b9c61e494c46 (commit)

via e9bc9cb034b8d2e0516bc3cc149aff9415170107 (commit)

via 77c8b01fc6628f304c72f61c831a40667089dfff (commit)

via 75b5dbffaa878602e7604a0fe50d2a96c60d4428 (commit)

via 1aa244a413376e48e6b3851c665e2fcf5c285aa1 (commit)

via 76fb54a299bf58b3177445a8f2c5e55a769516f1 (commit)

via f166555695c9ccc25fe368bc2519f5c7e48482b6 (commit)

via 4d7f8bd4c91ece9fba7289217c91c4bb62b820ba (commit)

via 78adcd13598a0831659994f431fe40279d7960c6 (commit)

via e7fd5fc3385e0321a1820e078c4b3f85dc1a406f (commit)

via bf991ae594e26bf9311d9d8f73cee898e8914d91 (commit)

via 68b1cc82a5120c4974b4a7ac0e7493f363e97290 (commit)

via f9ef6f7516199e5f6dc567cd184db4b371a87868 (commit)

via b5f9f254395ab4761de7d1f7b262c6656a9f73bb (commit)

via d8eb2f16096168772aa50f4d93283643da2df9e1 (commit)

via 052aafe39af443174842310dcb1f7b4a47b44243 (commit)

via 894ee539df439a48337a2d22cbab387b5a7e0f72 (commit)

via 14646f6e1fab39680b48053ed8f386f0035777a1 (commit)

via f663bbc04b6ac6d6551e91655d61430603b56ce4 (commit)

via 714885ac83fd69ad06ec476942aaa6b30b33ea9d (commit)

via 15862004530244298522dd6c59d1324db79bba93 (commit)

via 43a6593170272bdda211d89dc46c457fa1aa7821 (commit)

via ddee16f6c5f11806ae8136ad8488ce62a59338fb (commit)

via 51283f239bacd60e74b6089af1297aec6438d23d (commit)

via bf68ccffcf2837642e956568520256df6f7bab6e (commit)

via 9cfb4487cb2f8a1fb685eca9ee015047fa2645f4 (commit)

via 3f7ee59774817cc201cbd6af22295922f1abbd9b (commit)

via 25a707d16821845bba00be6f3c3df4025b77b45f (commit)

via 1cb133c39fb40753a59b699952d26e0baf6da873 (commit)

via e0256f800f8a8709bdb964d4033eb8d68c056b34 (commit)

via eef9894dcea02b9f3f848f3498456399c54ed5fc (commit)

via 09774ef3105b3c5f3f2cba62ad69a0ac1a18aaef (commit)

via a49f3cbfc052a62af9c003840513bbc39614b579 (commit)

via 4fe9e98ee27001a3ed77f570f6c4c96aecb1c260 (commit)

via 367155e725a165f38a4075933e3ca68ce20ca8d9 (commit)

via dc0490e47821960fb2829b6983602f67ce47aa08 (commit)

via 1a3c6703d28e4231a566a6eca07f7f3bbc0d88c6 (commit)

via c5c4f12d722f0b2dd209b922d9f27f2bff0d3644 (commit)

via 917a98c9c0b94e7be4b11c240e42d99fa433c0e0 (commit)

via feead361e20121f809d6e1e71172417556e31f73 (commit)

via 254cdf9e97cfe590ab404af0df5f71f27310d1ef (commit)

via a07fb7e5429d52ecd87608c4f72152f9274978b4 (commit)

via 1ca901173ab62b50468128cf36a9acf3fdf2c26e (commit)

via 53b9edf11f2debf65b8fa1a0d9f600588960d028 (commit)

via 2d58af9c264d9624dc46af7ccc901e1398199ae2 (commit)

via 8a093faa88808132d4f2cf6050251a7ff836372a (commit)

via c2212fadf025c09fa4edda52a09214b851e50a8f (commit)

via e056f7302917bcb66f30539256c80b8e91bba83f (commit)

via 07ef44863506a0139e3aca3ecd8ddd3f24d20588 (commit)

via 4a99b3a5ce937da4c11e859b2914542acf3a70ad (commit)

via 92f7c4a6033dc72ce4d5fc9af8ce1d3ae0ba91c6 (commit)

via 10a6ec24e60945a4a2d1de102027371d4b22813a (commit)

via 7f857e6e534da2ba16d003e4caed979e94235ae3 (commit)

via 1fa277c60591f786efc21d695c4f98091c55a249 (commit)

via add6cd35f7a268e169eafbc5760986691a6264ba (commit)

via d2f6055ed3fe944d7119d70562e44938ba316ce3 (commit)

via ad93d5df7dfdab4b8bf9486ebc06e837f06df14e (commit)

via 32e3057dae1943082f0b0d7a4c9c18a0c77c36f9 (commit)

via e0603faeccaff6f5430f7174cda4c13660d8e886 (commit)

via f0ac406e2b7363f64c5efdf5a1f6fad1ed091962 (commit)

via 198c8ff9629bb6507cdbc1e27e5d96e57564e48a (commit)

via 589aca83c5106d8774b35fd3ab60644ab9971ab4 (commit)

via 6d62b224946dd2005c28fd8c9ca7870c51065371 (commit)

via 59123029ee5fd8843a8372da47816b87eb26726c (commit)

via f083202422d0cdc7587a2a09890d19ab4d666e8c (commit)

via 782fd956e301951c4ce63c5b35a8bb9056ac3f43 (commit)

via b9420a5c39a82bbaae4af08ae46c0af3b663fbd4 (commit)

via e84c7fd8504873483889c1f3023c726e0cff319c (commit)

via 7f1c919e0666ed19225e28910af1769157a73f29 (commit)

via d0696e015915d76afb9a4683605ed99283659337 (commit)

via 45e9f2be0fc520233b6f6bfe2c271594c3e80aa5 (commit)

via 404b735366abd51e83998624d8b27e534a9c4ae6 (commit)

via 2ce4964e91716c4ae407f91f3362ae106b440d12 (commit)

via 3a5ba8733e179d8dd5e50f4ebb8ed48cd7ce72b4 (commit)

via bbb5fe4e5566026c5f09c751f3ea0a94ed11046f (commit)

via d307b70dad1424c6e90ee33892001c186e320473 (commit)

via 3a917eab2c44e222d18df71dfe704b2160aee9b2 (commit)

via 9099a9e005613e399008b92bfe2322316c341d92 (commit)

via 35afefaf0d633419c38f1a617621cc74081b63ca (commit)

via 095dbb23e4c7c7e55300f0729898b6a7c5bea50b (commit)

via d31f5bb9d3540460f6720c9a68a05f1959f7777f (commit)

via e94cc933307fcf2acbe8e30e6829ec6ed7ebbe09 (commit)

via a6f39d7990b1508373df7be8a2cedb5e00803738 (commit)

via c5e1a5ae98c23fd2bc7a256ae32e3ee691899535 (commit)

via 1a2378dceb5d9ff42b7b46f18245efbb79616648 (commit)

via 63a79616fa96a3347f2de42f497fb497c3ecfede (commit)

via 6e17c2350480aca716186d730a0f49ca48c47a5b (commit)

via 7f3a9e39dc43d15f59d6651e3bc39ce76039e9ee (commit)

via ecf290c50d17824565ef9f2fc43cd7088fa2a064 (commit)

via c34f1364afe4c19524ba5a3707cf61ccf1ad0e31 (commit)

via e7c9ebb14105144041b337c92082110bd9b6781e (commit)

via 7d8df937ac49cf70c8f38cc895ac531f335286e9 (commit)

via 00d42cc476173e5a6f1f7dfe3ef98910ab4f41ec (commit)

via e4e79b8b7c34ce3612f05973f6d3645f8ee4e09e (commit)

via 02adfd5c067467ebdd2156c501401ce2f3e09121 (commit)

via da75ea5533d4033e648a9149457356d6addc244c (commit)

via 0cff139720048febd1737dae8a021741f27701aa (commit)

via 57d7bcfc8a18104e5c9e88c1447c1cac5914f63d (commit)

via fb2479f91fdf4dd0e78ddfae0b7a8ddd89266d70 (commit)

via e7327bec5e3dc0957b914d35b2b3b34523140cdb (commit)

via c3dc9ce10a152d9809bbfea1706c1af8b9b9e3da (commit)

via 5c15866b44f41f619b2ec2fb6848b103219c221a (commit)

via d2fd58405bbe6aa258c7de0209142973a4ef2c6b (commit)

via fab67c50bf1d6bd735b5d1ff43db962d98d7a397 (commit)

via 46f9677191e4ccca160cdbf2ee1c868a98f97943 (commit)

via a7a23fccf525499610fcaf4b93f59c982b097e4f (commit)

via e8b53f2f1cb66a5e05a4ec97c8ce6a49399287e5 (commit)

via fd63194f8a5d6229f66e444d8bde2f8b1fcf6f94 (commit)

via adac25c5fb753d46e9da5afa45016c8f7ea04462 (commit)

via dbf4454e9ff100c73fa81d35749f19a4554c9fc5 (commit)

via 327a7d618a093ff36c0a6da98b3d3061bc4f3d22 (commit)

via 36331ba572c36d453a1cee8ee36baf412488b46b (commit)

via e462a167380989ac0bc98e573590fa4dee76a3e5 (commit)

via ea1c80312252ddfe940a1810b353311887886858 (commit)

via d6ff907e1c7590448a4b516a9647f34eaeda5a4f (commit)

via 956c1d24ddb30b13444579227891fe6a490546df (commit)

via 8a9078028e4bb802c2aa0c50bd52200d866dbeb2 (commit)

via 91ef09f56dbbaf59c6baea67165aaf0bba53aa69 (commit)

via 9e2b79fb002e4176962f8eb53ea37704580b1fa8 (commit)

via a1f66fb87b565fe03e937742a379251a76531dcd (commit)

via 25838387c3f5f3b354dd51614e97667afdfe1bd3 (commit)

via 65912d57fe897e3786d4f00077b0b74841b4c8db (commit)

via a61c5526dcd80a29b59ea27c0bd716faebe613ef (commit)

via 84e52630266338baf7ce04cfaf17bc5324063618 (commit)

via cff684c96bd53e7dd15b42fac100dc8065e13222 (commit)

via de4633c39eabff029025cc9cd350097e52a93426 (commit)

via e2c15a9f1efb6ed74e0cf0dd4317c627540d7a7c (commit)

via d5b220e2e77b72328c7cdf3c03f4fb648531f403 (commit)

via 9a9a7be299577f664efc49288d4ee3f6c12ce88f (commit)

via 9b89d20d6fa7d8702381383feb1339ef7db0c6e2 (commit)

via d159fcf6ad41f99e75001d8514d1e3924a6b2ef0 (commit)

via 9229c57a7c8e9d30fb5398810ebe709f897452bc (commit)

via a66381124fc7c3ae17151fcce216cbfb698c2d0a (commit)

via dcabc9b1ecbc0817af02b1dd26472d75900b9f66 (commit)

via 937f51a5c31fc609d50a3510b203e2ccedb37cfb (commit)

via 7b6301a134918f54537648b83b9cdbd72b372c25 (commit)

via 9ea238a8723253e400b41c60c6fb587d549d93cc (commit)

via afdfea2c23319e72f39520142319540cd903889c (commit)

via 91a240c1226217e2d5dd416f16697bde30ee14f7 (commit)

via 67acd0e62c2f20746a4100ec881ca0d76b4b9649 (commit)

via 478cdfab0eae0efaa34e5a2f41682f7de257e4a2 (commit)

via 1adfb5f16f715e62c6829b3e0a1d9962f3a2ec09 (commit)

via 870a67b58424e8369b0ab2434ffd5ff144fea154 (commit)

via a5973594f38fad62731dc479650fc6f59ef13d01 (commit)

via cf33c3a6de38887f1dc4dad2f3417729fc321239 (commit)

via 6889c7475f9f27c26b9a45b8d49540cd59de7e25 (commit)

via a7a1dcdcecb87d35761ecf26f9360d14f9c4707b (commit)

via 23459ef05ee17ee65a39e23a0b6660c927128f35 (commit)

via 59f8e201f52b862e6f78ad2500f4f947a79b71fd (commit)

via 91b1fe6d11bb4e7f11a1f5d8e482481aefdc8918 (commit)

via 7d52fcdb64388561ca8d46a913a9df7e98a1737c (commit)

via 29284a9bc95c74776e455379d05a2b680af6161c (commit)

via d99935344ddf5ae24dee74906d8d6f7ec58838e7 (commit)

via 9be81c995df95bc3abcb9941db7e3b60f2ce66b6 (commit)

via 1b0a6536448f48c944b772fe32b553ed2a8420d6 (commit)

via 73095d4fae707ec7eee3e40b6689a9dbb967462c (commit)

via 89962d1ed1bcf0216dfbd866cf06c9deb71c3edd (commit)

via dbf91b6311f0569ef556f166d6a30d0047835916 (commit)

via f0a6cba2b9b06f2c7b311d335f06ae02c8245217 (commit)

via e7c092fc0d2e499cd4d1cf472fdac81b43b4835e (commit)

via 98351231407455b7f44089c3ad5d132c760ab68d (commit)

via 28a3070cd0cdb1e881b2f293c998350d655babdb (commit)

via 58f7b1de06a5bdbc3fd3adbbe81f9ff364818d3f (commit)

via 353f3993bdd62b011b4b03c2c77fcb6897a351ad (commit)

via cb268fde15168d6b36d8afa654f3d35ffda5776c (commit)

via 5f2e26103a60c19c854d63b9d9dff656594729fd (commit)

via f72490ec9a2753d148a7e83b66e06b8f313c4953 (commit)

via 4de77f5b5d5f0fe78be7ed4069b1bdb8f63390c9 (commit)

via 575775e4a2b4ae2829ee1acaab3d1e17a5a96783 (commit)

via 8e6d2f903a9311ee775dcd1626768c4b141db9eb (commit)

via 7c67d5354cb2e4a6e9a2a360bca0eb7143748a71 (commit)

via cf1e909f8b3eb1f14559b94db9fb908e353d7790 (commit)

via 114e7618649131cedd4a5c4aa957a3ab70c76faa (commit)

via 3c626885a19adbb9ffa581fa3c2c92db68d946dd (commit)

via 85261936e2074650bffa99e59b914720223ed51b (commit)

via 91da4d68efb13cee623f4f77433c39bcb8ff472d (commit)

via f41ca07d636962ae7d64f399279f42e273fe9c7e (commit)

via 02acc7ac3fcb1df00a232adf2322045443fa6745 (commit)

via eaf2d9470774a50bf8e49f2a8710cf1e9bb22288 (commit)

via 0f5133985b4f81cd97010dcd515c9ec1a4f85fb9 (commit)

via a0c496ae9fdbad3ce21658eb38733f0f064e0529 (commit)

via 7a6f7a3b53e3eb517ac3c1c23327428dcfdd485b (commit)

via 50f1dbbe59563e388e8dea561d682cb2f1b31ab0 (commit)

via 9b5d093623bac1cbc8a0525102bb0b2a4e607527 (commit)

via 56c3411e1ef6f3df89576a743f2ac0a03246b9c8 (commit)

via 9d238241f906951aafb41b0529525fab543e3b9d (commit)

via 60ad57c50fd08bb84abcf10af7e0fb2176544bfc (commit)

via 6c3e0ef7e9d80c29a6eeb39f5963d81d255e8745 (commit)

via 6f7da87f20de4583b7b7dab4de777b2d9379542c (commit)

via d320a0fe6058b646eaee7107919dd2c1ed5cf72b (commit)

via 3aaf5194088919d74880556023e777ed5d0f69ad (commit)

via 4c2e4475d3167238919b5458d9e6fc49d59b0acd (commit)

via 73915037e0becda974cfeb9f95da4902099b24ff (commit)

via 0674398eadfac084adc07aac5372ff41ded50c4b (commit)

via 6621c02b56b288483459d088ca6be8e8e22cda4e (commit)

via b32b35d493cbaa423d1a67ed269b63b252cc21b1 (commit)

via 3cde94c6ad0dc50688eb6c416af796f60a9eaf78 (commit)

via 9b47e6acdfc9da5c5de3db433e2e08a0b2848b7d (commit)

via 5a16370027298447675573cb73b98aeea12fdad4 (commit)

via d1d228ab4629f5175b12ff7af142227e99788eaf (commit)

via 98b955063f33ecb5d499bbfa175c5c98717c18aa (commit)

via a606114852a5a24c2cbfd146d55340725148cef3 (commit)

via 2735740138b72e3aa129a5d5a93774086a8b7922 (commit)

via c5e032c8e6ff250ce0adb3771224cf877d04eae1 (commit)

via e600956a2955ba6bbbdbbb8524ef75fa02a52357 (commit)

via eb98672760ce5509cb1a6cdfd9981bfc84c860df (commit)

via 53e466a4ed96ae7d4ad5d55224fd36324cae84df (commit)

via 21eed914675def35f1ca441bfae39f34b1fa9a93 (commit)

via b6aa168fcb4fac4f6277b71d298830a97ac51d5b (commit)

via 1d6053232b61ed3901e8b09dfd2d2bdcbb49503e (commit)

via 1b77163a4db6832a1a8a13788039efe21d8a393b (commit)

via 70015bc2ad9246c83d2510da0e748617e64072dc (commit)

via b96e33f2681124ad6ce3f1c234a7ea1e21f1df27 (commit)

via 5c3a71f8338d69a0b63edb3d02d8509b9f0ec6db (commit)

via 0bc969038057585c36bc78f4b989203445d03ccd (commit)

via b28d89986d0eb6f5cc5c3d4cf7ff10f41a52e985 (commit)

via 1981eb5d675e7d619733d96d8b04c50523adb244 (commit)

via 70856bee14b11f6dcee4197657607125a8ad21f4 (commit)

via 988cac02acd068723cfcb7bf8d9a596f86d2c033 (commit)

via 308e1800cade1082f195f67b75717af5bbe0bb09 (commit)

via d620c366b7ea8dbc42d99a77d1d5cd114e0645ae (commit)

via 35c51bd9b61f0eb5d205b1785592e1ecf1b68657 (commit)

via 5dddb7d1e83573b58e5876dcc826243e300ab4fa (commit)

via 1d1833f096725c82c4af09599e6bd4695520bf87 (commit)

via fb9d6a3f9da7a6001f973ef41430213e4547e970 (commit)

via bc6ee86f9a094bb377d20af40a9cf136aadfb109 (commit)

via d64be352cf3379c37422a0f645ba5e2f69adfe35 (commit)

via cdc351dbb91c5e376d0aabb0aba2637819aac41c (commit)

via 58ea3092b9ba13141a57a85c453258ffc635550b (commit)

via a9e62aa904048518e98a045513200671eadd9a5d (commit)

via 44e711a38df8d7c49ae5d0110cb2a87bbbc014f6 (commit)

via 77c23dfa19c5d2cefa777393a3f571f1a4b4b43d (commit)

via 9c41be63bfb8c1633c4e0a7bddf4434e4b2d12e3 (commit)

via d601ac54c3d2c1d504d0b70603bf8e3d724ec7dc (commit)

via ab1f6de7e485b32dfb95f9284a67e0e5a1b359ac (commit)

from 909d0630a36daa8fa0d958cbd6c3c240093cfe66 (commit)

Those revisions listed above that are new to this repository have

not appeared on any other notification email; so we list those

revisions in full, below.

- Log -----------------------------------------------------------------

commit 243df249a65cc7bc0233615ef2596e64c67a82f6

Author: Takashi Iwai

Date: Fri May 29 10:42:14 2015 +0200

ALSA: hda - Set patch_ops before calling auto-parser

... so that the parser code can overwrite some optional ops. For

Realtek and others, it can be set solely in the spec allocator, so it

results in a good code cleanup, too.

With this change, we can finally remove the local stream_pm setup and

rely on the generic parser's automatic setting.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 477b16e76d3416c7958a3a4482c37aa1961f60ea

Author: Takashi Iwai

Date: Wed Aug 26 10:23:26 2015 +0200

ALSA: usb-audio: Handle normal and auto-suspend equally

In theory, the device may get suspended even at runtime PM suspend.

Currently we don't save the mixer state for autopm, and it may bring

inconsistency.

This patch removes the special handling for autosuspend.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit fa8188a15d0ec3e3246fe34405ac9baeafbd075c

Author: Takashi Iwai

Date: Wed Aug 26 10:20:59 2015 +0200

ALSA: usb-audio: Replace probing flag with active refcount

We can use active refcount for preventing autopm during probe.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 84e0f933844cc09a190b5e915929d2a838f411d4

Author: Takashi Iwai

Date: Tue Aug 25 16:09:00 2015 +0200

ALSA: usb-audio: Avoid nested autoresume calls

After the recent fix of runtime PM for USB-audio driver, we got a

lockdep warning like:

=============================================

[ INFO: possible recursive locking detected ]

4.2.0-rc8+ #61 Not tainted

---------------------------------------------

pulseaudio/980 is trying to acquire lock:

(&chip->shutdown_rwsem){.+.+.+}, at: [] snd_usb_autoresume+0x1d/0x52 [snd_usb_audio]

but task is already holding lock:

(&chip->shutdown_rwsem){.+.+.+}, at: [] snd_usb_autoresume+0x1d/0x52 [snd_usb_audio]

This comes from snd_usb_autoresume() invoking down_read() and it's

used in a nested way. Although it's basically safe, per se (as these

are read locks), it's better to reduce such spurious warnings.

The read lock is needed to guarantee the execution of "shutdown"

(cleanup at disconnection) task after all concurrent tasks are

finished. This can be implemented in another better way.

Also, the current check of chip->in_pm isn't good enough for

protecting the racy execution of multiple auto-resumes.

This patch rewrites the logic of snd_usb_autoresume() & co; namely,

- The recursive call of autopm is avoided by the new refcount,

chip->active. The chip->in_pm flag is removed accordingly.

- Instead of rwsem, another refcount, chip->usage_count, is introduced

for tracking the period to delay the shutdown procedure. At

the last clear of this refcount, wake_up() to the shutdown waiter is

called.

- The shutdown flag is replaced with shutdown atomic count; this is

for reducing the lock.

- Two new helpers are introduced to simplify the management of these

refcounts; snd_usb_lock_shutdown() increases the usage_count, checks

the shutdown state, and does autoresume. snd_usb_unlock_shutdown()

does the opposite. Most of mixer and other codes just need this,

and simply returns an error if it receives an error from lock.

Fixes: 9003ebb13f61 ('ALSA: usb-audio: Fix runtime PM unbalance')

Reported-and-tested-by: Alexnader Kuleshov

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 5041b3be6496746087f0825b6abc743924f942d2

Author: Takashi Iwai

Date: Wed Aug 26 14:21:14 2015 +0200

ALSA: hda - Remove superfluous pcm NULL check

The variable pcm can be never NULL since it was rewritten with

list_for_each_entry().

Suggested-by: Markus Osterhoff

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit a9893632906699ee10dd26d4e410b9c61e494c46

Author: Takashi Iwai

Date: Wed Aug 26 07:22:49 2015 +0200

ALSA: hda - Fix widget sysfs tree corruption after refresh

When snd_hdac_refresh_widget_sysfs() is called before the first

hda_widget_sysfs_init(), the next call overrides and eventually

fails. This results in unexpected Oops, something like:

BUG: unable to handle kernel NULL pointer dereference at 00000000000000c8

IP: [] hdmi_chmap_ctl_info+0x23/0x40

The fix is to add a check of the existing sysfs tree. Also, for more

safety, this patch adds the checks of device_is_registered() in

snd-hdac_refresh_wdiget_sysfs(), too.

Fixes: fa4f18b4f402 ('ALSA: hda - Refresh widgets sysfs at probing Haswell+ HDMI codecs')

Bugizlla: https://bugzilla.kernel.org/show_bug.cgi?id=103431

Reported-by: Andreas Reis

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit e9bc9cb034b8d2e0516bc3cc149aff9415170107

Author: Takashi Iwai

Date: Tue Aug 25 14:04:44 2015 +0200

ALSA: ppc: Add missing inclusion of linux/module.h

Otherwise it triggers a compile warning like:

sound/ppc/keywest.c:104:1: warning: data definition has no type or storage class

sound/ppc/keywest.c:104:1: error: type defaults to 'int' in declaration of 'MODULE_DEVICE_TABLE' [-Werror=implicit-int]

Fixes: a2bc2af66a5b ('ALSA: ppc: keywest: Export I2C module alias information')

Reported-by: kbuild test robot

Reviewed-by: Javier Martinez Canillas

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 77c8b01fc6628f304c72f61c831a40667089dfff

Author: Javier Martinez Canillas

Date: Tue Aug 25 08:31:14 2015 +0200

ALSA: ppc: keywest: Export I2C module alias information

The I2C core always reports the MODALIAS uevent as "i2c:

regardless if the driver was matched using the I2C id_table or the

of_match_table. So the driver needs to export the I2C table and this

be built into the module or udev won't have the necessary information

to auto load the correct module when the device is added.

Signed-off-by: Javier Martinez Canillas

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 75b5dbffaa878602e7604a0fe50d2a96c60d4428

Author: Takashi Iwai

Date: Tue Aug 25 08:52:55 2015 +0200

ALSA: hda - Refresh sysfs at snd_hda_codec_update_widgets()

In the commit [fa4f18b4f402: ALSA: hda - Refresh widgets sysfs at

probing Haswell+ HDMI codecs], snd_hdac_refresh_widget_sysfs() is

explicitly called in the codec driver. But this results in refreshing

twice, as snd_hdac_refresh_widget_sysfs() itself calls

snd_hdac_refresh_widgets() function.

Instead, we can replace the call in snd_hda_codec_update_widgets()

with snd_hdac_refresh_widget_sysfs(). This also fixes the missing

sysfs update for ca0132, too.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 1aa244a413376e48e6b3851c665e2fcf5c285aa1

Author: Takashi Iwai

Date: Mon Aug 24 10:52:06 2015 +0200

ALSA: hda - Fix path power activation

The widget power-saving code tries to turn up/down the power of each

widget in the I/O paths that are modified at each jack plug/unplug.

The recent report revealed that the power activation leaves some

widgets unpowered after plugging. This is because

snd_hda_activate_path() turns on path->active flag at the end of the

function while the path power management is done before that. Then

it's regarded as if nothing is active, and the driver turns off the

power.

The fix is simply to set the flag at the beginning of the function,

before trying to power up.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102521

Cc: [v4.1+]

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 76fb54a299bf58b3177445a8f2c5e55a769516f1

Author: Takashi Iwai

Date: Mon Aug 24 10:45:27 2015 +0200

ALSA: hda - Check all inputs for is_active_nid_for_any()

The is_active_nid_for_any() function in the generic parser is supposed

to check all connections from/to the given widget, but the current

code checks only the first input connection (index = 0).

This patch corrects the code to check all inputs by passing -1 to

index argument.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102521

Cc: [v4.1+]

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit f166555695c9ccc25fe368bc2519f5c7e48482b6

Author: Markus Osterhoff

Date: Mon Aug 24 14:11:39 2015 +0200

ALSA: hda: fix possible NULL dereference

After a for-loop was replaced by list_for_each_entry, see

Commit bbbc7e8502c9 ("ALSA: hda - Allocate hda_pcm objects dynamically"),

Commit 751e2216899c ("ALSA: hda: fix possible null dereference"),

a possible NULL pointer dereference has been introduced; this patch adds

the NULL check on pcm->pcm, while leaving a potentially superfluous

check on pcm itself untouched.

Signed-off-by: Markus Osterhoff

Cc: #v4.1+

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 4d7f8bd4c91ece9fba7289217c91c4bb62b820ba

Author: Jeeja KP

Date: Sun Aug 23 11:52:51 2015 +0530

ALSA: hdac: Add snd_hdac_get_hdac_stream()

Add a helper to find the stream using stream tag and direction.

This is useful for drivers to query stream based on stream tag

and direction, fox example while downloading FW thru DSP loader

code

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 78adcd13598a0831659994f431fe40279d7960c6

Author: Vinod Koul

Date: Sun Aug 23 11:52:50 2015 +0530

ALSA: hdac: fix the spbmaxfifo API

spbmaxfifo API is actually a query function not a set function so

name it snd_hdac_ext_stream_get_spbmaxfifo()

Reported-by: Pierre-Louis Bossart

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit e7fd5fc3385e0321a1820e078c4b3f85dc1a406f

Author: Vinod Koul

Date: Sun Aug 23 11:52:49 2015 +0530

ALSA: hdac: Fix size allocation for ext device allocation

While creating hdac_ext_device, we used hdev for sizeof insteadof

edev, which resulted in eventual crash of the system Fix the size

here

Fixes: a512f5611646 ('ALSA: hdac: add hdac extended device')

Reported-by: Subhransu S. Prusty

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit bf991ae594e26bf9311d9d8f73cee898e8914d91

Author: Dan Carpenter

Date: Sat Aug 22 12:24:13 2015 +0300

ALSA: hdsp: silence a sprinft() overflow warning

card->shortname is a 32 char string so the sprintf() can theoretically

overflow. snd_rawmidi_new() can accept strings up to 64 bytes long.

I have made the temporay buf[] array 40 bytes long and changed the

sprintf() to snprintf().

Signed-off-by: Dan Carpenter

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 68b1cc82a5120c4974b4a7ac0e7493f363e97290

Author: Jeeja KP

Date: Fri Aug 21 21:36:21 2015 +0530

ALSA: hdac: Remove the usage of key for host stream

hdac_ext_stream assign doesn't require key mapping as in case of

hdac_stream. So for host stream, the key to device mapping needs

to be removed.

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit f9ef6f7516199e5f6dc567cd184db4b371a87868

Author: Jeeja KP

Date: Fri Aug 21 21:36:20 2015 +0530

ALSA: hdac: Add support to enable SPIB for hdac ext stream

The drivers need to set the spib and maxfifios values, so add

these new APIs snd_hdac_ext_stream_set_spib() and

snd_hdac_ext_stream_set_spbmaxfifo() APIs

For these APIs we also need to have spib and fifos pointer, so

add these to hdac_ext_stream and initialize them at stream init

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit b5f9f254395ab4761de7d1f7b262c6656a9f73bb

Author: Jeeja KP

Date: Fri Aug 21 21:36:18 2015 +0530

ALSA: hdac: Add snd_hdac_ext_bus_link_power_down_all()

New HDA controllers like Skylake sport multiple HDA links, so we need a

helper to turn off all the links in one go while suspending the device so

add snd_hdac_ext_bus_link_power_down_all() API

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit d8eb2f16096168772aa50f4d93283643da2df9e1

Author: Jeeja KP

Date: Fri Aug 21 21:36:17 2015 +0530

ALSA: hdac: Fix to read the correct offset of spcap/link register

SPCAP and Mutilink register offset were incorrect as offset needs

to be based on capability offset. So correct the offset for

read/write of spcap/link register.

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 052aafe39af443174842310dcb1f7b4a47b44243

Author: Lars-Peter Clausen

Date: Fri Aug 21 09:48:33 2015 +0200

ALSA: ac97: Switch to dev_pm_ops

Convert the ac97_bus from legacy suspend/resume callbacks to dev_pm_ops.

Since there isn't anything special to do at the bus level the bus driver

does not have to implement any callbacks. The device driver core will

automatically pick up and execute the device's PM ops.

As there is only a single AC'97 driver implementing suspend and resume,

update both the core and driver at the same time to avoid unnecessary code

churn.

While we are at it also drop the ifdefs around the suspend/resume functions

to increase compile test coverage.

Signed-off-by: Lars-Peter Clausen

Acked-by: Dmitry Torokhov

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 894ee539df439a48337a2d22cbab387b5a7e0f72

Author: Takashi Iwai

Date: Fri Aug 21 15:05:20 2015 +0200

ALSA: hda - Refresh widgets sysfs at probing Haswell+ HDMI codecs

Intel Haswell (and later) codec refreshes the widgets tree to expose

the whole widget nodes at probing. However, this refresh was missing

for sysfs tree.

This patch adds the missing piece, as we have now a proper API.

Reported-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 14646f6e1fab39680b48053ed8f386f0035777a1

Author: Dan Carpenter

Date: Fri Aug 21 14:25:34 2015 +0300

ALSA: hdsp: silence and underflow warning

I believe this probably cannot happen, as the code suggests. There

would have to be an kcontrol->index.id which was zero, otherwise this

would be prevented in snd_ctl_find_id(). But snd_BUG_ON() is just a

WARN() or a no-op so static checkers complain that we keep on going with

a negative offset. Let's just handle the error as well as printing

a warning.

Signed-off-by: Dan Carpenter

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit f663bbc04b6ac6d6551e91655d61430603b56ce4

Author: Vinod Koul

Date: Fri Aug 21 15:47:43 2015 +0530

ALSA: hdac: add snd_hdac_refresh_widget_sysfs()

Some codecs like Intel HDMI by default do not show up all the pins, they

have to be manually enabled, so we need to refresh the codec widgets and

then recreate the sysfs tree. So add new API snd_hdac_refresh_widget_sysfs()

to do this. It should be be used by codec driver after sending magic verbs

to codec

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 714885ac83fd69ad06ec476942aaa6b30b33ea9d

Author: Vinod Koul

Date: Fri Aug 21 15:47:42 2015 +0530

ALSA: hdac: add extended device driver registration

This adds new extended driver objects and API for registering the

extended devices.

Signed-off-by: Subhransu S. Prusty

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 15862004530244298522dd6c59d1324db79bba93

Author: Vinod Koul

Date: Fri Aug 21 15:47:41 2015 +0530

ALSA: hdac: add hdac extended device

This adds based hdac extended device object which will be used by

ASoC HDAC codecs

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 43a6593170272bdda211d89dc46c457fa1aa7821

Author: Vinod Koul

Date: Fri Aug 21 15:47:40 2015 +0530

ALSA: hdac: Add API for removing hdac extended device

The HDAC extended device objects are created by HDAC extended bus on probe.

When controller is removed they should be removed as well, so add API

snd_hdac_ext_bus_device_remove for this

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit ddee16f6c5f11806ae8136ad8488ce62a59338fb

Author: David Henningsson

Date: Fri Aug 21 09:42:35 2015 +0200

ALSA: hda - Shutdown CX20722 on reboot/free to avoid spurious noises

On shutdown/reboot of CX20722, first shut down all EAPDs, then

shut down the afg node to D3.

Failure to do so can lead to spurious noises from the internal speaker

directly after reboot (and before the codec is reinitialized again, i e

in BIOS setup or GRUB menus).

BugLink: https://bugs.launchpad.net/bugs/1487345

Signed-off-by: David Henningsson

Cc:

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 51283f239bacd60e74b6089af1297aec6438d23d

Author: Jurgen Kramer

Date: Fri Aug 21 09:48:35 2015 +0200

ALSA: usb: Add native DSD support for Gustard DAC-X20U

This patch adds native DSD support for the Gustard DAC-X20U.

Signed-off-by: Jurgen Kramer

Cc:

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit bf68ccffcf2837642e956568520256df6f7bab6e

Author: Julian Scheel

Date: Wed Aug 19 09:28:09 2015 +0200

ALSA: usb-audio: Recurse before saving terminal properties

The input terminal parser recurses into the referenced clock entity to verify

it is existant and thus the terminal descriptor is valid. The actual property

values of the term instance which is initially parsed must not be overriden by

the recursion. For this to work the term properties have to be assigned after

recursing into the referenced clock entity descriptors.

Signed-off-by: Julian Scheel

Acked-by: Daniel Mack

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 9cfb4487cb2f8a1fb685eca9ee015047fa2645f4

Author: Takashi Iwai

Date: Mon Aug 17 15:06:52 2015 +0200

ALSA: hda/eld - Add const to possible places

Similar like the previous fix to hda_proc.c, adding const prefix will

save our world (a little bit).

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 3f7ee59774817cc201cbd6af22295922f1abbd9b

Author: Takashi Iwai

Date: Mon Aug 17 14:57:32 2015 +0200

ALSA: hda/proc - Fix racy string access for power states

The power states in a proc file are printed in a racy manner on a

single static string buffer. Fix it by calling snd_iprintf() directly

for each state instead of processing on a temporary buffer.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 25a707d16821845bba00be6f3c3df4025b77b45f

Author: Takashi Iwai

Date: Mon Aug 17 14:52:51 2015 +0200

ALSA: hda/proc - Add const to possible places

Many arrays in hda_proc.c are string arrays that should be covered by

const prefix for increasing the safety and reducing the size.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 1cb133c39fb40753a59b699952d26e0baf6da873

Author: Takashi Iwai

Date: Mon Aug 17 14:44:24 2015 +0200

ALSA: hda - Make some helper functions local

A few helper functions to convert the pin information to strings have

been exported with assumption that they were used by other drivers.

But they are referred only in the proc interface in the end.

Let's make them local so that we can get rid of a few exports.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit e0256f800f8a8709bdb964d4033eb8d68c056b34

Author: Pierre-Louis Bossart

Date: Fri Aug 14 17:19:43 2015 -0500

ALSA: usb: handle descriptor with SYNC_NONE illegal value

The M-Audio Transit exposes an interface with a SYNC_NONE attribute.

This is not a valid value according to the USB audio classspec. However

there is a sync endpoint associated to this record. Changing the logic to

try to use this sync endpoint allows for seamless transitions between

altset 2 and altset 3. If any errors happen, the behavior remains the same.

$ more /proc/asound/card1/stream0

M-Audio Transit USB at usb-0000:00:14.0-2, full speed : USB Audio

Playback:

Status: Stop

Interface 1

Altset 1

Format: S24_3LE

Channels: 2

Endpoint: 3 OUT (ADAPTIVE)

Rates: 48001 - 96000 (continuous)

Interface 1

Altset 2

Format: S24_3LE

Channels: 2

Endpoint: 3 OUT (NONE)

Rates: 8000 - 48000 (continuous)

Interface 1

Altset 3

Format: S16_LE

Channels: 2

Endpoint: 3 OUT (ASYNC)

Rates: 8000 - 48000 (continuous)

Signed-off-by: Pierre-Louis Bossart

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit eef9894dcea02b9f3f848f3498456399c54ed5fc

Author: Pierre-Louis Bossart

Date: Fri Aug 14 17:19:42 2015 -0500

ALSA: usb: fix corrupted pointers due to interface setting change

When a transition occurs between alternate settings that do not use the

same synchronization method, the substream pointers were not reset.

This prevents audio from being played during the second transition.

Identified and tested with M-Audio Transit device

(0763:2006 Midiman M-Audio Transit)

Details of the issue:

First playback to adaptive endpoint:

$ aplay -Dhw:1,0 ~/24_96.wav

Playing WAVE '/home/plb/24_96.wav' : Signed 24 bit Little Endian in 3bytes,

Rate 96000 Hz, Stereo

[ 3169.297556] usb 1-2: setting usb interface 1:1

[ 3169.297568] usb 1-2: Creating new playback data endpoint #3

[ 3169.298563] usb 1-2: Setting params for ep #3 (type 0, 3 urbs), ret=0

[ 3169.298574] usb 1-2: Starting data EP @ffff880035fc8000

first playback to asynchronous endpoint:

$ aplay -Dhw:1,0 ~/16_48.wav

Playing WAVE '/home/plb/16_48.wav' : Signed 16 bit Little Endian,

Rate 48000 Hz, Stereo

[ 3204.520251] usb 1-2: setting usb interface 1:3

[ 3204.520264] usb 1-2: Creating new playback data endpoint #3

[ 3204.520272] usb 1-2: Creating new capture sync endpoint #83

[ 3204.521162] usb 1-2: Setting params for ep #3 (type 0, 4 urbs), ret=0

[ 3204.521177] usb 1-2: Setting params for ep #83 (type 1, 4 urbs), ret=0

[ 3204.521182] usb 1-2: Starting data EP @ffff880035fce000

[ 3204.521204] usb 1-2: Starting sync EP @ffff8800bd616000

second playback to adaptive endpoint: no audio and error on terminal:

$ aplay -Dhw:1,0 ~/24_96.wav

Playing WAVE '/home/plb/24_96.wav' : Signed 24 bit Little Endian in 3bytes,

Rate 96000 Hz, Stereo

aplay: pcm_write:1939: write error: Input/output error

[ 3239.483589] usb 1-2: setting usb interface 1:1

[ 3239.483601] usb 1-2: Re-using EP 3 in iface 1,1 @ffff880035fc8000

[ 3239.484590] usb 1-2: Setting params for ep #3 (type 0, 4 urbs), ret=0

[ 3239.484606] usb 1-2: Setting params for ep #83 (type 1, 4 urbs), ret=0

This last line shows that a sync endpoint is used when it shouldn't.

The sync endpoint is no longer valid and the pointers are corrupted

Signed-off-by: Pierre-Louis Bossart

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 09774ef3105b3c5f3f2cba62ad69a0ac1a18aaef

Author: Julian Scheel

Date: Fri Aug 14 16:14:45 2015 +0200

ALSA: usb-audio: Fix parameter block size for UAC2 control requests

USB Audio Class version 2.0 supports three different parameter block sizes for

CUR requests, which are 1 byte (5.2.3.1 Layout 1 Parameter Block), 2 bytes

(5.2.3.2 Layout 2 Parameter Block) and 4 bytes (5.2.3.3 Layout 3 Parameter

Block). Use the correct size according to the specific control as it was

already done for UACv1. The allocated block size for control requests is

increased to support the 4 byte worst case.

Signed-off-by: Julian Scheel

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit a49f3cbfc052a62af9c003840513bbc39614b579

Author: Takashi Iwai

Date: Mon Aug 10 16:53:32 2015 +0200

ALSA: hda - Fix pin config and mapping on Alienware 15

Alienware 15 has CA0132 codec for its onboard sound, but the pin

config and mapping seem quite different from other Creative boards.

This patch corrects them, at least, for providing the right headphone

and mic jack notification, as well as removing the non-existing SPDIF

pins.

Even with this fix, not all stuff works perfectly yet, mainly because

of the badly written ca0132 driver code -- it has too many implicit

assumptions of pin configs and maps. Nevertheless, this is a small

good step forward.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=101981

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 4fe9e98ee27001a3ed77f570f6c4c96aecb1c260

Author: Mark Brown

Date: Mon Aug 10 13:02:53 2015 +0100

ALSA: echoaudio: Use standard C definitions of true and false

The echoaudio locally defines TRUE and FALSE. Not only is this

redundant given that C now has a boolean type it results in lots of

warnings as other headers also define these macros, causing duplicate

definitions. Fix this by removing the local defines and converting all

local users to use the standard C true and false instead, simply

removing the macros is less safe due to implicit inclusion of the other

definitons.

[fixed overlooked replacement of FALSE by tiwai]

Signed-off-by: Mark Brown

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 367155e725a165f38a4075933e3ca68ce20ca8d9

Author: Andrzej Hajda

Date: Fri Aug 7 09:59:35 2015 +0200

ALSA: firewire: use kmemdup rather than duplicating its implementation

The patch was generated using fixed coccinelle semantic patch

scripts/coccinelle/api/memdup.cocci [1].

[1]: http://permalink.gmane.org/gmane.linux.kernel/2014320

Signed-off-by: Andrzej Hajda

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit dc0490e47821960fb2829b6983602f67ce47aa08

Author: Lars-Peter Clausen

Date: Wed Aug 5 16:19:31 2015 +0200

ALSA: aoa-soundbus: Switch to dev_pm_ops

Update the aoa-soundbus framework to use dev_pm_ops rather than the

deprecated legacy suspend and resume callbacks.

Since there isn't anything special to do at the bus level the bus driver

does not have to implement any callbacks. The device driver core will

automatically pick up and execute the device's PM ops.

As there is only a single aoa-soundbus driver implementing suspend and

resume, update both the core and driver at the same time to avoid

unnecessary code churn.

Signed-off-by: Lars-Peter Clausen

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 1a3c6703d28e4231a566a6eca07f7f3bbc0d88c6

Author: Takashi Iwai

Date: Wed Aug 5 12:09:45 2015 +0200

ALSA: hda - yet another fix for Dell headset mic with ALC3266

It turned out that there are three variants of pin config values of

NID 0x17 on Dell laptops with ALC3266 (alias of ALC298): 0x90170110,

0x90170140 and 0x90170150. The first two have been already covered by

commits 703867e2f252 and 977e627684df, so this commit adds the missing

last entry.

While we're at it, rearrange the three entries in the order of pincfg

values.

Reported-by: Kailang Yang

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit c5c4f12d722f0b2dd209b922d9f27f2bff0d3644

Author: Woodrow Shen

Date: Wed Aug 5 12:34:12 2015 +0800

ALSA: hda - Fix Dell laptop for internal mic/headset mic

The new Dell laptop with ALC3266 can't use internal microphone to

record. Also, the 3 ring headset mic doesn't work on it. For src of

patch_realtek.c, only the pin cfg of Nid 0x17 is different, so the

Nid 0x17 is added into pin quirk, and others are defined to macro

ALC298_STANDARD_PINS in common use.

Codec: Realtek ALC3266

Vendor Id: 0x10ec0298

Subsystem Id: 0x102806e5

BugLink: https://bugs.launchpad.net/bugs/1481575

Signed-off-by: Woodrow Shen

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 917a98c9c0b94e7be4b11c240e42d99fa433c0e0

Author: Hui Wang

Date: Mon Aug 3 11:03:49 2015 +0800

ALSA: hda - remove no physical connection pins from pin_quirk table

To cleanup the pin_quirk table:

- rewrite the pin_config_match(), comparing all pins on the machine

with the corresponding pins in the quirk table.

- remove all 0x4xxxxxxx pin configurations from pin_quirk table

- after removing the 0x4xxxxxxx pin configurations, some pin tables

are exactly same, so removing the redudant pin tables.

Signed-off-by: Hui Wang

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit feead361e20121f809d6e1e71172417556e31f73

Author: Takashi Iwai

Date: Fri Jul 17 16:27:33 2015 +0200

ALSA: hda - Check the return value from pm_runtime_get/put*()

This patch changes the return type of snd_hdac_power_up/down() and

variants to pass the error code from the underlying

pm_runtime_get/put() calls. Currently they are ignored, but in most

places, these should be handled properly.

As an example, the regmap handler is updated to check the return value

and accesses the register only when the wakeup succeeds.

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 254cdf9e97cfe590ab404af0df5f71f27310d1ef

Author: Heloise NH

Date: Fri Jul 17 09:42:06 2015 +0800

ALSA: hda: fix kstrdup return value

In kstrdup we should return -ENOMEM when it reports an

memory allocation failure, while the -ENODEV is referred

to a failure in finding the cpu node in the device tree.

Signed-off-by: Heloise NH

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit a07fb7e5429d52ecd87608c4f72152f9274978b4

Author: Krzysztof Kozlowski

Date: Fri Jul 10 15:39:02 2015 +0900

ALSA: aoa: Drop owner assignment from i2c_driver

i2c_driver does not need to set an owner because i2c_register_driver()

will set it.

Signed-off-by: Krzysztof Kozlowski

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 1ca901173ab62b50468128cf36a9acf3fdf2c26e

Author: Markus Elfring

Date: Wed Jul 8 21:26:02 2015 +0200

ALSA: hda: Delete an unnecessary check before the function call "kobject_put"

The kobject_put() function tests whether its argument is NULL and then

returns immediately. Thus the test around the call is not needed.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 53b9edf11f2debf65b8fa1a0d9f600588960d028

Author: Maciej S. Szmigiero

Date: Tue Jul 7 21:54:02 2015 +0200

ALSA: emu10k1: rename Audigy Analog Capture Boost control

Audigy has "Analog Capture Boost" mixer control,

however now this only controls mic level, not

other analog sources.

It applies also both to playback and capture,

so rename it to something more descriptive.

Signed-off-by: Maciej Szmigiero

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 2d58af9c264d9624dc46af7ccc901e1398199ae2

Author: Maciej S. Szmigiero

Date: Tue Jul 7 21:53:15 2015 +0200

ALSA: emu10k1: enable TAD mic out on Audigy

Enable TAD output on Audigy naming it "Phone Output",

to be consistent with TAD input which is called "Phone".

According to Creative doc

( http://support.creative.com/kb/ShowArticle.aspx?sid=3026 )

this should output just mic signal.

Signed-off-by: Maciej Szmigiero

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 8a093faa88808132d4f2cf6050251a7ff836372a

Author: Maciej S. Szmigiero

Date: Tue Jul 7 21:52:24 2015 +0200

ALSA: emu10k1: remove unused AC'97 mixer controls on Audigy

AC'97 Headphone output and EAPD control aren't used

on Audigy so remove them from mixer.

Also remove AC'97 3D control as the driver is

already doing for Audigys with 1361T ADC.

Signed-off-by: Maciej Szmigiero

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit c2212fadf025c09fa4edda52a09214b851e50a8f

Author: Rick Sherman

Date: Tue Aug 18 21:04:30 2015 -0500

ALSA: hda - Add dock support for Thinkpad W541 (17aa:2211)

Tested with W541 and Ultra Dock 170w

Signed-off-by: Rick Sherman

Signed-off-by: Takashi Iwai

commit e056f7302917bcb66f30539256c80b8e91bba83f

Author: Takashi Iwai

Date: Wed Aug 19 07:20:14 2015 +0200

ALSA: usb-audio: Fix runtime PM unbalance

The fix for deadlock in PM in commit [1ee23fe07ee8: ALSA: usb-audio:

Fix deadlocks at resuming] introduced a new check of in_pm flag.

However, the brainless patch author evaluated it in a wrong way

(logical AND instead of logical OR), thus usb_autopm_get_interface()

is wrongly called at probing, leading to unbalance of runtime PM

refcount.

This patch fixes it by correcting the logic.

Reported-by: Hans Yang

Fixes: 1ee23fe07ee8 ('ALSA: usb-audio: Fix deadlocks at resuming')

Cc: [v3.15+]

Signed-off-by: Takashi Iwai

commit 07ef44863506a0139e3aca3ecd8ddd3f24d20588

Author: Mark Brown

Date: Mon Aug 17 22:59:25 2015 -0700

ASoC: topology: Disable use from userspace

Since the topology API is still in sufficient flux for changes to be

identified disable the use of the userspace ABI by adding #error

statements to the code, ensuring that nobody relies on the headers as

currently defined. It is expected that this change will be reverted for

v4.3.

Signed-off-by: Mark Brown

commit 4a99b3a5ce937da4c11e859b2914542acf3a70ad

Author: Mark Brown

Date: Sat Aug 15 08:24:20 2015 -0700

ASoC: topology: Add Kconfig option for topology

Allow the topology code to be compiled out so that users who don't need

topology don't need to havve the code compiled in, saving them some

memory.

Some more configuration could be added to remove some of the hooks into

the core data structures but that is probably best done with some

refactoring to use functions to do the updates of the data structures

rather than ifdefing in the code as we'd need to do at the minute.

Suggested-by: Takashi Iwai

Signed-off-by: Mark Brown

commit 92f7c4a6033dc72ce4d5fc9af8ce1d3ae0ba91c6

Author: Woodrow Shen

Date: Thu Aug 13 11:20:40 2015 +0800

ALSA: hda - Fix the white noise on Dell laptop

Dell laptop causes the white noise by login screen and headphone,

and the fixup function ALC292_FIXUP_DISABLE_AAMIX can eliminate this

noise.

Codec: Realtek ALC3235

Vendor Id: 0x10ec0293

Subsystem Id: 0x102806db

Cc:

BugLink: https://bugs.launchpad.net/bugs/1484334

Signed-off-by: Woodrow Shen

Signed-off-by: Takashi Iwai

commit 10a6ec24e60945a4a2d1de102027371d4b22813a

Author: Liam Girdwood

Date: Wed Aug 5 14:41:15 2015 +0100

ASoC: topology: Add private data type and bump ABI version to 3

Add ID for standalone private data object types and bump ABI version to

3 in order to userpsace features.

Signed-off-by: Liam Girdwood

Signed-off-by: Mark Brown

commit 7f857e6e534da2ba16d003e4caed979e94235ae3

Author: Mengdong Lin

Date: Wed Aug 5 14:41:14 2015 +0100

ASoC: topology: Add ops support to byte controls UAPI

Add UAPI support for setting byte control ops. Rename the ops structure

to be more generic so it can be sued by other objects too.

Signed-off-by: Mengdong Lin

Signed-off-by: Liam Girdwood

Signed-off-by: Mark Brown

commit 1fa277c60591f786efc21d695c4f98091c55a249

Author: Mengdong Lin

Date: Wed Aug 5 14:41:13 2015 +0100

ASoC: topology: Update TLV support so we can support more TLV types

Currently the TLV topology structure is targeted at only supporting the

DB scale data. This patch extends support for the other TLV types so they

can be easily added at a later stage.

TLV structure is moved to common topology control header since it's a

common field for controls and can be processed in a general way.

Users must set a proper access flag for a control since it's used to

decide if the TLV field is valid and if a TLV callback is needed.

Removed the following fields from topology TLV struct:

- size/count: type can decide the size.

- numid: not needed to initialize TLV for kcontrol.

- data: replaced by the type specific struct.

Added TLV structure to generic control header and removed TLV structure

from mixer control.

Signed-off-by: Mengdong Lin

Signed-off-by: Liam Girdwood

Signed-off-by: Mark Brown

commit add6cd35f7a268e169eafbc5760986691a6264ba

Author: Vinod Koul

Date: Mon Jun 29 17:36:46 2015 +0100

ASoC: topology: add private data to manifest

The topology file manifest should include a private data field. This

allows vendors to specify vendor data in the manifest, like

timestamps, hashes, additional information for removing platform

configuration out of drivers and making these configurable per platform

Signed-off-by: Vinod Koul

Signed-off-by: Mark Brown

commit d2f6055ed3fe944d7119d70562e44938ba316ce3

Author: Subhransu S. Prusty

Date: Mon Jun 29 17:36:44 2015 +0100

ASoC: topology: Add subsequence in topology

Some widgets may need sorting within, So add this support in topology.

Signed-off-by: Subhransu S. Prusty

Signed-off-by: Mark Brown

commit ad93d5df7dfdab4b8bf9486ebc06e837f06df14e

Author: Hui Wang

Date: Wed Aug 5 18:03:34 2015 +0800

ALSA: hda - one Dell machine needs the headphone white noise fixup

The fixup ALC292_FIXUP_DISABLE_AAMIX can fix the white noise of

the headphone on this Dell machine.

Cc:

Signed-off-by: Hui Wang

Signed-off-by: Takashi Iwai

commit 32e3057dae1943082f0b0d7a4c9c18a0c77c36f9

Author: Takashi Sakamoto

Date: Wed Aug 5 09:21:05 2015 +0900

ALSA: fireworks/firewire-lib: add support for recent firmware quirk

Fireworks uses TSB43CB43(IceLynx-Micro) as its IEC 61883-1/6 interface.

This chip includes ARM7 core, and loads and runs program. The firmware

is stored in on-board memory and loaded every powering-on from it.

Echo Audio ships several versions of firmwares for each model. These

firmwares have each quirk and the quirk changes a sequence of packets.

As long as I investigated, AudioFire2/AudioFire4/AudioFirePre8 have a

quirk to transfer a first packet with 0x02 in its dbc field. This causes

ALSA Fireworks driver to detect discontinuity. In this case, firmware

version 5.7.0, 5.7.3 and 5.8.0 are used.

Payload CIP CIP

quadlets header1 header2

02 00050002 90ffffff

42 0005000a 90013000

42 00050012 90014400

42 0005001a 90015800

02 0005001a 90ffffff

42 00050022 90019000

42 0005002a 9001a400

42 00050032 9001b800

02 00050032 90ffffff

42 0005003a 9001d000

42 00050042 9001e400

42 0005004a 9001f800

02 0005004a 90ffffff

(AudioFire2 with firmware version 5.7.)

$ dmesg

snd-fireworks fw1.0: Detect discontinuity of CIP: 00 02

These models, AudioFire8 (since Jul 2009 ) and Gibson Robot Interface

Pack series uses the same ARM binary as their firmware. Thus, this

quirk may be observed among them.

This commit adds a new member for AMDTP structure. This member represents

the value of dbc field in a first AMDTP packet. Drivers can set it with

a preferred value according to model's quirk.

Tested-by: Johannes Oertei

Signed-off-by: Takashi Sakamoto

Cc:

Signed-off-by: Takashi Iwai

commit e0603faeccaff6f5430f7174cda4c13660d8e886

Author: Takashi Sakamoto

Date: Wed Aug 5 09:21:04 2015 +0900

Revert "ALSA: fireworks: add support for AudioFire2 quirk"

This reverts commit 9c6893e0be38b6ca9a56a854226e51dee0a16a5a.

The fix is superseded by the next commit as a better implementation

for supporting AudioFire2/AudioFire4/AudioFirePre8 quirks.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit f0ac406e2b7363f64c5efdf5a1f6fad1ed091962

Author: Mengdong Lin

Date: Tue Aug 4 15:47:35 2015 +0100

ASoC: topology: fix typo in soc_tplg_kcontrol_bind_io()

Signed-off-by: Mengdong Lin

Signed-off-by: Liam Girdwood

Signed-off-by: Mark Brown

commit 198c8ff9629bb6507cdbc1e27e5d96e57564e48a

Author: Jeeja KP

Date: Tue Aug 4 09:28:39 2015 +0530

ALSA: HDA: Dont check return for snd_hdac_chip_readl

The snd_hdac_chip_readl return can never be less than zeros,

so no point in checking for the return value

This fixes following static checker warnings in

snd_hdac_ext_bus_parse_capabilities

sound/hda/ext/hdac_ext_controller.c:47

snd_hdac_ext_bus_parse_capabilities()

warn: unsigned 'offset' is never less than zero.

sound/hda/ext/hdac_ext_controller.c:54

snd_hdac_ext_bus_parse_capabilities()

warn: unsigned 'cur_cap' is never less than zero.

Signed-off-by: Jeeja KP

Reported-by: Dan Carpenter

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 589aca83c5106d8774b35fd3ab60644ab9971ab4

Author: Jeeja KP

Date: Tue Aug 4 09:28:38 2015 +0530

ALSA: HDA: Fix stream assignment for host in decoupled mode

This fixes issue in assigning host stream in case of

decoupled mode. The check to verify if the stream is already

in use was wrong so fix that

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 6d62b224946dd2005c28fd8c9ca7870c51065371

Author: Bard Liao

Date: Mon Aug 3 12:17:39 2015 +0800

ASoC: rt5645: Fix lost pin setting for DMIC1

I2S2_DAC pin can be used for I2S or GPIO. We should set it as GPIO

if we use GPIO5 as DMIC1 data pin.

Signed-off-by: Bard Liao

Signed-off-by: Mark Brown

commit 59123029ee5fd8843a8372da47816b87eb26726c

Author: Tomer Barletz

Date: Sun Aug 2 02:08:57 2015 -0700

ALSA: oxygen: Fix logical-not-parentheses warning

This fixes the following warning, that is seen with gcc 5.1:

warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses].

Signed-off-by: Tomer Barletz

Signed-off-by: Takashi Iwai

commit f083202422d0cdc7587a2a09890d19ab4d666e8c

Author: Takashi Iwai

Date: Thu Jul 30 22:30:29 2015 +0200

ALSA: hda - Fix MacBook Pro 5,2 quirk

MacBook Pro 5,2 with ALC889 codec had already a fixup entry, but this

seems not working correctly, a fix for pin NID 0x15 is needed in

addition. It's equivalent with the fixup for MacBook Air 1,1, so use

this instead.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102131

Reported-and-tested-by: Jeffery Miller

Cc:

Signed-off-by: Takashi Iwai

commit 782fd956e301951c4ce63c5b35a8bb9056ac3f43

Author: U. Artie Eoff

Date: Tue Jul 28 13:29:56 2015 -0700

ALSA: hda - Fix race between PM ops and HDA init/probe

PM ops could be triggered before HDA is done initializing

and cause PM to set HDA controller to D3Hot. This can result

in "CORB reset timeout#2, CORBRP = 65535" and "no codecs

initialized". Additionally, PM ops can be triggered before

azx_probe_continue finishes (async probe). This can result

in a NULL deref kernel crash.

To fix this, avoid PM ops if !chip->running.

Signed-off-by: U. Artie Eoff

Signed-off-by: Takashi Iwai

commit b9420a5c39a82bbaae4af08ae46c0af3b663fbd4

Author: Jie Yang

Date: Tue Jul 28 16:01:06 2015 +0800

ASoC: Intel: sst_byt: fix initialize 'NULL device *' issue

Add initialization for sst_byt.dev at init stage, which fix the

'NULL device *' warning issues.

Signed-off-by: Jie Yang

Signed-off-by: Mark Brown

commit e84c7fd8504873483889c1f3023c726e0cff319c

Author: Jie Yang

Date: Tue Jul 28 16:01:05 2015 +0800

ASoC: Intel: haswell: fix initialize 'NULL device *' issue

Add initialization for sst_hsw.dev at init stage, which fix the

'NULL device *' warning issues.

Signed-off-by: Jie Yang

Signed-off-by: Mark Brown

commit 7f1c919e0666ed19225e28910af1769157a73f29

Author: Yao-Wen Mao

Date: Wed Jul 29 15:13:54 2015 +0800

ALSA: usb-audio: add dB range mapping for some devices

Add the correct dB ranges of Bose Companion 5 and Drangonfly DAC 1.2.

Signed-off-by: Yao-Wen Mao

Cc:

Signed-off-by: Takashi Iwai

commit d0696e015915d76afb9a4683605ed99283659337

Author: Takashi Iwai

Date: Wed Jul 29 09:04:52 2015 +0200

ALSA: hda - Apply a fixup to Dell Vostro 5480

Dell Vostro 5480 (1028:069a) needs the very same quirk used for Vostro

5470 model to make bass speakers properly working.

Reported-and-tested-by: Paulo Roberto de Oliveira Castro

Cc:

Signed-off-by: Takashi Iwai

commit 45e9f2be0fc520233b6f6bfe2c271594c3e80aa5

Author: Woodrow Shen

Date: Mon Jul 27 18:34:31 2015 +0800

ALSA: hda - Add pin quirk for the headset mic jack detection on Dell laptop

The new Dell laptop with codec 256 can't detect headset mic when

headset was inserted on the machine. From alsa-info, we check

init_pin_configs and need to define the new register value for pin

0x1d & 0x1e because the original macro ALC256_STANDARD_PINS can't

match pin definition. Also, the macro ALC256_STANDARD_PINS is

simplified by removing them. This makes headset mic works on laptop.

Codec: Realtek ALC256

Vendor Id: 0x10ec0256

Subsystem Id: 0x102806f2

BugLink: https://bugs.launchpad.net/bugs/1478497

Signed-off-by: Woodrow Shen

Signed-off-by: Takashi Iwai

commit 404b735366abd51e83998624d8b27e534a9c4ae6

Author: Takashi Iwai

Date: Mon Jul 27 10:13:37 2015 +0200

ALSA: hda - Apply fixup for another Toshiba Satellite S50D

Toshiba Satellite S50D has another model with a different PCI SSID

(1179:fa93) while the previous fixup was for 1179:fa91. Adjust the

fixup entry with SND_PCI_QUIRK_MASK() to match with both devices.

Reported-by: Tim Sample

Cc:

Signed-off-by: Takashi Iwai

commit 2ce4964e91716c4ae407f91f3362ae106b440d12

Author: Takashi Sakamoto

Date: Sun Jul 26 16:10:09 2015 +0900

ALSA: fireworks: add support for AudioFire2 quirk

Fireworks uses TSB43CB43(IceLynx-Micro) as its IEC 61883-1/6 interface.

This chip includes ARM7 core, and loads and runs program. The firmware

is stored in on-board memory and loaded every powering-on.

Echo Audio ships several versions of firmwares for each model. These

firmwares have each quirk and the quirk changes a sequence of packets.

AudioFire2 has a quirk to transfer a first packet with non-zero in

its dbc field. This causes ALSA Fireworks driver to detect discontinuity.

As long as I investigated, firmware 5.7, 5.7.6 and 5.8 have this quirk.

This commit adds a support for the quirk to handle AudioFire2 packets.

For safe, CIP_SKIP_INIT_DBC_CHECK is applied to all versions of

AudioFire2's firmwares.

02 00050002 90ffffff

42 0005000a 90013000

42 00050012 90014400

42 0005001a 90015800

02 0005001a 90ffffff

42 00050022 90019000

42 0005002a 9001a400

42 00050032 9001b800

02 00050032 90ffffff

42 0005003a 9001d000

42 00050042 9001e400

42 0005004a 9001f800

02 0005004a 90ffffff

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 3a5ba8733e179d8dd5e50f4ebb8ed48cd7ce72b4

Author: Woodrow Shen

Date: Sat Jul 25 10:36:16 2015 +0800

ALSA: hda - Fix the headset mic that will not work on Dell desktop machine

When the headset was plugged in the Dell desktop, the mic of headset

can't be detected and workable.

According to the alsa-info, we found the differece between alsa and

init_pin_configs on the machine, so we need to add the pin configs to

make headset work.

Codec: Realtek ALC3234

Vendor Id: 0x10ec0255

Subsystem Id: 0x102806bb

BugLink: https://bugs.launchpad.net/bugs/1477900

Signed-off-by: Woodrow Shen

Signed-off-by: Takashi Iwai

commit bbb5fe4e5566026c5f09c751f3ea0a94ed11046f

Author: Dan Carpenter

Date: Sat Jul 25 03:03:38 2015 +0300

ALSA: hda - fix cs4210_spdif_automute()

Smatch complains that we have nested checks for "spdif_present". It

turns out the current behavior isn't correct, we should remove the first

check and keep the second.

Fixes: 1077a024812d ('ALSA: hda - Use generic parser for Cirrus codec driver')

Signed-off-by: Dan Carpenter

Signed-off-by: Takashi Iwai

commit d307b70dad1424c6e90ee33892001c186e320473

Author: Axel Lin

Date: Sun Jul 19 12:09:16 2015 +0800

ASoC: cs4265: Fix setting dai format for Left/Right Justified

The settings in current code does not match the datasheet, fix it.

DAC Control - Address 03h

DAC Digital Interface Format (Bits 5:4)

DAC_DIF1 DAC_DIF0 Description

0 0 Left Justified, up to 24-bit data (default)

0 1 I²S, up to 24-bit data

1 0 Right-Justified, 16-bit Data

1 1 Right-Justified, 24-bit Data

Transmitter Control 2 - Address 12h

Transmitter Digital Interface Format (Bits 7:6)

Tx_DIF1 Tx_DIF0 Description Format Figure

0 0 Left Justified, up to 24-bit data (default)

0 1 I²S, up to 24-bit data

1 0 Right-Justified, 16-bit Data

1 1 Right-Justified, 24-bit Data

Signed-off-by: Axel Lin

Signed-off-by: Mark Brown

commit 3a917eab2c44e222d18df71dfe704b2160aee9b2

Author: Axel Lin

Date: Thu Jul 23 23:22:26 2015 +0800

ASoC: pcm1681: Fix setting de-emphasis sampling rate selection

The de-emphasis sampling rate selection is controlled by BIT[3:4] of

PCM1681_DEEMPH_CONTROL register. Do proper left shift to set it.

Signed-off-by: Axel Lin

Acked-by: Marek Belisko

Signed-off-by: Mark Brown

Cc: stable@...

commit 9099a9e005613e399008b92bfe2322316c341d92

Author: Ben Zhang

Date: Tue Jul 21 14:46:26 2015 -0700

ASoC: ssm4567: Keep TDM_BCLKS in ssm4567_set_dai_fmt

The regmap_write in ssm4567_set_dai_fmt accidentally clears the

TDM_BCLKS field which was set earlier by ssm4567_set_tdm_slot.

This patch fixes it by using regmap_update_bits with proper mask.

Signed-off-by: Ben Zhang

Acked-by: Lars-Peter Clausen

Acked-by: Anatol Pomozov

Signed-off-by: Mark Brown

Cc: stable@...

commit 35afefaf0d633419c38f1a617621cc74081b63ca

Author: Axel Lin

Date: Wed Jul 22 11:27:45 2015 +0800

ASoC: sgtl5000: Fix up define for SGTL5000_SMALL_POP

Currently, below code actually does not update any bit because

SGTL5000_SMALL_POP is 0.

snd_soc_update_bits(codec, SGTL5000_CHIP_REF_CTRL, SGTL5000_SMALL_POP, 1);

The SGTL5000_SMALL_POP should be BIT(0) rather than 0, fix it.

Signed-off-by: Axel Lin

Acked-By: Alexander Stein

Signed-off-by: Mark Brown

commit 095dbb23e4c7c7e55300f0729898b6a7c5bea50b

Author: David Henningsson

Date: Wed Jul 22 10:00:25 2015 +0200

ALSA: hda - Add headset mic pin quirk for a Dell device

Without this patch, the headset mic will not work on this machine.

BugLink: https://bugs.launchpad.net/bugs/1476987

Signed-off-by: David Henningsson

Cc:

Signed-off-by: Takashi Iwai

commit d31f5bb9d3540460f6720c9a68a05f1959f7777f

Author: Hui Wang

Date: Wed Jul 22 10:33:34 2015 +0800

ALSA: hda - remove one pin from ALC292_STANDARD_PINS

One more Dell laptop with alc293 codec needs

ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, but the pin 0x1e does not match

the corresponding one in the ALC292_STANDARD_PINS. To use this macro

for this machine, we need to remove pin 0x1e from it.

BugLink: https://bugs.launchpad.net/bugs/1476888

Cc:

Signed-off-by: Hui Wang

Signed-off-by: Takashi Iwai

commit e94cc933307fcf2acbe8e30e6829ec6ed7ebbe09

Author: Lars-Peter Clausen

Date: Tue Jul 21 11:51:35 2015 +0200

ASoC: dapm: Don't add prefix to widget stream name

Commit fdb6eb0a1287 ("ASoC: dapm: Modify widget stream name according to

prefix") fixed the case where a DAPM route between a DAI widget and a

DAC/ADC/AIF widget with a matching stream name was not created when the

DAPM context was using a prefix.

Unfortunately the patch introduced a few issues on its own like leaking the

dynamically allocated stream name memory and also not checking whether the

allocation succeeded in the first place.

It is also incomplete in that it still does not handle the case where

stream name of the widget is a substring of the stream name of the DAI,

which is explicitly allowed and works fine if no DAPM prefix is used.

Revert the commit and take a slightly different approach to solving the

issue. Instead of comparing the widget's stream name to the name of the DAI

widget compare it to the stream name of the DAI widget. The stream name of

the DAI widget is identical to the name of the DAI widget except that it

wont have the DAPM prefix added. So this approach behaves identical

regardless to whether the DAPM context uses a prefix or not.

We don't have to worry about potentially matching with a widget with the

same stream name, but from a different DAPM context with a different

prefix, since the code already makes sure that both the DAI widget and the

matched widget are from the same DAPM context.

Fixes: fdb6eb0a1287 ("ASoC: dapm: Modify widget stream name according to prefix")

Signed-off-by: Lars-Peter Clausen

Signed-off-by: Mark Brown

Cc: stable@...

commit a6f39d7990b1508373df7be8a2cedb5e00803738

Author: Aaron Plattner

Date: Mon Jul 20 17:14:14 2015 -0700

ALSA: hda - Add new GPU codec ID 0x10de007d to snd-hda

Vendor ID 0x10de007d is used by a yet-to-be-named GPU chip.

This chip also has the 2-ch audio swapping bug, so patch_nvhdmi is

appropriate here.

Signed-off-by: Aaron Plattner

Cc:

Signed-off-by: Takashi Iwai

commit c5e1a5ae98c23fd2bc7a256ae32e3ee691899535

Author: Maruthi Srinivas Bayyavarapu

Date: Mon Jul 20 19:56:18 2015 +0530

ALSA: hda: add new AMD PCI IDs with proper driver caps

Fixes audio problems on newer asics

Signed-off-by: Maruthi Bayyavarapu

Cc: stable@...

Signed-off-by: Takashi Iwai

commit 1a2378dceb5d9ff42b7b46f18245efbb79616648

Author: David Henningsson

Date: Thu Jul 16 10:39:24 2015 +0200

ALSA: hda - Fix Skylake codec timeout

When the controller is powered up but the HDMI codec is powered down

on Skylake, the power well is turned off. When the codec is then

powered up again, we need to poke the codec a little extra to make

sure it wakes up. Otherwise we'll get sad "no response from codec"

messages and broken audio.

This also changes azx_runtime_resume to actually call

snd_hdac_set_codec_wakeup for Skylake (before STATETS read).

(Otherwise it would only have been called for Haswell and Broadwell,

which both do not need it, so this probably was not the author's

intention.)

Signed-off-by: David Henningsson

Reviewed-by: Libin Yang

Signed-off-by: Takashi Iwai

commit 63a79616fa96a3347f2de42f497fb497c3ecfede

Author: Mateusz Sylwestrzak

Date: Sun Jul 19 17:38:56 2015 +0200

ALSA: hda - Add headset mic support for Acer Aspire V5-573G

Acer Aspire V5 with the ALC282 codec is given the wrong value for the

0x19 PIN by the laptop's BIOS. Overriding it with the correct value

adds support for the headset microphone which would not otherwise be

visible in the system.

The fix is based on commit 7819717b1134 with a similar quirk for Acer

Aspire with the ALC269 codec.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=96201

Cc:

Signed-off-by: Mateusz Sylwestrzak

Signed-off-by: Takashi Iwai

commit 6e17c2350480aca716186d730a0f49ca48c47a5b

Author: Christophe JAILLET

Date: Fri Jul 17 20:33:21 2015 +0200

ALSA: sparc: Add missing kfree in error path

If 'of_ioremap' fails, then 'amd' should be freed, otherwise, there is a

memory leak.

Signed-off-by: Christophe JAILLET

Signed-off-by: Takashi Iwai

commit 7f3a9e39dc43d15f59d6651e3bc39ce76039e9ee

Author: Takashi Iwai

Date: Fri Jul 17 15:22:33 2015 +0200

ALSA: pcm: Fix lockdep warning with nonatomic PCM ops

With the nonatomic PCM ops, the system may spew lockdep warnings like:

=============================================

[ INFO: possible recursive locking detected ]

4.2.0-rc1-jeejaval3 #12 Not tainted

---------------------------------------------

aplay/4029 is trying to acquire lock:

(snd_pcm_link_rwsem){.+.+.+}, at: [] snd_pcm_stream_lock+0x43/0x60

but task is already holding lock:

(snd_pcm_link_rwsem){.+.+.+}, at: [] snd_pcm_action_nonatomic+0x29/0x80

other info that might help us debug this:

Possible unsafe locking scenario:

CPU0

----

lock(snd_pcm_link_rwsem);

lock(snd_pcm_link_rwsem);

Although this is false-positive as the rwsem is taken always as

read-only for these code paths, it's certainly annoying to see this at

any occasion. A simple fix is to use down_read_nested() in

snd_pcm_stream_lock() that can be called inside another lock.

Reported-by: Vinod Koul

Reported-by: Jeeja Kp

Tested-by: Jeeja Kp

Cc:

Signed-off-by: Takashi Iwai

commit ecf290c50d17824565ef9f2fc43cd7088fa2a064

Author: Nicolas Boichat

Date: Fri Jul 17 10:36:57 2015 +0800

ASoC: rt5645: Check if codec is initialized in workqueue handler

This fixes kernel panic on boot, if rt5645->codec is NULL when

rt5645_jack_detect_work is first called.

rt5645_jack_detect_work needs rt5645->codec to be initialized to setup

dapm pins. Also, reporting jack events is useless, as the jacks cannot

be set before the codec is ready.

Since we manually call the interrupt handler in

rt5645_set_jack_detect, the initial jack state will be reported

correctly, and dapm pins will be setup at that time.

Signed-off-by: Nicolas Boichat

Signed-off-by: Mark Brown

commit c34f1364afe4c19524ba5a3707cf61ccf1ad0e31

Author: Keith Packard

Date: Wed Jul 15 12:14:39 2015 -0700

ALSA: hda/realtek: Enable HP amp and mute LED on HP Folio 9480m [v3]

This laptop needs GPIO4 pulled high to enable the headphone amplifier,

and has a mute LED on GPIO3. I modelled the patch on the existing

GPIO4 code which pulls the line low for the same purpose; this time,

the HP amp line is pulled high.

v2: Disable the headphone amplifier when no headphone is connected.

Don't disable power savings to preserve the LED state.

v3: Remove headset-specific hooks and code; this is just a headphone.

Signed-off-by: Keith Packard

Signed-off-by: Takashi Iwai

commit e7c9ebb14105144041b337c92082110bd9b6781e

Author: Shilpa Sreeramalu

Date: Wed Jul 15 07:58:09 2015 -0700

ASoC: Intel: Get correct usage_count value to load firmware

The usage_count variable was read before it was set to the correct

value, due to which the firmware load was failing. Because of this

IPC messages sent to the firmware were timing out causing a delay

of about 1 second while playing audio from the internal speakers.

With this patch the usage_count is read after the function call

pm_runtime_get_sync which will increment the usage_count variable

and the firmware load is successful and all the IPC messages are

processed correctly.

Signed-off-by: Shilpa Sreeramalu

Signed-off-by: Fang, Yang A

Signed-off-by: Mark Brown

Cc: stable@...

commit 7d8df937ac49cf70c8f38cc895ac531f335286e9

Author: Takashi Iwai

Date: Tue Jul 14 15:19:37 2015 +0200

ALSA: line6: Fix -EBUSY error during active monitoring

When a monitor stream is active, the next PCM stream access results in

EBUSY error because of the check in line6_stream_start(). Fix this by

just skipping the submission of pending URBs when the stream is

already running instead.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=101431

Cc: # v4.0+

Signed-off-by: Takashi Iwai

commit 00d42cc476173e5a6f1f7dfe3ef98910ab4f41ec

Author: Jeeja KP

Date: Tue Jul 14 13:10:47 2015 +0530

ASoC: topology: Fix to add dapm mixer info

Mixer control for widgets can't be created if the info is NULL. So assign

the correct info for this.

Signed-off-by: Jeeja KP

Signed-off-by: Subhransu S. Prusty

Acked-by: Liam Girdwood

Signed-off-by: Mark Brown

commit e4e79b8b7c34ce3612f05973f6d3645f8ee4e09e

Author: Krzysztof Kozlowski

Date: Thu Jul 9 22:19:29 2015 +0900

ASoC: zx: spdif: Fix devm_ioremap_resource return value check

Value returned by devm_ioremap_resource() was checked for non-NULL but

devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of

error this could lead to dereference of ERR_PTR.

Signed-off-by: Krzysztof Kozlowski

Reviewed-by: Jun Nie

Signed-off-by: Mark Brown

commit 02adfd5c067467ebdd2156c501401ce2f3e09121

Author: Krzysztof Kozlowski

Date: Thu Jul 9 22:19:28 2015 +0900

ASoC: zx: i2s: Fix devm_ioremap_resource return value check

Value returned by devm_ioremap_resource() was checked for non-NULL but

devm_ioremap_resource() returns IOMEM_ERR_PTR, not NULL. In case of

error this could lead to dereference of ERR_PTR.

Signed-off-by: Krzysztof Kozlowski

Reviewed-by: Jun Nie

Signed-off-by: Mark Brown

commit da75ea5533d4033e648a9149457356d6addc244c

Author: Koro Chen

Date: Thu Jul 9 10:51:27 2015 +0800

ASoC: mediatek: Use platform_of_node for machine drivers

This replaces the platform_name in snd_soc_dai_link by device tree node.

Signed-off-by: Koro Chen

Signed-off-by: Mark Brown

commit 0cff139720048febd1737dae8a021741f27701aa

Author: Lars-Peter Clausen

Date: Wed Jul 8 22:14:48 2015 +0200

ASoC: Free card DAPM context on snd_soc_instantiate_card() error path

Make sure the to free the card DAPM context if snd_soc_instantiate_card()

fails, otherwise the memory allocated for the DAPM widgets is leaked.

Signed-off-by: Lars-Peter Clausen

Signed-off-by: Mark Brown

commit 57d7bcfc8a18104e5c9e88c1447c1cac5914f63d

Author: Lars-Peter Clausen

Date: Wed Jul 8 21:59:59 2015 +0200

ASoC: dapm: Fix kcontrol widget name memory management

The name field of the widget template is only used inside

snd_soc_dapm_new_control_unlocked() which allocates a copy for the actual

widget. This means we need to free the name allocated for the template in

dapm_kcontrol_data_alloc() and not the name of the actual widget in

dapm_kcontrol_free(). Otherwise we get a double free on the widget name and

a memory leak on the template name.

Fixes: 773da9b358bf ("ASoC: dapm: Append "Autodisable" to autodisable widget names")

Signed-off-by: Lars-Peter Clausen

Signed-off-by: Mark Brown

commit fb2479f91fdf4dd0e78ddfae0b7a8ddd89266d70

Author: Vinod Koul

Date: Fri Jun 19 23:55:26 2015 +0530

ASoC: Intel: use CONFIG_SND_SOC for intel boards

The Intel boards directory was under CONFIG_SND_SOC_INTEL_SST so the

machines which don't need these were not allowed to be

selected/compiled without enabling this symbol The machine should be

allowed to selected by ASoC and then they should select rest of

symbols required

Reported-by: Michele Curti

Signed-off-by: Vinod Koul

Acked-by: Liam Girdwood

Signed-off-by: Mark Brown

commit e7327bec5e3dc0957b914d35b2b3b34523140cdb

Author: Takashi Iwai

Date: Wed Jul 8 09:22:10 2015 +0200

ALSA: hda - Fix a wrong busy check in alt PCM open

Currently, the alt PCM open callback returns -EBUSY when an

independent HP is turned off, supposing that it conflicts with the

main PCM. However, obviously, this check is wrong when the

independent HP itself isn't enabled but the alt PCM was explicitly

created via alc_dac_nid by a codec driver.

Reported-and-tested-by: Kailang Yang

Signed-off-by: Takashi Iwai

commit c3dc9ce10a152d9809bbfea1706c1af8b9b9e3da

Author: Juergen Borleis

Date: Fri Jul 3 12:39:36 2015 +0200

ASoC: fsl-ssi: Fix bitclock calculation for master mode

According to the datasheet 'pm', 'psr' and 'div2' should never be all 0.

Since commit 541b03ad6cfe ("ASoC: fsl_ssi: Fix the incorrect limitation of

the bit clock rate") this can happen, because for some bitclock rates

'pm' = 0 seems to be a valid choice but does not work due to hardware

restrictions. This results into a bad hardware behaviour (slow audio for

example). Feature tested on a i.MX25.

Signed-off-by: Juergen Borleis

Acked-by: Nicolin Chen

Signed-off-by: Mark Brown

commit 5c15866b44f41f619b2ec2fb6848b103219c221a

Author: Fang, Yang A

Date: Mon Jul 6 14:12:38 2015 -0700

ASoC: Intel: fix incorrect widget name

We should use "HiFi Playback" and "HiFi Capture".it will fix below err

cht-bsw-max98090: ASoC: no sink widget found for AIF1 Playback

cht-bsw-max98090: ASoC: Failed to add route ssp2 Tx -> direct ->

AIF1 Playback

cht-bsw-max98090: ASoC: no source widget found for AIF1 Capture

cht-bsw-max98090: ASoC: Failed to add route AIF1 Capture -> direct ->

ssp2 Rx

Signed-off-by: Fang, Yang A

Signed-off-by: Mark Brown

commit d2fd58405bbe6aa258c7de0209142973a4ef2c6b

Author: Lars-Peter Clausen

Date: Mon Jul 6 17:01:24 2015 +0200

ASoC: dapm: Lock during userspace access

The DAPM lock must be held when accessing the DAPM graph status through

sysfs or debugfs, otherwise concurrent changes to the graph can result in

undefined behaviour.

Signed-off-by: Lars-Peter Clausen

Signed-off-by: Mark Brown

Cc: stable@...

commit fab67c50bf1d6bd735b5d1ff43db962d98d7a397

Author: Libin Yang

Date: Mon Jul 6 10:44:26 2015 +0800

ALSA: hda - add codec ID for Broxton display audio codec

This patch adds codec ID (0x8086280a) and module alias for Broxton

display codec.

Signed-off-by: Libin Yang

Signed-off-by: Takashi Iwai

commit 46f9677191e4ccca160cdbf2ee1c868a98f97943

Author: Vinod Koul

Date: Mon Jun 29 17:36:45 2015 +0100

ASoC: topology: fix typos in topology header

Signed-off-by: Vinod Koul

Signed-off-by: Mark Brown

commit a7a23fccf525499610fcaf4b93f59c982b097e4f

Author: Liam Girdwood

Date: Mon Jun 29 17:36:43 2015 +0100

ASoC: topology: Fix TLV size calculation.

TLV size calculation was incorrectly calculated. Fix this according to

include/sound/tlv.h

Signed-off-by: Liam Girdwood

Signed-off-by: Mark Brown

commit e8b53f2f1cb66a5e05a4ec97c8ce6a49399287e5

Author: Dominic Sacré

Date: Tue Jun 30 17:41:33 2015 +0200

ALSA: usb-audio: Add MIDI support for Steinberg MI2/MI4

The Steinberg MI2 and MI4 interfaces are compatible with the USB class

audio spec, but the MIDI part of the devices is reported as a vendor

specific interface.

This patch adds entries to quirks-table.h to recognize the MIDI

endpoints. Audio functionality was already working and is unaffected by

this change.

Signed-off-by: Dominic Sacré

Signed-off-by: Albert Huitsing

Acked-by: Clemens Ladisch

Cc:

Signed-off-by: Takashi Iwai

commit fd63194f8a5d6229f66e444d8bde2f8b1fcf6f94

Author: Vladimir Zapolskiy

Date: Tue Jun 30 15:00:07 2015 -0700

genalloc: rename of_get_named_gen_pool() to of_gen_pool_get()

To be consistent with other kernel interface namings, rename

of_get_named_gen_pool() to of_gen_pool_get(). In the original function

name "_named" suffix references to a device tree property, which contains

a phandle to a device and the corresponding device driver is assumed to

register a gen_pool object.

Due to a weak relation and to avoid any confusion (e.g. in future

possible scenario if gen_pool objects are named) the suffix is removed.

[sfr@...: crypto/marvell/cesa - fix up for of_get_named_gen_pool() rename]

Signed-off-by: Vladimir Zapolskiy

Cc: Nicolas Ferre

Cc: Philipp Zabel

Cc: Shawn Guo

Cc: Sascha Hauer

Cc: Alexandre Belloni

Cc: Russell King

Cc: Mauro Carvalho Chehab

Cc: Vinod Koul

Cc: Takashi Iwai

Cc: Jaroslav Kysela

Signed-off-by: Stephen Rothwell

Cc: Herbert Xu

Cc: Boris BREZILLON

Signed-off-by: Andrew Morton

Signed-off-by: Linus Torvalds

commit adac25c5fb753d46e9da5afa45016c8f7ea04462

Author: Colin Ian King

Date: Mon Jun 29 17:10:22 2015 +0100

ALSA: Fix uninintialized error return

Static analysis with cppcheck found the following error:

[sound/core/init.c:118]: (error) Uninitialized variable: err

..this was introduced by commit 2471b6c80a70e80de69f5ff4c37187c3912e5874

("ALSA: info: Register proc entries recursively, too") where the call

to snd_info_card_register was removed and no longer setting the error

return in err. When snd_info_create_card_entry fails to allocate a

an entry, the error path exits with garbage in err. Fix is to return

-ENOMEM if entry fails to be allocated.

Fixes: 2471b6c80a ("ALSA: info: Register proc entries recursively, too")

Signed-off-by: Colin Ian King

Signed-off-by: Takashi Iwai

commit dbf4454e9ff100c73fa81d35749f19a4554c9fc5

Author: Markus Elfring

Date: Sun Jun 28 11:15:28 2015 +0200

ALSA: hda: Delete an unnecessary check before the function call "snd_info_free_entry"

The snd_info_free_entry() function tests whether its argument is NULL and

then returns immediately. Thus the test around the call is not needed.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring

Signed-off-by: Takashi Iwai

commit 327a7d618a093ff36c0a6da98b3d3061bc4f3d22

Author: Takashi Iwai

Date: Mon Jun 29 10:56:53 2015 +0200

ALSA: hda - Add a fixup for Dell E7450

Dell E7450 [0128:062e] needs the same quirk as other E7xx models.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=100571

Cc: # v4.1

Signed-off-by: Takashi Iwai

commit 36331ba572c36d453a1cee8ee36baf412488b46b

Author: Takashi Iwai

Date: Mon Jun 29 08:38:02 2015 +0200

ALSA: hda - Fix the dock headphone output on Fujitsu Lifebook E780

Fujitsu Lifebook E780 sets the sequence number 0x0f to only only of

the two headphones, thus the driver tries to assign another as the

line-out, and this results in the inconsistent mapping between the

created jack ctl and the actual I/O. Due to this, PulseAudio doesn't

handle it properly and gets the silent output.

The fix is to ignore the non-HP sequencer checks.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99681

Cc:

Signed-off-by: Takashi Iwai

commit e462a167380989ac0bc98e573590fa4dee76a3e5

Author: Takashi Iwai

Date: Sat Jun 27 10:21:13 2015 +0200

ALSA: hda - Add headset support to Acer Aspire V5

Acer Aspire V5 with ALC282 codec needs the similar quirk like Dell

laptops to support the headset mic. The headset mic pin is 0x19 and

it's not exposed by BIOS, thus we need to fix the pincfg as well.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=96201

Cc:

Signed-off-by: Takashi Iwai

commit ea1c80312252ddfe940a1810b353311887886858

Author: Charles Keepax

Date: Fri Jun 26 10:39:43 2015 +0100

ASoC: dapm: Fix deadlock on auto-disable mux controls

The commit 02aa78abec6e ("ASoC: DAPM: Add APIs to create individual DAPM

controls.") added locking to the snd_soc_dapm_new_control function but

did not update the call to snd_soc_dapm_new_control in the auto-disable

mux code, this appears to be because the patches were sent at fairly

similar times.

This patch change the call in the auto-disable mux code to use the new

snd_soc_dapm_new_control_unlocked function instead.

Signed-off-by: Charles Keepax

Signed-off-by: Mark Brown

commit d6ff907e1c7590448a4b516a9647f34eaeda5a4f

Author: Hui Wang

Date: Fri Jun 26 12:35:17 2015 +0800

ALSA: hda - restore the MIC FIXUP for some Dell machines

Those FIXUPs were applied to the machines through pin quirks, but

recently the PCI_QUIRK makes them can't apply to the machines.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99851

Signed-off-by: Hui Wang

Cc: # v4.1

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 956c1d24ddb30b13444579227891fe6a490546df

Author: Takashi Iwai

Date: Fri Jun 26 06:59:57 2015 +0200

ALSA: jack: Fix endless loop at unique index detection

While the commit [d0a601c278de: ALSA: jack: Fix the id uniqueness

check] fixes the wrong string check, it leads to a worse result -- the

loop in get_available_index() goes into an endless loop. The cause is

that snd_ctl_find_id() returns the object assigned to the numid if

it's set. Thus it points to the previous entry again.

This patch clears the numid field for the next call properly.

Reported-and-tested-by: Tomáš Pružina

Signed-off-by: Takashi Iwai

commit 8a9078028e4bb802c2aa0c50bd52200d866dbeb2

Author: Alex Deucher

Date: Wed Jun 24 14:37:18 2015 -0400

ALSA: hda - set proper caps for newer AMD hda audio in KB/KV

Fixes audio problems on newer asics.

Noticed by: Kelly Anderson

Signed-off-by: Alex Deucher

Cc: stable@...

Signed-off-by: Takashi Iwai

commit 91ef09f56dbbaf59c6baea67165aaf0bba53aa69

Author: Takashi Iwai

Date: Thu Jun 25 08:48:54 2015 +0200

ALSA: hda - Disable widget power-save for VIA codecs

The widget power-save that was enabled in 4.1 kernel seems resulting

in the silent output on VIA codecs by some reason. Some widgets get

wrong power states.

As a quick fix, turn this flag off while keeping power_down_unused

flag. This will bring back to the state of 4.0.x.

Fixes: 688b12cc3ca8 ('ALSA: hda - Use the new power control for VIA codecs')

Reported-and-tested-by: Harald Dunkel

Cc: # v4.1

Signed-off-by: Takashi Iwai

commit 9e2b79fb002e4176962f8eb53ea37704580b1fa8

Author: David Henningsson

Date: Wed Jun 24 10:46:33 2015 +0200

ALSA: hda - Fix Dock Headphone on Thinkpad X250 seen as a Line Out

Thinkpad X250, when attached to a dock, has two headphone outs but

no line out. Make sure we don't try to turn this into one headphone

and one line out (since that disables the headphone amp on the dock).

Alsa-info at http://www.alsa-project.org/db/?f=36f8764e1d782397928feec715d0ef90dfddd4c1

Cc: stable@...

Signed-off-by: David Henningsson

Signed-off-by: Takashi Iwai

commit a1f66fb87b565fe03e937742a379251a76531dcd

Author: Koro Chen

Date: Tue Jun 23 19:01:20 2015 +0800

ASoC: mediatek: Fix unbalanced calls to runtime suspend/resume

This adds call to runtime suspend in dev remove. It fixs the problem that

suspend is not called in the case of CONFIG_PM=n. It also fixs build

warning when CONFIG_PM=n.

Signed-off-by: Koro Chen

Signed-off-by: Mark Brown

commit 25838387c3f5f3b354dd51614e97667afdfe1bd3

Author: Takashi Iwai

Date: Tue Jun 23 11:56:22 2015 +0200

ALSA: pcm: Fix pcm_class sysfs output

The pcm_class sysfs of each PCM substream gives only "none" since the

recent code change to embed the struct device. Fix the code to point

directly to the embedded device object properly.

Fixes: ef46c7af93f9 ('ALSA: pcm: Embed struct device')

Cc: # v4.0+

Signed-off-by: Takashi Iwai

commit 65912d57fe897e3786d4f00077b0b74841b4c8db

Author: Matt Ranostay

Date: Fri Jun 19 23:46:16 2015 -0700

ALSA: hda-beep: Update authors dead email address

Signed-off-by: Matt Ranostay

Signed-off-by: Takashi Iwai

commit a61c5526dcd80a29b59ea27c0bd716faebe613ef

Author: Richard Fitzgerald

Date: Thu Jun 18 13:43:19 2015 +0100

ASoC: wm_adsp: Move DSP Rate controls into the codec

The rate controls are codec-specific, it's not possible to

generically say what the range or the meaning of each control

is (or even if they exist at all) - that depends on the

particular codec.

This is currently being handled for Arizona codecs by putting

an Arizona-specific table of controls inside the wm_adsp driver.

This creates a dependency between wm_adsp and arizona.c, and is an

awkward solution if the ADSP is used in another family of codecs

Fix this by moving the Arizona-specific rate controls into the

Arizona codec drivers.

Signed-off-by: Richard Fitzgerald

Signed-off-by: Mark Brown

commit 84e52630266338baf7ce04cfaf17bc5324063618

Author: Axel Lin

Date: Tue Jun 16 19:39:09 2015 +0800

ASoC: wm8995: Fix setting sysclk for WM8995_SYSCLK_MCLK2 case

Fix trivial typo.

Signed-off-by: Axel Lin

Acked-by: Charles Keepax

Signed-off-by: Mark Brown

commit cff684c96bd53e7dd15b42fac100dc8065e13222

Author: Vinod Koul

Date: Wed Jun 17 11:20:18 2015 +0530

ALSA: hda: provide default bus io ops extended hdac

A typical io ops use simple io accessors which can be common for most

drivers, so provide a default ops which will be used if driver doesn't

provide one

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit de4633c39eabff029025cc9cd350097e52a93426

Author: Vinod Koul

Date: Wed Jun 17 11:20:17 2015 +0530

ALSA: hda: add hda link cleanup routine

In HDA extended bus the HDA link objects are created when multilink

capabilities are parsed. We need a routine which free up these link objects

for a bus. So add snd_hdac_link_free_all routine

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit e2c15a9f1efb6ed74e0cf0dd4317c627540d7a7c

Author: Vinod Koul

Date: Wed Jun 17 11:20:16 2015 +0530

ALSA: hda: add hdac_ext stream creation and cleanup routines

HDAC extended core should create streams for an extended bus and also free

up those on cleanup. So introduce snd_hdac_ext_stream_init_all and

snd_hdac_stream_free_all routines

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit d5b220e2e77b72328c7cdf3c03f4fb648531f403

Author: Kuninori Morimoto

Date: Wed Jun 17 00:36:48 2015 +0000

ASoC: rsrc-card: remove unused ret

'047000278da3a17f8("ASoC: rsrc-card: cleanup for DPCM")'

cleanuped rsrc-card driver, but then, unused ret was left.

Below warning happen without this patch

${LINUX}/sound/soc/sh/rcar/rsrc-card.c: In function 'rsrc_card_startup':

${LINUX}/sound/soc/sh/rcar/rsrc-card.c:78:6: warning: unused variable \

'ret' [-Wunused-variable]

Reported-by: kbuild test robot

Signed-off-by: Kuninori Morimoto

Signed-off-by: Mark Brown

commit 9a9a7be299577f664efc49288d4ee3f6c12ce88f

Author: Vinod Koul

Date: Tue Jun 16 21:00:22 2015 +0530

ALSA: HDAC: move SND_HDA_PREALLOC_SIZE to core

Since this is common option for HDA driver to specfiy pre-allocated

buffer, we should make this option availble to all HDA driver by

moving this to HDA core

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 9b89d20d6fa7d8702381383feb1339ef7db0c6e2

Author: Koro Chen

Date: Mon Jun 15 22:38:04 2015 +0800

ASoC: mediatek: Add machine driver for rt5650 rt5676 codec

This is the DPCM based machine driver with rt5650 and rt5676

Signed-off-by: Nicolas Boichat

Signed-off-by: Koro Chen

Signed-off-by: Mark Brown

commit d159fcf6ad41f99e75001d8514d1e3924a6b2ef0

Author: Koro Chen

Date: Mon Jun 15 22:38:03 2015 +0800

ASoC: mediatek: Add machine driver for MAX98090 codec

This is the DPCM based machine driver with MAX98090

Signed-off-by: Koro Chen

Signed-off-by: Mark Brown

commit 9229c57a7c8e9d30fb5398810ebe709f897452bc

Author: Koro Chen

Date: Mon Jun 15 22:38:02 2015 +0800

ASoC: mediatek: Add AFE platform driver

This is the DPCM based platform driver of AFE (Audio Front End) unit.

Signed-off-by: Sascha Hauer

Signed-off-by: Koro Chen

Signed-off-by: Mark Brown

commit a66381124fc7c3ae17151fcce216cbfb698c2d0a

Author: Kuninori Morimoto

Date: Mon Jun 15 06:28:03 2015 +0000

ASoC: rsnd: remove io from rsnd_mod

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many path

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. rsnd_mod_to_io() is no longer needed. Let's remove it.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit dcabc9b1ecbc0817af02b1dd26472d75900b9f66

Author: Kuninori Morimoto

Date: Mon Jun 15 06:27:47 2015 +0000

ASoC: rsnd: move rsnd_mod_is_working() to rsnd_io_is_working()

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship.

This patch checks module working status via io instead of mod

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 937f51a5c31fc609d50a3510b203e2ccedb37cfb

Author: Kuninori Morimoto

Date: Mon Jun 15 06:27:28 2015 +0000

ASoC: rsnd: don't use rsnd_mod_to_io() on snd_kcontrol

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This patch removes rsnd_mod_to_io() from snd_kcontrol

and related function.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 7b6301a134918f54537648b83b9cdbd72b372c25

Author: Kuninori Morimoto

Date: Mon Jun 15 06:27:13 2015 +0000

ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_src_xxx()

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This patch removes rsnd_mod_to_io() from rsnd_src_xxx()

and related function.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 9ea238a8723253e400b41c60c6fb587d549d93cc

Author: Kuninori Morimoto

Date: Mon Jun 15 06:26:56 2015 +0000

ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_ssi_xxx()

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This patch removes rsnd_mod_to_io() from rsnd_ssi_xxx()

and related function.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit afdfea2c23319e72f39520142319540cd903889c

Author: Kuninori Morimoto

Date: Mon Jun 15 06:26:25 2015 +0000

ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_dma_xxx()

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This patch removes rsnd_mod_to_io() from rsnd_dma_xxx()

and related function

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 91a240c1226217e2d5dd416f16697bde30ee14f7

Author: Kuninori Morimoto

Date: Mon Jun 15 06:26:08 2015 +0000

ASoC: rsnd: don't use rsnd_mod_to_io() on rsnd_get_adinr()

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This patch removes rsnd_mod_to_io() from rsnd_get_adinr()

and its related function

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 67acd0e62c2f20746a4100ec881ca0d76b4b9649

Author: Kuninori Morimoto

Date: Mon Jun 15 06:25:48 2015 +0000

ASoC: rsnd: add common interrupt handler for SSI/SRC/DMA

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. Then, interrupt handler can't use rsnd_mod_to_io().

This patch adds SSI/SRC/DMA common interrupt handler frame

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 478cdfab0eae0efaa34e5a2f41682f7de257e4a2

Author: Kuninori Morimoto

Date: Mon Jun 15 06:25:20 2015 +0000

ASoC: rsnd: adds struct rsnd_dai_stream as on each fuction as parameter

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This means we can't call rsnd_mod_to_io() any more.

This patch adds struct rsnd_dai_stream to each function as parameter.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 1adfb5f16f715e62c6829b3e0a1d9962f3a2ec09

Author: Kuninori Morimoto

Date: Mon Jun 15 06:24:54 2015 +0000

ASoC: rsnd: rsnd_mod has rsnd_priv

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. In such case, mod io is no longer 1:1

relationship. This means we can't use rsnd_mod_to_io() in SSI/SRC/DMA

interrupt handler. In such case, we need to check all io in interrupt

handler, and then, "priv" is needed.

This patch adds rsnd_priv pointer in rsnd_mod for prepare it.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 870a67b58424e8369b0ab2434ffd5ff144fea154

Author: Kuninori Morimoto

Date: Mon Jun 15 06:24:34 2015 +0000

ASoC: rsnd: count each mod (SSI/SRC/DVC)

Each Renesas sound mod (= SSI/SRC/DVC) might be called from many paths

if it supports MIXer. Then, we don't need to re-call each mod function

that had been called. This patch count each mod status.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit a5973594f38fad62731dc479650fc6f59ef13d01

Author: Kuninori Morimoto

Date: Mon Jun 15 06:24:15 2015 +0000

ASoC: rsrc-card: cleanup for DPCM

rsrc-card driver is based on simple-card driver which is caring about

CPU / Codec connection. OTOH, rsrc-card is used for DPCM system.

FE portion is constituted by CPU and dummy Codec, and BE is constituted

by dummy CPU and Codec in DPCM system.

Because of this, current rsrc-card is doing pointless method. It works well

if FE/BE was 1:1, but not good for multi FE/BE.

This patch cleanups rsrc-card driver for DPCM. and this is prepare for

MIX support for Renesas sound driver.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit cf33c3a6de38887f1dc4dad2f3417729fc321239

Author: Kuninori Morimoto

Date: Mon Jun 15 06:23:52 2015 +0000

ASoC: rsrc-card: tidyup return value of clock error

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 6889c7475f9f27c26b9a45b8d49540cd59de7e25

Author: Kuninori Morimoto

Date: Mon Jun 15 06:23:30 2015 +0000

ASoC: rsrc-card: move rsrc_card_parse_daifmt() to upper side

This is prepare for DPCM cleanup

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit a7a1dcdcecb87d35761ecf26f9360d14f9c4707b

Author: Kuninori Morimoto

Date: Mon Jun 15 06:23:08 2015 +0000

ASoC: rsnd-card: tidyup rsrc_priv_to_()

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 23459ef05ee17ee65a39e23a0b6660c927128f35

Author: Kuninori Morimoto

Date: Mon Jun 15 06:22:47 2015 +0000

ASoC: rsrc-card: remove unused name

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 59f8e201f52b862e6f78ad2500f4f947a79b71fd

Author: Kuninori Morimoto

Date: Mon Jun 15 06:22:30 2015 +0000

ASoC: rsrc-card: enable multi cpu/codec for DPCM

Current rsrc-card is assuming 1 FE (= CPU), 1 BE (= codec) on card.

But, it will support multi FE/BE card. This is prepare for it.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 91b1fe6d11bb4e7f11a1f5d8e482481aefdc8918

Author: Kuninori Morimoto

Date: Mon Jun 15 06:22:05 2015 +0000

ASoC: rsrc-card: tidyup priv->snd_card setup timing

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 7d52fcdb64388561ca8d46a913a9df7e98a1737c

Author: Kuninori Morimoto

Date: Mon Jun 15 06:21:34 2015 +0000

ASoC: rsrc-card: used "fe.xxx"/"be.xxx" name for dai_link

Current dai_link name is using "cpu_dai_name + codec_dai_name",

but one of them is always "snd-soc-dummy-dai" when DPCM.

This patch uses "fe.xxx" for cpu, "be.xxx" for codec.

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 29284a9bc95c74776e455379d05a2b680af6161c

Author: Kuninori Morimoto

Date: Mon Jun 15 06:21:15 2015 +0000

ASoC: rsnd: don't call snd_pcm_period_elapsed() under spin lock

'a9e1ac1a9e4585b5("ASoC: rsnd: spin lock for interrupt handler")'

added spin lock under interrupt handler to solve HW restart issue.

OTOH, current rsnd driver calls snd_pcm_period_elapsed() from

rsnd_dai_pointer_update(). but, it will be called under spin lock

if SSI was PIO mode.

If it was called under spin lock, it will call

snd_pcm_update_state() -> snd_pcm_drain_done().

Then, it calls rsnd_soc_dai_trigger() and will be dead-lock.

This patch doesn't call rsnd_dai_pointer_update() under spin lock

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit d99935344ddf5ae24dee74906d8d6f7ec58838e7

Author: Kuninori Morimoto

Date: Mon Jun 15 06:20:54 2015 +0000

ASoC: rsnd: don't care under/over run error when PIO

PIO is used only for checking data path / codec settings. And underrun

is very normal when PIO mode. Let's don't care about under/over run

error when PIO case. Otherwise, 1) too many HW restart happens, 2) some

sounds which need much data transfer can't play since it falls into

error detection method which was created for DMA transfer

Signed-off-by: Kuninori Morimoto

Tested-by: Keita Kobayashi

Signed-off-by: Mark Brown

commit 9be81c995df95bc3abcb9941db7e3b60f2ce66b6

Author: Michele Curti

Date: Mon Jun 15 10:44:11 2015 +0800

ASoC: rt5645: move RT5650 muxes to rt5650_specific_dapm_widgets

Developing a driver for an Asus X205TA laptop I get these dmesg

errors:

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 ADC1 Swap Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 ADC2 Swap Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 ADC3 Swap Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 ADC Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 DAC1 L Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 DAC1 R Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 DAC2 L Mux has no paths

rt5645 i2c-10EC5648:00: ASoC: mux RT5650 IF1 DAC2 R Mux has no paths

so, move these muxes to the rt5650_specific_dapm_widgets[] list.

Signed-off-by: Michele Curti

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit 1b0a6536448f48c944b772fe32b553ed2a8420d6

Author: Takashi Iwai

Date: Mon Jun 15 20:36:12 2015 +0200

ALSA: hda - Fix noisy outputs on Dell XPS13 (2015 model)

The new Dell XPS13 also requires the similar quirk for fixing the

noisy outputs. (But, as the codec was changed, now the fixup for

Latitude is used instead.)

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=99851

Signed-off-by: Takashi Iwai

commit 73095d4fae707ec7eee3e40b6689a9dbb967462c

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:37 2015 +0900

ALSA: bebob: add support for Behringer FCA 610/1616

They're based on DM1500 (ArchWave produced), and BeBoB version 3 is

installed.

$ cat /proc/asound/FCA610/firewire/firmware

Manufacturer:bridgeCo

Protocol Ver:3

Build Ver:0

GUID:0x001564000002AD73

Model ID:0x03

Model Rev:0

Firmware Date:20121102

Firmware Time:153431

Firmware ID:0x610

Firmware Ver:8348

Base Addr:0x400C0080

Max Size:1422624

Loader Date:20121015

Loader Time:104710

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 89962d1ed1bcf0216dfbd866cf06c9deb71c3edd

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:36 2015 +0900

ALSA: bebob: keep duplex streams always to keep internal multiplexer properly

Behringer FCA610 transmits packets with periodic noisy PCM samples

when receiving no streams, and generates a bit noisy sound.

ALSA BeBoB driver is programmed to establish both in/out connections

when starting streaming, then transfers packets as userspace applications

requested. This means that there's a case that one of incoming/outgoing

streams is running, to save CPU and bandwidth usage. Although, it's natural

to start transferring packets in both direction.

This commit makes this driver to keeps duplex streams always.

Tested-by: Kim Tore Jensen

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit dbf91b6311f0569ef556f166d6a30d0047835916

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:35 2015 +0900

ALSA: bebob: loosen up severity of checking continuity for BeBoB v3 quirk

PrismSound Orpheus, Behringer UFX1604 and FCA610 work with BeBoB v3, and

they're confirmed to transmit discontinuous packets in the beginning of

streaming.

payload CIP headers

8 0x00070000 0x9002FFFF

8 0x00070000 0x9002FFFF

8 0x00070000 0x9002FFFF

8 0x00070008 0x9002FFFF

8 0x00070008 0x9002FFFF

8 0x00070008 0x9002FFFF

8 0x00070008 0x9002FFFF

8 0x00070008 0x9002FFFF

8 0x00070008 0x9002FFFF

232 0x00070000 0x9002E798

232 0x00070008 0x9002FB99

232 0x00070010 0x90021398

8 0x00070018 0x9002FFFF

(This sample was got with Behringer FCA610 and FFADO library.)

This commit sets CIP_EMPTY_HAS_WRONG_DBC and CIP_SKIP_DBC_ZERO_CHECK to

ignore these discontinuities.

Tested-by: Kim Tore Jensen

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit f0a6cba2b9b06f2c7b311d335f06ae02c8245217

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:34 2015 +0900

ALSA: bebob: expand timeout for DM1500 quirk

Behringer FCA610 and UFX1604 is confirmed to require more time till

transmitting packets after establishing connections. This seems to

be a quirk of DM1500 ASIC which ArchWave produced.

For this quirk, this commit extends the time to wait up to 2 seconds.

As a result, in worst cases, below userspace functions require 2 seconds

to return.

- snd_pcm_prepare()

- snd_pcm_hw_params()

- snd_pcm_recover()

Tested-by: Kim Tore Jensen

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit e7c092fc0d2e499cd4d1cf472fdac81b43b4835e

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:33 2015 +0900

ALSA: bebob: add 'version' member for BeBoB protocol version

BeBoB installed devices have BeBoB register area. This area stores

basic information about its firmware. A register has its protocol

version.

This commit adds 'version' member and store the device's protocol

version to handle v3 quirks in following commits.

Tested-by: Kim Tore Jensen

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 98351231407455b7f44089c3ad5d132c760ab68d

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:32 2015 +0900

ALSA: bebob: add SYT-Match support

In previous commits, this driver can detect the source of clock as mush

as possible. SYT-Match mode is also available.

This commit purge the restriction.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 28a3070cd0cdb1e881b2f293c998350d655babdb

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:31 2015 +0900

ALSA: bebob: obsolete string literal expression for clock source

The old string literals were completely replaced by new normalized

representation.

This commit obsoletes it.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 58f7b1de06a5bdbc3fd3adbbe81f9ff364818d3f

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:30 2015 +0900

ALSA: bebob: use normalized representation for the type of clock source

This commit changes function prototype and its processing. As a result,

function caller can execute additional processing according to detected

clock source.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 353f3993bdd62b011b4b03c2c77fcb6897a351ad

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:29 2015 +0900

ALSA: bebob: preparation for replacing string literals by normalized representation for model-dependent structures

Previous commit adds a enumerator as a normalized representation of

clock source, while model-dependent structures still use string literals

for this purpose.

This commit is a preparation for replacement.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit cb268fde15168d6b36d8afa654f3d35ffda5776c

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:28 2015 +0900

ALSA: bebob: apply new enumerator to normalize the type of clock source

Previous commit allows this driver to detect several types of clock

source, while there's no normalized expression for it.

This commit adds a new enumerator for this purpose.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit 5f2e26103a60c19c854d63b9d9dff656594729fd

Author: Takashi Sakamoto

Date: Sun Jun 14 12:49:27 2015 +0900

ALSA: bebob: improve signal mode detection for clock source

With BeBoB version 3, current ALSA BeBoB driver detects the type of

current clock signal source wrongly. This is due to a lack of proper

implementation to parse the information.

This commit renews the parser. As a result, this driver detects

SYT-Match clock signal, thus it can start streams with two modes;

SYT-Match mode and the others. SYT-Match mode will be supported in future

commits.

There's a constrain about detected internal/external clock source.

When detecting external clock source, this driver allows userspace

applications to use current sampling rate only. This is due to consider

abour synchronization to external clock sources such as S/PDIF, ADAT or

word-clock.

According to several information from some devices, I guesss that the

internal clock of most devices synchronize to IEEE 1394 cycle start

packet. In this case, by a usual way, it's detect as 'Sync type

of output Music Sub-Unit' connected to 'Sync type of PCR output Unit

(oPCR)', and this driver judges it as internal clock. Therefore,

userspace applications is allowed to request arbitrary supported sampling

rates.

On the other hand, several devices based on BeBoB version 3 have

additional internal clock. In this case, by a usual way, it's detect as

'Sync/Additional type of External input Unit'. Unfortunately, there's no

way to distinguish this sync type from the other external clock sources

such as word-clock. In this case, this driver handles it as external and

userspace applications is forced to use current sampling rate.

I note that when the source of clock is detected as 'Isochronous stream

type of input PCR[0]', it's under 'SYT-Match' mode. In this mode, the

synchronization clock is generated according to SYT-series in received

packets. In this case, this driver generates the series by myself. I

experienced this mode often make the device silent suddenly during

playbacking. This means that the mode is easy to lost synchronization.

Signed-off-by: Takashi Sakamoto

Signed-off-by: Takashi Iwai

commit f72490ec9a2753d148a7e83b66e06b8f313c4953

Author: Nicholas Mc Guire

Date: Sun Jun 14 19:16:59 2015 +0200

ALSA: mips: let SND_SGI_O2 select SND_PCM

Fix the missing dependency on PCM stuff.

[Add the same fix for HAL2, too -- tiwai]

Signed-off-by: Nicholas Mc Guire

Signed-off-by: Takashi Iwai

commit 4de77f5b5d5f0fe78be7ed4069b1bdb8f63390c9

Author: Mathias Krause

Date: Sat Jun 13 14:25:16 2015 +0200

ASoC: intel: Constify ACPI device ids

Constify the ACPI device ID array, it doesn't need to be writable at

runtime.

Signed-off-by: Mathias Krause

Signed-off-by: Mark Brown

commit 575775e4a2b4ae2829ee1acaab3d1e17a5a96783

Author: Mathias Krause

Date: Sat Jun 13 14:25:15 2015 +0200

ASoC: rt5670: Constify ACPI device ids and register defaults

Constify the ACPI device ID array and the register map, no need to have

them writable at runtime. Also drop the unneeded RT5670_INIT_REG_LEN

define.

Signed-off-by: Mathias Krause

Signed-off-by: Mark Brown

commit 8e6d2f903a9311ee775dcd1626768c4b141db9eb

Author: Mathias Krause

Date: Sat Jun 13 14:25:13 2015 +0200

ASoC: max98090: Constify ACPI device ids and register defaults

Constify the ACPI device ID array and the register map, no need to have

them writable at runtime.

Signed-off-by: Mathias Krause

Signed-off-by: Mark Brown

commit 7c67d5354cb2e4a6e9a2a360bca0eb7143748a71

Author: Mathias Krause

Date: Sat Jun 13 14:25:14 2015 +0200

ASoC: rt5640: Constify ACPI device ids and register defaults

Constify the ACPI device ID array and the register map, no need to have

them writable at runtime. Also drop the unneeded RT5640_INIT_REG_LEN

define.

Signed-off-by: Mathias Krause

Signed-off-by: Mark Brown

commit cf1e909f8b3eb1f14559b94db9fb908e353d7790

Author: Axel Lin

Date: Sun Jun 14 10:28:01 2015 +0800

ASoC: ml26124: Remove duplicate code

Current code has duplicate code for 16000, 32000 and 48000 sample rates.

get_srate() returns negative error code for unsupported rate, so we can

remove the duplicate code in the swith cases by calling get_srate() first.

Signed-off-by: Axel Lin

Signed-off-by: Mark Brown

commit 114e7618649131cedd4a5c4aa957a3ab70c76faa

Author: Takashi Iwai

Date: Mon Jun 15 11:59:32 2015 +0200

ALSA: hda - Fix audio crackles on Dell Latitude E7x40

We still got a report that the audio crackles and noises occur with

the recent 4.1 kernels on Dell machines. These machines seem to need

similar workarounds that have been applied to the recent Dell XPS 13

models. Since the codec of these machines (Dell Latitute E7240 and

E7440) is different from XPS 13's one, we need a new fixup entry.

Also, it was confirmed that the previous workaround to disable the

widget power-save (commit [219f47e4f964: ALSA: hda - Disable widget

power-saving for ALC292 & co]) is no longer needed after this fix.

So, this patch includes the partial revert of the commit, too.

Reported-and-tested-by: Mihai DonÈu

Tested-by: Jonathan McDowell

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 3c626885a19adbb9ffa581fa3c2c92db68d946dd

Author: Fang, Yang A

Date: Wed Jun 3 15:07:41 2015 -0700

ASoC: Intel: fixed TI button detection

In order to make TI button interrupt working max98090 codec

Need provide mic bias all the time as long as mic is present

so SHDN and micbias pin are forced on.we also need set max98090

codec bias close or lower than TI bias.We set them in bios/coreboot

kernel reads them from device property

Signed-off-by: Fang, Yang A

Signed-off-by: Mark Brown

commit 85261936e2074650bffa99e59b914720223ed51b

Author: Rasmus Villemoes

Date: Thu Jun 4 10:13:53 2015 +0200

ASoC: Intel: mrfld: simplify sst_fill_widget_module_info

Some tiny improvements, cutting 180 bytes off the generated code.

- use strchr() for single-character needle

- compute index using pointer subtraction instead of two strlen()

calls

- factor out the common check for whether the initial part of

kctl->id.name (before the space) is identical to w->name.

Signed-off-by: Rasmus Villemoes

Acked-by: Vinod Koul

Tested-by: Fang, Yang A

Signed-off-by: Mark Brown

commit 91da4d68efb13cee623f4f77433c39bcb8ff472d

Author: Hui Wang

Date: Mon Jun 15 17:43:39 2015 +0800

ALSA: hda - adding a DAC/pin preference map for a HP Envy TS machine

On a HP Envy TouchSmart laptop, there are 2 speakers (main speaker

and subwoofer speaker), 1 headphone and 2 DACs, without this fixup,

the headphone will be assigned to a DAC and the 2 speakers will be

assigned to another DAC, this assignment makes the surround-2.1

channels invalid.

To fix it, here using a DAC/pin preference map to bind the main

speaker to 1 DAC and the subwoofer speaker will be assigned to another

DAC.

Cc:

Signed-off-by: Hui Wang

Signed-off-by: Takashi Iwai

commit f41ca07d636962ae7d64f399279f42e273fe9c7e

Author: Matt Ranostay

Date: Fri Jun 12 21:47:46 2015 -0700

ALSA: hda-beep: Update authors dead email address

Signed-off-by: Matt Ranostay

Signed-off-by: Takashi Iwai

commit 02acc7ac3fcb1df00a232adf2322045443fa6745

Author: Fabian Frederick

Date: Fri Jun 12 18:58:59 2015 +0200

ALSA: gus: use swap() in snd_ics_put_double()

Use kernel.h macro definition.

Thanks to Julia Lawall for Coccinelle scripting support.

Signed-off-by: Fabian Frederick

Signed-off-by: Takashi Iwai

commit eaf2d9470774a50bf8e49f2a8710cf1e9bb22288

Author: Quentin Lambert

Date: Fri Jun 12 10:38:41 2015 +0200

ALSA: aoa: convert bus code to use dev_groups

The dev_attrs field of struct bus_type is going away, use dev_groups instead.

This converts the soundbus code to use the correct field.

These modifications were made using Coccinelle.

Signed-off-by: Quentin Lambert

Signed-off-by: Takashi Iwai

commit 0f5133985b4f81cd97010dcd515c9ec1a4f85fb9

Author: Julian Scheel

Date: Fri Jun 12 15:57:32 2015 +0200

ASoC: wm8523: Set bclk ratio for master mode

When running in master mode the bclk divider must be configured to generate a

sane bitclock. Pick the smallest fs multiplicator, which can hold all

transmitted bits.

Signed-off-by: Julian Scheel

Acked-by: Charles Keepax

Signed-off-by: Mark Brown

commit a0c496ae9fdbad3ce21658eb38733f0f064e0529

Author: Zidan Wang

Date: Thu Jun 11 19:14:36 2015 +0800

ASoC: wm8960: the enum of "DAC Polarity" should be wm8960_enum[1]

the enum of "DAC Polarity" should be wm8960_enum[1].

Signed-off-by: Zidan Wang

Acked-by: Charles Keepax

Signed-off-by: Mark Brown

Cc: stable@...

commit 7a6f7a3b53e3eb517ac3c1c23327428dcfdd485b

Author: Arnaud Pouliquen

Date: Fri Jun 5 10:19:05 2015 +0200

ASoC: simple card: Add mclk-fs property in dai-link

Add mclk-fs ratio property per dai-link sub node. This will

allow to manage several codecs with different ratio.

Signed-off-by: Arnaud Pouliquen

Signed-off-by: Mark Brown

commit 50f1dbbe59563e388e8dea561d682cb2f1b31ab0

Author: Fang, Yang A

Date: Thu Jun 11 15:51:59 2015 -0700

ASoC: Intel: Added I2C dependency to two BSW machine drivers

Fixed below error/warnings

sound/built-in.o: In function `rt5645_i2c_probe':

>> rt5645.c:(.text+0xe38f5): undefined reference to

>> `devm_regmap_init_i2c'

sound/built-in.o: In function `rt5645_i2c_driver_exit':

>> rt5645.c:(.exit.text+0x60e): undefined reference to `i2c_del_driver'

sound/built-in.o: In function `rt5645_i2c_driver_init':

>> rt5645.c:(.init.text+0x1a90): undefined reference to

>> `i2c_register_driver'

Signed-off-by: Fang, Yang A

Signed-off-by: Mark Brown

commit 9b5d093623bac1cbc8a0525102bb0b2a4e607527

Author: Axel Lin

Date: Fri Jun 12 17:19:15 2015 +0800

ASoC: rt5645: Use devm_gpiod_get_optional for hp-detect

Since hp-detect is optional, use devm_gpiod_get_optional instead.

In additional, it should return error if devm_gpiod_get_optional fails.

Signed-off-by: Axel Lin

Signed-off-by: Mark Brown

commit 56c3411e1ef6f3df89576a743f2ac0a03246b9c8

Author: Sebastian Andrzej Siewior

Date: Thu Jun 11 15:14:34 2015 +0200

ASoC: Intel: sst: use ; instead of , at the of a C statement

This was spotted by Fernando Lopez-Lezcano

while he tried to compile a -RT kernel with this driver enabled.

"make C=2" would also warn about this. This is is based on his patch.

Reported-by: Fernando Lopez-Lezcano

Signed-off-by: Sebastian Andrzej Siewior

Acked-by: Vinod Koul

Signed-off-by: Mark Brown

commit 9d238241f906951aafb41b0529525fab543e3b9d

Author: Alexandre Belloni

Date: Thu Jun 11 11:06:09 2015 +0200

ASoC: atmel: properly select dma driver state

It is currently possible to have CONFIG_SND_ATMEL_SOC_SSC=y with either

CONFIG_SND_ATMEL_SOC_PDC=m or CONFIG_SND_ATMEL_SOC_DMA=m. This results in a

driver that compiles but does not link with this kind of error:

sound/built-in.o: In function `atmel_ssc_set_audio':

(.text+0x87d90): undefined reference to `atmel_pcm_pdc_platform_register'

sound/built-in.o: In function `atmel_ssc_put_audio':

(.text+0x8879a): undefined reference to `atmel_pcm_pdc_platform_unregister'

Introduce new config options SND_ATMEL_SOC_SSC_PDC and

SND_ATMEL_SOC_SSC_DMA which should be used by the board drivers and the

correct logic to properly select the SND_ATMEL_SOC_PDC and

SND_ATMEL_SOC_DMA states.

Reported-by: Randy Dunlap

Signed-off-by: Alexandre Belloni

Signed-off-by: Mark Brown

commit 60ad57c50fd08bb84abcf10af7e0fb2176544bfc

Author: Alexandre Belloni

Date: Thu Jun 11 11:06:08 2015 +0200

ASoC: atmel: Revert previous fix for Kconfig limations

After discussing with the Kconfig maintainer, we found a better fiw

allowing to keep each driver as modules.

This reverts commit 0ef9dc139db2fca304ce4eadb5b8fb40d3dedb5e.

Signed-off-by: Alexandre Belloni

Signed-off-by: Mark Brown

commit 6c3e0ef7e9d80c29a6eeb39f5963d81d255e8745

Author: Oder Chiou

Date: Fri Jun 12 14:47:36 2015 +0800

ASoC: rt5645: Add the device tree parser

Modify the RT5645 driver to parse platform data from device tree. This is

missing from previous patch in sound/soc/codecs/rt5645.c, that was present

in v3.

Signed-off-by: Bard Liao

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit 6f7da87f20de4583b7b7dab4de777b2d9379542c

Author: Fang, Yang A

Date: Thu Jun 11 22:17:57 2015 -0700

ASoC: Intel: Fixed incorrect sst pcm_delay

This patch corrected pcm_delay calculation in BSW sst driver

Signed-off-by: Fang, Yang A

Signed-off-by: Mark Brown

commit d320a0fe6058b646eaee7107919dd2c1ed5cf72b

Author: Oder Chiou

Date: Fri Jun 12 17:06:29 2015 +0800

ASoC: rt286: Add RL6347A class device shared support for RT286

The patch separates the IO function from the rt286. It is prepared to share

for new chips that support the same IO function.

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit 3aaf5194088919d74880556023e777ed5d0f69ad

Author: Takashi Iwai

Date: Fri Jun 12 07:53:58 2015 +0200

ALSA: hda - Abort the probe without i915 binding for HSW/BDW

The previous patch tried to continue the probe if i915 binding fails.

For for simplicity reason, we haven't implemented abort even for

controller chips that are dedicated for HDMI/DP on HSW and BDW.

However, Mengdong suggested that this can be dangerous; BIOS may

disable gfx power well although the PCI entry for HD-audio is left,

and this may result in the unexpected behavior, kernel errors, etc.

For avoiding this situation, abort the probe at i915 binding failure

only for HSW/BDW chips selectively. For other chips, it still

continues.

Fixes: bf06848bdbe5 ('ALSA: hda - Continue probing even if i915 binding fails')

Reported-by: Mengdong Lin

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit 4c2e4475d3167238919b5458d9e6fc49d59b0acd

Author: Vinod Koul

Date: Thu Jun 11 22:11:49 2015 +0530

ALSA: HDA: remove the unused function declaration

Commit a1b3fda6ae ALSA: hdac_ext: add hdac extended controller,

erroneously added snd_hdac_ext_bus_map_codec_to_link() function

declaration, so remove it

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 73915037e0becda974cfeb9f95da4902099b24ff

Author: Takashi Iwai

Date: Thu Jun 11 14:02:49 2015 +0200

ALSA: hda - Fix link power unbalance at device removal

snd_hdac_link_power() has to be called after unregistering the codec

device. Otherwise the device might be already runtime-suspended, thus

the refcount goes under zero, triggering a warning like:

WARNING: CPU: 7 PID: 2014 at sound/hda/hdac_i915.c:63 snd_hdac_display_power+0x106/0x120 [snd_hda_core]()

CPU: 7 PID: 2014 Comm: modprobe Not tainted 4.1.0-rc7-test+ #1

Call Trace:

[] dump_stack+0x4c/0x6e

[] warn_slowpath_common+0x8a/0xc0

[] warn_slowpath_null+0x1a/0x20

[] snd_hdac_display_power+0x106/0x120 [snd_hda_core]

[] azx_intel_link_power+0x12/0x20 [snd_hda_intel]

[] azx_link_power+0x1f/0x30 [snd_hda_codec]

[] snd_hdac_link_power+0x2e/0x40 [snd_hda_core]

[] snd_hda_codec_dev_free+0x34/0x50 [snd_hda_codec]

[] __snd_device_free+0x51/0xa0 [snd]

.....

Signed-off-by: Takashi Iwai

commit 0674398eadfac084adc07aac5372ff41ded50c4b

Author: Axel Lin

Date: Wed Jun 10 22:46:05 2015 +0800

ASoC: tas2552: Use devm_gpiod_get_optional for enable-gpio

commit ea178d1456dc ("ASoC: tas2552: Make the enable-gpio really optional")

makes enable-gpio optional. devm_gpiod_get_optional() is the better

function for optional gpio, so let's switch to use it.

Signed-off-by: Axel Lin

Acked-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 6621c02b56b288483459d088ca6be8e8e22cda4e

Author: Richard Fitzgerald

Date: Thu Jun 11 11:32:32 2015 +0100

ASoC: wm_adsp: Add basic debugfs entries

This patch adds some debugfs nodes to get information

about the currently running firmware.

Signed-off-by: Richard Fitzgerald

Signed-off-by: Mark Brown

commit b32b35d493cbaa423d1a67ed269b63b252cc21b1

Author: Richard Fitzgerald

Date: Thu Jun 11 11:32:31 2015 +0100

ASoC: wm_adsp: create ALSA controls from wm_adsp driver

Now that we have a codec_probe stage initialization in the wm_adsp

driver, we can make the wm_adsp driver create its own ALSA controls

instead of having that responsibility pushed to every codec driver.

Signed-off-by: Richard Fitzgerald

Signed-off-by: Mark Brown

Signed-off-by: Jaroslav Kysela

commit 3cde94c6ad0dc50688eb6c416af796f60a9eaf78

Author: Richard Fitzgerald

Date: Thu Jun 11 11:32:30 2015 +0100

ASoC: wm_adsp: Add codec_probe and codec_remove stubs

Currently the only init function in wm_adsp is called by the

codec driver early in its probe before the codec has been

registered with SOC.

This patch adds stubs for the codec_probe and codec_remove stages

and calls them from WM5102 and WM5110 codec drivers. This allows us

to hang anything that needs setup during the codec probe stage off

these functions without further modification of the codec drivers.

Signed-off-by: Richard Fitzgerald

Signed-off-by: Mark Brown

Signed-off-by: Jaroslav Kysela

commit 9b47e6acdfc9da5c5de3db433e2e08a0b2848b7d

Author: Jeeja KP

Date: Thu Jun 11 14:11:49 2015 +0530

ALSA: hdac_ext: add extended stream capabilities

Now we have the bus and controller code added to find and initialize

the extended capabilities. Now we need to use them in stream code to

decouple stream, manage links etc

So this patch adds the stream handling code for extended capabilities

introduced in preceding patches

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 5a16370027298447675573cb73b98aeea12fdad4

Author: Jeeja KP

Date: Thu Jun 11 14:11:48 2015 +0530

ALSA: hdac_ext: add hdac extended controller

The controller needs to support the new capabilities and allow

reading, parsing and initializing of these capabilities, so this patch

does it

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit d1d228ab4629f5175b12ff7af142227e99788eaf

Author: Jeeja KP

Date: Thu Jun 11 14:11:47 2015 +0530

ALSA: hdac_ext: add extended HDA bus

The new HDA controllers from Intel support new capabilities like

multilink, pipe processing, SPIB, GTS etc In order to use them we

create an extended HDA bus which embed the hdac bus and contains the

fields for extended configurations

Signed-off-by: Jeeja KP

Signed-off-by: Vinod Koul

Signed-off-by: Takashi Iwai

commit 98b955063f33ecb5d499bbfa175c5c98717c18aa

Author: Johan Rastén

Date: Thu Jun 11 10:04:51 2015 +0200

ALSA: usb-audio: Set correct type for some UAC2 mixer controls.

Changed ctl type for Input Gain Control and Input Gain Pad Control to

USB_MIXER_S16 as per section 5.2.5.7.11-12 in the USB Audio Class 2.0

definition.

Signed-off-by: Johan Rastén

Signed-off-by: Takashi Iwai

commit a606114852a5a24c2cbfd146d55340725148cef3

Author: Takashi Iwai

Date: Thu Jun 11 10:51:28 2015 +0200

ALSA: hda - Re-add the lost fake mute support

Yet another regression by the transition to regmap cache; for better

usability, we had the fake mute control using the zero amp value for

Conexant codecs, and this was forgotten in the new hda core code.

Since the bits 4-7 are unused for the amp registers (as we follow the

syntax of AMP_GET verb), the bit 4 is now used to indicate the fake

mute. For setting this flag, snd_hda_codec_amp_update() becomes a

function from a simple macro. The bonus is that it gained a proper

function description.

Signed-off-by: Takashi Iwai

commit 2735740138b72e3aa129a5d5a93774086a8b7922

Author: Takashi Iwai

Date: Wed Jun 10 12:03:49 2015 +0200

ALSA: hda - Continue probing even if i915 binding fails

Currently snd-hda-intel driver aborts the probing of Intel HD-audio

controller with i915 power well management when binding with i915

driver via hda_i915_init() fails. This is no big problem for Haswell

and Broadwell where the HD-audio controllers are dedicated to

HDMI/DP, thus i915 link is mandatory. However, Skylake, Baytrail and

Braswell have only one controller and both HDMI/DP and analog codecs

share the same bus. Thus, even if HDMI/DP isn't usable, we should

keep the controller working for other codecs.

For fixing this, this patch simply allows continuing the probing even

if hda_i915_init() call fails. This may leave stale sound components

for HDMI/DP devices that are unbound with graphics. We could abort

the probing selectively, but from the code simplicity POV, it's better

to continue in all cases.

Reported-by: Libin Yang

Signed-off-by: Takashi Iwai

Signed-off-by: Jaroslav Kysela

commit c5e032c8e6ff250ce0adb3771224cf877d04eae1

Author: Dan Carpenter

Date: Wed Jun 10 18:37:23 2015 +0300

ASoC: imx-wm8962: Add a missing error check

My static checker complains that:

sound/soc/fsl/imx-wm8962.c:196 imx_wm8962_probe() warn:

we tested 'ret' before and it was 'false'

The intent was that we use "ret" to check imx_audmux_v2_configure_port().

Fixes: 8de2ae2a7f1f ('ASoC: fsl: add imx-wm8962 machine driver')

Signed-off-by: Dan Carpenter

Otherwise, Acked-by: Nicolin Chen

Signed-off-by: Mark Brown

commit e600956a2955ba6bbbdbbb8524ef75fa02a52357

Author: Oder Chiou

Date: Wed Jun 10 14:27:57 2015 +0800

ASoC: rt5645: change gpio to gpiod APIs

Move gpio to gpio_desc and use gpiod APIs in codec driver.

Signed-off-by: Bard Liao

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit eb98672760ce5509cb1a6cdfd9981bfc84c860df

Author: Oder Chiou

Date: Wed Jun 10 14:27:58 2015 +0800

ASoC: rt5645: add device tree support

Modify the RT5645 driver to parse platform data from device tree.

Write a DT binding document to describe those properties.

Signed-off-by: Bard Liao

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit 53e466a4ed96ae7d4ad5d55224fd36324cae84df

Author: Oder Chiou

Date: Wed Jun 10 14:34:29 2015 +0800

ASoC: rt5645: make RT5650_TDM_CTRL_4 readable

Register RT5650_TDM_CTRL_4(0x7A) is readable and used for mixer

setting. It should be added in rt5645_readable_register function.

Signed-off-by: Bard Liao

Signed-off-by: Oder Chiou

Signed-off-by: Mark Brown

commit 21eed914675def35f1ca441bfae39f34b1fa9a93

Author: Nicolas Boichat

Date: Wed Jun 10 11:54:13 2015 +0800

ASoC: rt5645: Lock mutex in rt5645_enable_push_button_irq

rt5645_enable_push_button_irq uses snd_soc_dapm_*_unlocked

functions, so it needs to lock the required dapm mutex.

Signed-off-by: Nicolas Boichat

Signed-off-by: Mark Brown

commit b6aa168fcb4fac4f6277b71d298830a97ac51d5b

Author: Srinivas Kandagatla

Date: Wed Jun 10 13:15:54 2015 +0100

ASoC: qcom: add apq8016 sound card support

This patch adds apq8016 machine driver support. This patch is tested on

DB410c and msm8916-mtp board for both hdmi and analog audio

features.

Acked-by: Kenneth Westfield

Signed-off-by: Srinivas Kandagatla

Signed-off-by: Mark Brown

commit 1d6053232b61ed3901e8b09dfd2d2bdcbb49503e

Author: Srinivas Kandagatla

Date: Wed Jun 10 13:15:44 2015 +0100

ASoC: qcom: document apq8016 sbc machine driver bindings

This patch adds bindings for apq8016 sbc machine driver.

APQ8016 has 4 MI2S which can be configured to different sinks like

internal codec/external codec, this connection and various parameters

are controlled via 2 iomux registers.

Acked-by: Kenneth Westfield

Signed-off-by: Srinivas Kandagatla

Signed-off-by: Mark Brown

commit 1b77163a4db6832a1a8a13788039efe21d8a393b

Author: Takashi Iwai

Date: Wed Jun 10 12:15:27 2015 +0200

ALSA: hda - Allow calling snd_hdac_i915_*() without actual binding

Add the missing NULL checks so that snd_hdac_i915*() can be called

even after the binding with i915 failed.

Signed-off-by: Takashi Iwai

commit 70015bc2ad9246c83d2510da0e748617e64072dc

Author: Takashi Iwai

Date: Wed Jun 10 10:27:00 2015 +0200

ALSA: hda - Don't actually write registers for caps overwrites

Along with the transition to regmap for managing the cached parameter

reads, the caps overwrite was also moved to regmap cache. The cache

change itself works, but it still tries to write the non-existing verb

(the HDA parameter is read-only) wrongly. It's harmless in most

cases, but some chips are picky and may result in the codec

communication stall.

This patch avoids it just by adding the missing flag check in

reg_write ops.

Signed-off-by: Takashi Iwai

commit b96e33f2681124ad6ce3f1c234a7ea1e21f1df27

Author: Jyri Sarha

Date: Tue Jun 2 23:09:34 2015 +0300

ASoC: davinci-mcasp: Choose PCM driver based on configured DMA controller

Find the configured DMA controller by asking for a DMA channel in the

probe phase and releasing it right after. The controller device can be

found via the dma_chan struct and the controller is recognized from

the compatible property of its device node. The patch assumes EDMA if

there is no device node.

Signed-off-by: Jyri Sarha

Acked-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 5c3a71f8338d69a0b63edb3d02d8509b9f0ec6db

Author: Lars-Peter Clausen

Date: Thu Jun 4 16:13:51 2015 +0200

ASoC: rx51: Automatically disconnect non-connected pins

According to the schematics the external speaker is differential, so the

HPLCOM and HPRCOM pins of the CODEC should be connected to it.

Otherwise the routing looks complete, so add the missing routes and set the

fully_routed flag of the card instead of manually marking the unused inputs

and outputs as not connected. This makes the code a bit shorter and

cleaner.

Signed-off-by: Lars-Peter Clausen

Acked-by: Jarkko Nikula

Tested-by: Jarkko Nikula

Reviewed-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 0bc969038057585c36bc78f4b989203445d03ccd

Author: Srinivas Kandagatla

Date: Tue Jun 9 14:35:22 2015 +0100

ASoC: qcom: storm: remove special casing EPROBE_DEFER

This patch removes special casing the EPROBE_DEFER error handling in the

driver.

Signed-off-by: Srinivas Kandagatla

Signed-off-by: Mark Brown

commit b28d89986d0eb6f5cc5c3d4cf7ff10f41a52e985

Author: Srinivas Kandagatla

Date: Tue Jun 9 14:34:21 2015 +0100

ASoC: qcom: storm: allocate snd_soc_card struct dynamically.

This patch moves static allocation of snd_soc_card to dynamic allocation,

the reason to do this is to avoid holding up any dangling pointers

in this static structures. And I see no use for having this struct as static

given that the card->name is also populated dynamically from dt.

Signed-off-by: Srinivas Kandagatla

Signed-off-by: Mark Brown

commit 1981eb5d675e7d619733d96d8b04c50523adb244

Author: Lu, Han

Date: Tue Jun 9 16:50:38 2015 +0800

ALSA: hda: Intel: enable automatic runtime pm for HDMI codecs by default

Enable runtime PM of the HDMI audio codec on the latest Intel platforms.

So the HD-A controller or HDMI codec can suspend when idle timeout by

default and release the GFX power well.

The patch influences HSW/BDW/BYT/BSW/SKL. Eariler platforms and third

party analog codecs will not be influenced.

Signed-off-by: Lu, Han

Signed-off-by: Takashi Iwai

commit 70856bee14b11f6dcee4197657607125a8ad21f4

Author: Sergej Sawazki

Date: Sat Jun 6 11:25:48 2015 +0200

ASoC: wm8741: Allow master clock switching

The set of supported sample rates depends on the master clock supplied

to the codec. Allow the machine driver to set the required master clock

in hw_params().

Signed-off-by: Sergej Sawazki

Acked-by: Charles Keepax

Signed-off-by: Mark Brown

commit 988cac02acd068723cfcb7bf8d9a596f86d2c033

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:56 2015 +0300

ASoC: tas2552: Update DT binding document regarding clock configuration

Add overview of tas2552's clock configuration and selection.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 308e1800cade1082f195f67b75717af5bbe0bb09

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:55 2015 +0300

ASoC: tas2552: Use consistent name for 'struct tas2552_data'

In tas2552_sw_shutdown() tas_data is used while the rest of the driver uses

tas2552 when dealing with the 'struct tas2552_data'

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit d620c366b7ea8dbc42d99a77d1d5cd114e0645ae

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:54 2015 +0300

ASoC: tas2552: Remove unneeded semicolon

Double semicolon was added by the following commit:

ea178d1456dc ASoC: tas2552: Make the enable-gpio really optional

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 35c51bd9b61f0eb5d205b1785592e1ecf1b68657

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:53 2015 +0300

ASoC: tas2552: Call pm_runtime_disable when the module is removed

The module can not be loaded again after it has been removed.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 5dddb7d1e83573b58e5876dcc826243e300ab4fa

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:52 2015 +0300

ASoC: tas2552: Code, define alignment changes for uniformity

Align the numbers in the header file to the same column.

At the same time change the wrapping of CFG_2 register write in the probe

function to be uniform with the other calls.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 1d1833f096725c82c4af09599e6bd4695520bf87

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:51 2015 +0300

ASoC: tas2552: Correct Boost Auto-Pass Through Control register usage

Correct the bit definition so the code will change the bits what it

supposed to change. Also rename the register define to

TAS2552_BOOST_APT_CTRL.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit fb9d6a3f9da7a6001f973ef41430213e4547e970

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:50 2015 +0300

ASoC: tas2552: Correct Output Data register usage

Do not write to DOUT Tristate register at probe time, specially not write

data which is defined to be used in Output Data Register.

Fix the defines for the Output Data Register and correct the register write

at probe time.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit bc6ee86f9a094bb377d20af40a9cf136aadfb109

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:49 2015 +0300

ASoC: tas2552: Add control for selecting DIN source

'DIN source' enum can be used to select the DIN Source (muted, left, right

or average of left and right channels).

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit d64be352cf3379c37422a0f645ba5e2f69adfe35

Author: Peter Ujfalusi

Date: Mon Jun 8 15:19:48 2015 +0300

ASoC: tas2552: Correct the PLL configuration

Do not restrict the sampling rate to 44.1/48KHz. The pll_clk clock should

be (sampling rate * 512) in all cases.

Correct the J.D calculation (the D part was incorrectly calculated).

Restore PLL enable status after we are done with the configuration.

Implement hardware constraint handling towards the pll_clkin:

if D != 0 (in J.D) then 1.1MHz <= pll_clkin <= 9.2MHz needs to be checked.

If the PLL setup does not met with this constraint, fall back to BCLK as

reference clock, if BCLK fails, use the internal 1.8MHz clock.

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit cdc351dbb91c5e376d0aabb0aba2637819aac41c

Author: Misael Lopez Cruz

Date: Mon Jun 8 16:03:47 2015 +0300

ASoC: davinci-mcasp: Logic low for inactive output slots

The default state when serializers are in inactive slots is Hi-Z.

In some cases, there are no additional components driving the data

lines to a safe state so they might have noise.

While in inactive slots, the McASP AXR pins configured as outputs

can be driven low through the serializer pin drive mode setting

(DISMOD) to prevent such noise.

Signed-off-by: Misael Lopez Cruz

Signed-off-by: Peter Ujfalusi

Signed-off-by: Mark Brown

commit 58ea3092b9ba13141a57a85c453258ffc635550b

Author: Misael Lopez Cruz

Date: Wed Apr 22 16:23:01 2015 +0300

ASoC: omap-hdmi-audio: Fix invalid combination of DM_INH and CA

DM_INH = 1 (stereo downmix prohibited) and CA = 0x00 (Channel

Allocation: FR, FL) is an invalid combination according to the

HDMI Compliance Test 7.31 "Audio InfoFrame".

Signed-off-by: Misael Lopez Cruz

Signed-off-by: Jyri Sarha

Signed-off-by: Tomi Valkeinen

Acked-by: Mark Brown

commit a9e62aa904048518e98a045513200671eadd9a5d

Author: Misael Lopez Cruz

Date: Wed Apr 22 16:23:00 2015 +0300

ASoC: omap-hdmi-audio: Force channel allocation only for OMAP4

There is a constraint in the OMAP4 HDMI IP that requires to use

the 8-channel code when transmitting more than two channels.

The constraint doesn't apply for OMAP5 so don't force the channel

allocation in the sound driver as it can be done specifically for

OMAP4 later in the hdmi4 core.

Signed-off-by: Misael Lopez Cruz

Signed-off-by: Jyri Sarha

Signed-off-by: Tomi Valkeinen

Acked-by: Mark Brown

commit 44e711a38df8d7c49ae5d0110cb2a87bbbc014f6

Author: Stephen Rothwell

Date: Tue Jun 2 19:01:38 2015 +1000

x86/mm: Decouple from

Nothing in uses anything from , so

remove it from there and fix up the resulting build problems

triggered on x86 {64|32}-bit {def|allmod|allno}configs.

The breakages were triggering in places where x86 builds relied

on vmalloc() facilities but did not include

explicitly and relied on the implicit inclusion via .

Also add:

- to

- to

... which were two other implicit header file dependencies.

Suggested-by: David Miller

Signed-off-by: Stephen Rothwell

[ Tidied up the changelog. ]

Acked-by: David Miller

Acked-by: Takashi Iwai

Acked-by: Viresh Kumar

Acked-by: Vinod Koul

Cc: Andrew Morton

Cc: Anton Vorontsov

Cc: Boris Ostrovsky

Cc: Colin Cross

Cc: David Vrabel

Cc: H. Peter Anvin

Cc: Haiyang Zhang

Cc: James E.J. Bottomley

Cc: Jaroslav Kysela

Cc: K. Y. Srinivasan

Cc: Kees Cook

Cc: Konrad Rzeszutek Wilk

Cc: Kristen Carlson Accardi

Cc: Len Brown

Cc: Linus Torvalds

Cc: Peter Zijlstra

Cc: Rafael J. Wysocki

Cc: Suma Ramars

Cc: Thomas Gleixner

Cc: Tony Luck

Signed-off-by: Ingo Molnar

commit 77c23dfa19c5d2cefa777393a3f571f1a4b4b43d

Author: Luis R. Rodriguez

Date: Wed May 27 11:09:38 2015 +0930

kernel/params: constify struct kernel_param_ops uses

Most code already uses consts for the struct kernel_param_ops,

sweep the kernel for the last offending stragglers. Other than

include/linux/moduleparam.h and kernel/params.c all other changes

were generated with the following Coccinelle SmPL patch. Merge

conflicts between trees can be handled with Coccinelle.

In the future git could get Coccinelle merge support to deal with

patch --> fail --> grammar --> Coccinelle --> new patch conflicts

automatically for us on patches where the grammar is available and

the patch is of high confidence. Consider this a feature request.

Test compiled on x86_64 against:

* allnoconfig

* allmodconfig

* allyesconfig

@ const_found @

identifier ops;

@@

const struct kernel_param_ops ops = {

};

@ const_not_found depends on !const_found @

identifier ops;

@@

-struct kernel_param_ops ops = {

+const struct kernel_param_ops ops = {

};

Generated-by: Coccinelle SmPL

Cc: Rusty Russell

Cc: Junio C Hamano

Cc: Andrew Morton

Cc: Kees Cook

Cc: Tejun Heo

Cc: Ingo Molnar

Cc: cocci@...

Cc: linux-kernel@...

Signed-off-by: Luis R. Rodriguez

Signed-off-by: Rusty Russell

commit 9c41be63bfb8c1633c4e0a7bddf4434e4b2d12e3

Author: Thomas Gleixner

Date: Tue May 12 09:14:51 2015 +0200

ALSA: drivers: pcsp: Fix printout of resolution

The recent conversion of the hrtimer resolution failed to convert the

printk format from %li to %u.

Reported-by: Ingo Molnar

Signed-off-by: Thomas Gleixner

commit d601ac54c3d2c1d504d0b70603bf8e3d724ec7dc

Author: Russell King

Date: Mon Mar 2 15:35:22 2015 +0000

ASoC: migor: use clkdev_create()

clkdev_create() is a shorter way to write clkdev_alloc() followed by

clkdev_add(). Use this instead.

Acked-by: Mark Brown

Signed-off-by: Russell King

commit ab1f6de7e485b32dfb95f9284a67e0e5a1b359ac

Author: Thomas Gleixner

Date: Tue Apr 14 21:08:30 2015 +0000

sound: Use hrtimer_resolution instead of hrtimer_get_res()

No point in converting a timespec now that the value is directly

accessible. Get rid of the null check while at it. Resolution is

guaranteed to be > 0.

Signed-off-by: Thomas Gleixner

Acked-by: Takashi Iwai

Acked-by: Peter Zijlstra

Cc: Preeti U Murthy

Cc: Viresh Kumar

Cc: Marcelo Tosatti

Cc: Frederic Weisbecker

Cc: Jaroslav Kysela

Cc: alsa-devel@...

Link: http://lkml.kernel.org/r/20150414203500.799133359@...

Signed-off-by: Thomas Gleixner

-----------------------------------------------------------------------

Summary of changes:

.../devicetree/bindings/sound/mt8173-max98090.txt | 15 +

.../bindings/sound/mt8173-rt5650-rt5676.txt | 15 +

.../devicetree/bindings/sound/mtk-afe-pcm.txt | 45 +

.../devicetree/bindings/sound/qcom,apq8016-sbc.txt | 60 +

Documentation/devicetree/bindings/sound/rt5645.txt | 72 ++

.../devicetree/bindings/sound/simple-card.txt | 6 +-

.../devicetree/bindings/sound/tas2552.txt | 6 +

include/sound/hda_register.h | 4 +

include/sound/hda_regmap.h | 2 +

include/sound/hdaudio.h | 19 +-

include/sound/hdaudio_ext.h | 203 ++++

include/sound/rt5645.h | 3 -

include/sound/soc-topology.h | 12 +

include/uapi/sound/asoc.h | 45 +-

sound/ac97_bus.c | 26 -

sound/aoa/codecs/onyx.c | 1 -

sound/aoa/codecs/tas.c | 1 -

sound/aoa/fabrics/layout.c | 21 +-

sound/aoa/soundbus/core.c | 32 +-

sound/aoa/soundbus/soundbus.h | 4 +-

sound/aoa/soundbus/sysfs.c | 13 +-

sound/core/ctljack.c | 5 +-

sound/core/hrtimer.c | 9 +-

sound/core/init.c | 3 +-

sound/core/memalloc.c | 2 +-

sound/core/pcm.c | 6 +-

sound/core/pcm_native.c | 2 +-

sound/drivers/pcsp/pcsp.c | 17 +-

sound/firewire/Kconfig | 1 +

sound/firewire/amdtp.c | 5 +-

sound/firewire/amdtp.h | 2 +

sound/firewire/bebob/bebob.c | 14 +-

sound/firewire/bebob/bebob.h | 20 +-

sound/firewire/bebob/bebob_focusrite.c | 33 +-

sound/firewire/bebob/bebob_maudio.c | 23 +-

sound/firewire/bebob/bebob_midi.c | 8 +-

sound/firewire/bebob/bebob_pcm.c | 14 +-

sound/firewire/bebob/bebob_proc.c | 22 +-

sound/firewire/bebob/bebob_stream.c | 150 ++-

sound/firewire/bebob/bebob_terratec.c | 30 +-

sound/firewire/bebob/bebob_yamaha.c | 20 +-

sound/firewire/fireworks/fireworks.c | 8 +

sound/firewire/fireworks/fireworks.h | 1 +

sound/firewire/fireworks/fireworks_stream.c | 9 +

sound/firewire/oxfw/oxfw-stream.c | 9 +-

sound/hda/Kconfig | 17 +

sound/hda/Makefile | 3 +

sound/hda/ext/Makefile | 3 +

sound/hda/ext/hdac_ext_bus.c | 264 +++++

sound/hda/ext/hdac_ext_controller.c | 302 +++++

sound/hda/ext/hdac_ext_stream.c | 500 ++++++++

sound/hda/hdac_device.c | 56 +-

sound/hda/hdac_i915.c | 16 +-

sound/hda/hdac_regmap.c | 18 +-

sound/hda/hdac_stream.c | 22 +

sound/hda/hdac_sysfs.c | 6 +-

sound/isa/gus/gus_mixer.c | 9 +-

sound/mips/Kconfig | 2 +

sound/pci/asihpi/hpioctl.c | 1 +

sound/pci/echoaudio/darla20_dsp.c | 6 +-

sound/pci/echoaudio/darla24_dsp.c | 6 +-

sound/pci/echoaudio/echo3g_dsp.c | 16 +-

sound/pci/echoaudio/echoaudio.c | 2 +-

sound/pci/echoaudio/echoaudio.h | 7 +-

sound/pci/echoaudio/echoaudio_3g.c | 12 +-

sound/pci/echoaudio/echoaudio_dsp.c | 26 +-

sound/pci/echoaudio/echoaudio_gml.c | 4 +-

sound/pci/echoaudio/gina20.c | 2 +-

sound/pci/echoaudio/gina20_dsp.c | 8 +-

sound/pci/echoaudio/gina24_dsp.c | 22 +-

sound/pci/echoaudio/indigo_dsp.c | 6 +-

sound/pci/echoaudio/indigodj_dsp.c | 6 +-

sound/pci/echoaudio/indigodjx_dsp.c | 6 +-

sound/pci/echoaudio/indigoio_dsp.c | 6 +-

sound/pci/echoaudio/indigoiox_dsp.c | 6 +-

sound/pci/echoaudio/layla20.c | 2 +-

sound/pci/echoaudio/layla20_dsp.c | 12 +-

sound/pci/echoaudio/layla24_dsp.c | 26 +-

sound/pci/echoaudio/mia.c | 2 +-

sound/pci/echoaudio/mia_dsp.c | 8 +-

sound/pci/echoaudio/mona_dsp.c | 20 +-

sound/pci/emu10k1/emumixer.c | 25 +-

sound/pci/hda/Kconfig | 13 -

sound/pci/hda/hda_auto_parser.c | 27 +-

sound/pci/hda/hda_beep.c | 2 +-

sound/pci/hda/hda_beep.h | 2 +-

sound/pci/hda/hda_codec.c | 107 +-

sound/pci/hda/hda_codec.h | 8 +-

sound/pci/hda/hda_eld.c | 10 +-

sound/pci/hda/hda_generic.c | 13 +-

sound/pci/hda/hda_intel.c | 52 +-

sound/pci/hda/hda_local.h | 4 +-

sound/pci/hda/hda_proc.c | 107 +-

sound/pci/hda/patch_ca0132.c | 87 +-

sound/pci/hda/patch_cirrus.c | 4 +-

sound/pci/hda/patch_conexant.c | 23 +-

sound/pci/hda/patch_hdmi.c | 10 +-

sound/pci/hda/patch_realtek.c | 403 +++----

sound/pci/hda/patch_sigmatel.c | 28 +-

sound/pci/hda/patch_via.c | 8 +-

sound/pci/oxygen/oxygen_mixer.c | 2 +-

sound/pci/rme9652/hdsp.c | 7 +-

sound/ppc/keywest.c | 2 +

sound/soc/Kconfig | 4 +

sound/soc/Makefile | 4 +

sound/soc/atmel/Kconfig | 25 +-

sound/soc/atmel/Makefile | 8 +-

sound/soc/codecs/Kconfig | 5 +

sound/soc/codecs/Makefile | 2 +

sound/soc/codecs/arizona.c | 27 +

sound/soc/codecs/arizona.h | 2 +

sound/soc/codecs/cs4265.c | 10 +-

sound/soc/codecs/max98090.c | 4 +-

sound/soc/codecs/ml26124.c | 58 +-

sound/soc/codecs/pcm1681.c | 2 +-

sound/soc/codecs/rl6347a.c | 128 ++

sound/soc/codecs/rl6347a.h | 32 +

sound/soc/codecs/rt286.c | 97 +-

sound/soc/codecs/rt5640.c | 5 +-

sound/soc/codecs/rt5645.c | 116 +-

sound/soc/codecs/rt5645.h | 5 +

sound/soc/codecs/rt5670.c | 5 +-

sound/soc/codecs/sgtl5000.h | 2 +-

sound/soc/codecs/ssm4567.c | 8 +-

sound/soc/codecs/tas2552.c | 182 ++-

sound/soc/codecs/tas2552.h | 61 +-

sound/soc/codecs/wm2200.c | 2 +-

sound/soc/codecs/wm5102.c | 11 +-

sound/soc/codecs/wm5110.c | 18 +-

sound/soc/codecs/wm8523.c | 26 +

sound/soc/codecs/wm8741.c | 61 +-

sound/soc/codecs/wm8960.c | 2 +-

sound/soc/codecs/wm8995.c | 2 +-

sound/soc/codecs/wm_adsp.c | 248 +++-

sound/soc/codecs/wm_adsp.h | 16 +-

sound/soc/davinci/davinci-mcasp.c | 72 +-

sound/soc/davinci/davinci-mcasp.h | 5 +-

sound/soc/fsl/fsl_ssi.c | 2 +-

sound/soc/fsl/imx-wm8962.c | 2 +-

sound/soc/generic/simple-card.c | 18 +-

sound/soc/intel/Kconfig | 4 +-

sound/soc/intel/Makefile | 2 +-

sound/soc/intel/atom/sst-atom-controls.c | 20 +-

sound/soc/intel/atom/sst/sst.c | 4 +-

sound/soc/intel/atom/sst/sst_drv_interface.c | 16 +-

sound/soc/intel/baytrail/sst-baytrail-ipc.c | 2 +

sound/soc/intel/boards/cht_bsw_max98090_ti.c | 34 +-

sound/soc/intel/common/sst-acpi.c | 2 +-

sound/soc/intel/haswell/sst-haswell-ipc.c | 2 +

sound/soc/mediatek/Kconfig | 30 +

sound/soc/mediatek/Makefile | 5 +

sound/soc/mediatek/mt8173-max98090.c | 222 ++++

sound/soc/mediatek/mt8173-rt5650-rt5676.c | 289 +++++

sound/soc/mediatek/mtk-afe-common.h | 109 ++

sound/soc/mediatek/mtk-afe-pcm.c | 1235 ++++++++++++++++++++

sound/soc/omap/omap-hdmi-audio.c | 12 +-

sound/soc/omap/rx51.c | 10 +-

sound/soc/qcom/Kconfig | 9 +

sound/soc/qcom/Makefile | 2 +

sound/soc/qcom/apq8016_sbc.c | 198 ++++

sound/soc/qcom/storm.c | 26 +-

sound/soc/sh/migor.c | 3 +-

sound/soc/sh/rcar/core.c | 111 +-

sound/soc/sh/rcar/dma.c | 113 +-

sound/soc/sh/rcar/dvc.c | 30 +-

sound/soc/sh/rcar/rsnd.h | 112 +-

sound/soc/sh/rcar/rsrc-card.c | 440 +++----

sound/soc/sh/rcar/src.c | 121 +-

sound/soc/sh/rcar/ssi.c | 96 +-

sound/soc/soc-core.c | 1 +

sound/soc/soc-dapm.c | 35 +-

sound/soc/soc-topology.c | 62 +-

sound/soc/zte/zx296702-i2s.c | 4 +-

sound/soc/zte/zx296702-spdif.c | 4 +-

sound/sparc/amd7930.c | 1 +

sound/usb/card.c | 108 +-

sound/usb/endpoint.c | 10 +-

sound/usb/line6/pcm.c | 9 +-

sound/usb/mixer.c | 112 +-

sound/usb/mixer.h | 2 +

sound/usb/mixer_maps.c | 24 +

sound/usb/mixer_quirks.c | 126 +-

sound/usb/pcm.c | 64 +-

sound/usb/proc.c | 4 +-

sound/usb/quirks-table.h | 68 ++

sound/usb/quirks.c | 1 +

sound/usb/usbaudio.h | 11 +-

187 files changed, 6585 insertions(+), 1989 deletions(-)

create mode 100644 Documentation/devicetree/bindings/sound/mt8173-max98090.txt

create mode 100644 Documentation/devicetree/bindings/sound/mt8173-rt5650-rt5676.txt

create mode 100644 Documentation/devicetree/bindings/sound/mtk-afe-pcm.txt

create mode 100644 Documentation/devicetree/bindings/sound/qcom,apq8016-sbc.txt

create mode 100644 Documentation/devicetree/bindings/sound/rt5645.txt

create mode 100644 include/sound/hdaudio_ext.h

create mode 100644 sound/hda/ext/Makefile

create mode 100644 sound/hda/ext/hdac_ext_bus.c

create mode 100644 sound/hda/ext/hdac_ext_controller.c

create mode 100644 sound/hda/ext/hdac_ext_stream.c

create mode 100644 sound/soc/codecs/rl6347a.c

create mode 100644 sound/soc/codecs/rl6347a.h

create mode 100644 sound/soc/mediatek/Kconfig

create mode 100644 sound/soc/mediatek/Makefile

create mode 100644 sound/soc/mediatek/mt8173-max98090.c

create mode 100644 sound/soc/mediatek/mt8173-rt5650-rt5676.c

create mode 100644 sound/soc/mediatek/mtk-afe-common.h

create mode 100644 sound/soc/mediatek/mtk-afe-pcm.c

create mode 100644 sound/soc/qcom/apq8016_sbc.c

hooks/post-receive

--

ALSA driver repository - compatibility code and drivers, mirrored kernel code

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值