From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [PATCH] HDA - add "Independent HP" switch for ad1988 Date: Thu, 22 Sep 2011 12:44:13 +0200 Message-ID: References: Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15]) by alsa0.perex.cz (Postfix) with ESMTP id 9F48A1038EA for ; Thu, 22 Sep 2011 12:44:14 +0200 (CEST) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: alsa-devel-bounces@alsa-project.org Errors-To: alsa-devel-bounces@alsa-project.org To: Raymond Yau Cc: ALSA Development Mailing List List-Id: alsa-devel@alsa-project.org QXQgVGh1LCAyMiBTZXAgMjAxMSAxMDozMjoyNCArMDgwMCwKUmF5bW9uZCBZYXUgd3JvdGU6Cj4g Cj4gMjAxMS85LzIxIFRha2FzaGkgSXdhaSA8dGl3YWlAc3VzZS5kZT46Cj4gPiBBdCBTdW4sIDE4 IFNlcCAyMDExIDA3OjE4OjI4ICswODAwLAo+ID4gUmF5bW9uZCBZYXUgd3JvdGU6Cj4gPj4KPiA+ PiBBZGQgIkluZGVwZW5kZW50IEhQIiBzd2l0Y2ggZm9yIGFkMTk4OAo+ID4+Cj4gPj4gLSBhZGQg cGxheWJhY2sgZGV2aWNlIDIgIkFEMTk4OCBIUCIgZm9yIDcuMSsyIG11bHRpIHN0cmVhbWluZyBw bGF5YmFjawo+ID4+IC0gYWRkICJJbmRlcGVuZGVudCBIUCIgc3dpdGNoIHRvIGVuYWJsZS9kaXNh YmxlIHRoZSBmZWF0dXJlCj4gPj4gwqAgc3dpdGNoIGlzIGluYWN0aXZlIGFuZCB3cml0ZSBwcm90 ZWN0IHdoZW4gZGV2aWNlIDAgb3IgZGV2aWNlIDIgaXMgb3BlbmVkCj4gPj4gLSByZW1vdmUgNnN0 YWNrLWRpZy1mcCBtb2RlbAo+ID4KPiA+IEFueSByYXRpb25hbGUgdG8gcmVtb3ZlIHRoaXMgbW9k ZWw/Cj4gPiBJJ20gZmluZSB3aXRoIHRoZSByZW1vdmFsLCBidXQgbmVlZCB0byBrbm93IHRoZSBy ZWFzb24uCj4gPgo+IAo+IEFmdGVyIHRoZSBwcmV2aW91cyBwYXRjaAo+IAo+ICJBZGQgSGVhZHBo b25lIFBsYXliYWNrIFZvbHVtZSIgZm9yIGFkMTk4OAo+IC11c2UgREFDMCBpbnN0ZWFkIG9mIERB QzEgZm9yIFBvcnQgLUEgaGVhZHBob25lCj4gCj4gQWxsIG1vZGVscyBhbHJlYWR5IGhhdmUgYSAi SGVhZHBob25lIFBsYXliYWNrIFZvbHVtZSIgY29udHJvbCBieSB1c2luZwo+IERBQzAgbm9kZSAw eDMgaW5zdGVhZCBvZiBzaGFyaW5nIERBQzEgbm9kZSAweDQgKEhEQV9GUk9OVCkgd2l0aCBQb3J0 IEIKPiAtIGdyZWVuIGphY2sKPiAKPiBpbnQgc25kX2hkYV9tdWx0aV9vdXRfYW5hbG9nX3ByZXBh cmUoc3RydWN0IGhkYV9jb2RlYyAqY29kZWMsCj4gCQkJCSAgICAgc3RydWN0IGhkYV9tdWx0aV9v dXQgKm1vdXQsCj4gCQkJCSAgICAgdW5zaWduZWQgaW50IHN0cmVhbV90YWcsCj4gCQkJCSAgICAg dW5zaWduZWQgaW50IGZvcm1hdCwKPiAJCQkJICAgICBzdHJ1Y3Qgc25kX3BjbV9zdWJzdHJlYW0g KnN1YnN0cmVhbSkKPiAJaWYgKCFtb3V0LT5ub19zaGFyZV9zdHJlYW0gJiYKPiAJICAgIG1vdXQt PmhwX25pZCAmJiBtb3V0LT5ocF9uaWQgIT0gbmlkc1tIREFfRlJPTlRdKQo+IAkJLyogaGVhZHBo b25lIG91dCB3aWxsIGp1c3QgZGVjb2RlIGZyb250IGxlZnQvcmlnaHQgKHN0ZXJlbykgKi8KPiAJ CXNuZF9oZGFfY29kZWNfc2V0dXBfc3RyZWFtKGNvZGVjLCBtb3V0LT5ocF9uaWQsIHN0cmVhbV90 YWcsCj4gCQkJCQkgICAwLCBmb3JtYXQpOwo+IAo+IEluIHRoaXMgcGF0Y2gsICBwbGF5YmFjayBk ZXZpY2UgMiAoQUQxOTh4IEhlYWRwaG9uZSkgaXMgYWRkZWQgdG8gYWxsCj4gbW9kZWxzIG9mIGFk MTk4OC9hZDE5ODkgIHNvIHRoZXJlIGlzIG5vIG5lZWQgdG8ga2VlcCB0aGUgbW9kZWwKPiAiNnN0 YWNrLWRpZy1mcCIKCk9LLCB0aGVuIHBsZWFzZSBkZXNjcmliZSB0aGlzIHJlYXNvbiBzaG9ydGx5 IGluIHRoZSBsb2csIHRvby4KCj4gRXNwZWNpYWxseSB3aGVuIGhkYSByZWNvbmZpZyBpcyBzdGls bCAiZXhwZXJpZW1lbnRhbCIKPiAKPiBUaGUgZHJhd2JhY2sgb2YgdXNpbmcgaGRhIHJlY29uZmln IG9yIHJtbW9kL2luc21vZCB0byBjaGFuZ2UgdGhlIG1vZGVsIGFyZQo+IDEpIHJlcXVpcmUgcm9v dCBwcml2aWxlZ2UKPiAyKSB0aGUgdm9sdW1lIGxldmVsIG9mIHRoZSBjb250cm9scyBhcmUgcmUt aW5pdGlhbGlzZWQgYnkgaW5pdCB2ZXJicwo+IG9mIHRoZSBtb2RlbAoKWWVzLCB0aGUgcmVjb25m aWd1cmF0aW9uIGlzIGZvciBkZXZlbG9wbWVudCwgbm90IGZvciB0aGUgcHJvZHVjdGlvbgp1c2Fn ZS4KCgo+IEkgZG9uJ3QgbGlrZSAiNnN0YWNrLWRpZy1mcCIgbW9kZWwgYmVjYXVzZSAiNnN0YWNr LWRpZyIgY3JlYXRlIGEKPiBkaWdpdGFsIGlucHV0IGRldmljZSB3aGljaCBpcyBub3QgcHJlc2Vu dCBpbiBteSBtb3RoZXJib2FyZC4KPiAKPiAKPiA+IEFsc28sIHJlZ2FyZGluZyB0aGUgcGF0Y2g6 Cj4gPgo+ID4+IEBAIC0zMDIsNiArMzA0LDcxIEBAIHN0YXRpYyBpbnQgYWQxOTh4X2NoZWNrX3Bv d2VyX3N0YXR1cyhzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywgaGRhX25pZF90IG5pZCkKPiA+PiDC oH0KPiA+PiDCoCNlbmRpZgo+ID4+Cj4gPj4gK3N0YXRpYyB2b2lkIGFjdGl2YXRlX2N0bChzdHJ1 Y3QgaGRhX2NvZGVjICpjb2RlYywgY29uc3QgY2hhciAqbmFtZSwgaW50IGFjdGl2ZSkKPiA+PiAr ewo+ID4+ICsgwqAgwqAgc3RydWN0IHNuZF9rY29udHJvbCAqY3RsID0gc25kX2hkYV9maW5kX21p eGVyX2N0bChjb2RlYywgbmFtZSk7Cj4gPj4gKyDCoCDCoCBpZiAoY3RsKSB7Cj4gPj4gKyDCoCDC oCDCoCDCoCDCoCDCoCBjdGwtPnZkWzBdLmFjY2VzcyAmPSB+U05EUlZfQ1RMX0VMRU1fQUNDRVNT X0lOQUNUSVZFOwo+ID4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgY3RsLT52ZFswXS5hY2Nlc3MgfD0g YWN0aXZlID8gMDpTTkRSVl9DVExfRUxFTV9BQ0NFU1NfSU5BQ1RJVkU7Cj4gPj4gKyDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoGN0bC0+dmRbMF0uYWNjZXNzICY9IH5TTkRSVl9DVExfRUxFTV9BQ0NF U1NfV1JJVEU7Cj4gPgo+ID4gUGxlYXNlIHVzZSB0YWJzLgo+IAo+IE9LCj4gCj4gPgo+ID4+ICsg wqAgwqAgwqAgwqAgwqAgwqAgY3RsLT52ZFswXS5hY2Nlc3MgfD0gYWN0aXZlID8gU05EUlZfQ1RM X0VMRU1fQUNDRVNTX1dSSVRFOjA7Cj4gPj4gKyDCoCDCoCDCoCDCoCDCoCDCoCBzbmRfY3RsX25v dGlmeShjb2RlYy0+YnVzLT5jYXJkLAo+ID4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqBTTkRSVl9DVExfRVZFTlRfTUFTS19JTkZPLCAmY3RsLT5pZCk7Cj4gPj4g KyDCoCDCoCB9Cj4gPj4gK30KPiA+PiArCj4gPj4gKyBzdGF0aWMgdm9pZCBzZXRfc3RyZWFtX2Fj dGl2ZShzdHJ1Y3QgaGRhX2NvZGVjICpjb2RlYywgYm9vbCBhY3RpdmUpCj4gPj4gK3sKPiA+PiAr IMKgIMKgIHN0cnVjdCBhZDE5OHhfc3BlYyAqc3BlYyA9IGNvZGVjLT5zcGVjOwo+ID4+ICsgwqAg wqAgaWYgKGFjdGl2ZSkKPiA+PiArIMKgIMKgIMKgIMKgIMKgIMKgIHNwZWMtPm51bV9hY3RpdmVf c3RyZWFtcysrOwo+ID4+ICsgwqAgwqAgZWxzZQo+ID4+ICsgwqAgwqAgwqAgwqAgwqAgwqAgc3Bl Yy0+bnVtX2FjdGl2ZV9zdHJlYW1zLS07Cj4gPj4gKyDCoCDCoCBhY3RpdmF0ZV9jdGwoY29kZWMs ICJJbmRlcGVuZGVudCBIUCIsIHNwZWMtPm51bV9hY3RpdmVfc3RyZWFtcyA9PSAwKTsKPiA+PiAr IMKgIMKgIHByaW50ayhLRVJOX0lORk8gInNldCBzdHJlYW0gYWN0aXZlIDogYWN0aXZlIHN0cmVh bSDCoCVkIFxuIiwgc3BlYy0+bnVtX2FjdGl2ZV9zdHJlYW1zKTsKPiA+Cj4gPiBBdm9pZCBkZWJ1 ZyBwcmludHMgaW4gdGhlIGZpbmFsIGNvZGUuCj4gPiBJZiBhbnksIHVzZSBzbmRfcHJpbnRkZCgp IG9yIHN1Y2guCj4gPgo+IAo+IEkgd2lsbCByZW1vdmUgdGhpcyBzdGF0ZW1lbnQgYXMgSSBhbHJl YWR5IGtub3cgIHRoZSBjYXVzZSBvZiAgY29kZWMKPiBjbGVhbnVwIGZ1bmN0aW9uIGlzIGNhbGxl ZCB0d2ljZSBldmVuIGluIG5vbiBzdGlja3kgcGNtIG1vZGUKPiAKPiA+PiArfQo+ID4gKwo+ID4g K3N0YXRpYyBpbnQgYWQxOTg4X2luZGVwZW5kZW50X2hwX2luZm8oc3RydWN0IHNuZF9rY29udHJv bCAqa2NvbnRyb2wsCj4gPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgc3RydWN0IHNuZF9jdGxfZWxlbV9pbmZvICp1aW5mbykKPiA+ICt7Cj4gPiAr IMKgIMKgIMKgIHN0YXRpYyBjb25zdCBjaGFyICogY29uc3QgdGV4dHNbXSA9IHsgIk9GRiIsICJP TiIsIE5VTEx9Owo+ID4gKyDCoCDCoCDCoCBpbnQgaW5kZXg7Cj4gPiArIMKgIMKgIMKgIHVpbmZv LT50eXBlID0gU05EUlZfQ1RMX0VMRU1fVFlQRV9FTlVNRVJBVEVEOwo+ID4gKyDCoCDCoCDCoCB1 aW5mby0+Y291bnQgPSAxOwo+ID4gKyDCoCDCoCDCoCB1aW5mby0+dmFsdWUuZW51bWVyYXRlZC5p dGVtcyA9IDI7Cj4gPiArIMKgIMKgIMKgIGluZGV4ID0gdWluZm8tPnZhbHVlLmVudW1lcmF0ZWQu aXRlbTsKPiA+ICsgwqAgwqAgwqAgaWYgKGluZGV4ID49IDIpCj4gPiArIMKgIMKgIMKgIMKgIMKg IMKgIMKgIGluZGV4ID0gMTsKPiA+ICsgwqAgwqAgwqAgc3RyY3B5KHVpbmZvLT52YWx1ZS5lbnVt ZXJhdGVkLm5hbWUsIHRleHRzW2luZGV4XSk7Cj4gPiArIMKgIMKgIMKgIHJldHVybiAwOwo+ID4g K30KPiA+ICsKPiA+ICtzdGF0aWMgaW50IGFkMTk4OF9pbmRlcGVuZGVudF9ocF9nZXQoc3RydWN0 IHNuZF9rY29udHJvbCAqa2NvbnRyb2wsCj4gPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIHN0cnVjdCBzbmRfY3RsX2VsZW1fdmFsdWUgKnVjb250cm9s KQo+ID4gK3sKPiA+ICsgwqAgwqAgwqAgc3RydWN0IGhkYV9jb2RlYyAqY29kZWMgPSBzbmRfa2Nv bnRyb2xfY2hpcChrY29udHJvbCk7Cj4gPiArIMKgIMKgIMKgIHN0cnVjdCBhZDE5OHhfc3BlYyAq c3BlYyA9IGNvZGVjLT5zcGVjOwo+ID4gKyDCoCDCoCDCoCB1Y29udHJvbC0+dmFsdWUuZW51bWVy YXRlZC5pdGVtWzBdID0gc3BlYy0+aW5kZXBlbmRlbnRfaHA7Cj4gPiArIMKgIMKgIMKgIHJldHVy biAwOwo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgaW50IGFkMTk4OF9pbmRlcGVuZGVudF9ocF9w dXQoc3RydWN0IHNuZF9rY29udHJvbCAqa2NvbnRyb2wsCj4gPiArIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIHN0cnVjdCBzbmRfY3RsX2VsZW1fdmFsdWUg KnVjb250cm9sKQo+ID4gK3sKPiA+ICsgwqAgwqAgwqAgc3RydWN0IGhkYV9jb2RlYyAqY29kZWMg PSBzbmRfa2NvbnRyb2xfY2hpcChrY29udHJvbCk7Cj4gPiArIMKgIMKgIMKgIHN0cnVjdCBhZDE5 OHhfc3BlYyAqc3BlYyA9IGNvZGVjLT5zcGVjOwo+ID4gKyDCoCDCoCDCoCB1bnNpZ25lZCBpbnQg c2VsZWN0ID0gdWNvbnRyb2wtPnZhbHVlLmVudW1lcmF0ZWQuaXRlbVswXTsKPiA+ICsgwqAgwqAg wqAgaWYgKHNwZWMtPmluZGVwZW5kZW50X2hwICE9IHNlbGVjdCkgewo+ID4gKyDCoCDCoCDCoCDC oCDCoCDCoCDCoCBzcGVjLT5pbmRlcGVuZGVudF9ocCA9IHNlbGVjdDsKPiA+ICsgwqAgwqAgwqAg wqAgwqAgwqAgwqAgaWYgKHNwZWMtPmluZGVwZW5kZW50X2hwKQo+ID4gKyDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCBzcGVjLT5tdWx0aW91dC5ocF9uaWQgPSAwOwo+ID4gKyDCoCDC oCDCoCDCoCDCoCDCoCDCoCBlbHNlCj4gPiArIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIHNwZWMtPm11bHRpb3V0LmhwX25pZCA9IHNwZWMtPmFsdF9kYWNfbmlkWzBdOwo+ID4gKyDC oCDCoCDCoCDCoCDCoCDCoCDCoCByZXR1cm4gMTsKPiA+ICsgwqAgwqAgwqAgfQo+ID4gKyDCoCDC oCDCoCByZXR1cm4gMDsKPiA+ICt9Cj4gPgo+ID4gQ2hhbmdpbmcgc3BlYy0+bXVsdGlvdXQuaHBf bmlkIGR5bmFtaWNhbGx5IGhlcmUgaXMgcmFjeS4gwqBJZiB0aGUgdmFsdWUKPiA+IGlzIGNoYW5n ZWQgZHVyaW5nIHRoZSBQQ00gc3RyZWFtIGlzIG9wZW5lZCwgdGhlIEhQLXNldHVwIG1pZ2h0IGJl IGtlcHQKPiA+IGluY29uc2lzdGVudCBhdCBjbG9zZS4KPiA+Cj4gCj4gRG8geW91IG1lYW4gc2V0 X3N0cmVhbV9hY3RpdmUoKSBjaGVjayBpbiBhZDE5OHhfcGxheWJhY2tfcGNtX29wZW4oKSwKPiBh ZDE5ODhfYWx0X3BsYXliYWNrX3BjbV9vcGVuKCkgLCBhZDE5OHhfcGxheWJhY2tfcGNtX2Nsb3Nl KCkgYW5kCj4gYWQxOTg4X2FsdF9wbGF5YmFja19wY21fY2xvc2UoKQo+IAo+ICAgY3RsLT52ZFsw XS5hY2Nlc3MgJj0gflNORFJWX0NUTF9FTEVNX0FDQ0VTU19XUklURTsKPiAKPiBzdGlsbCBub3Qg ZW5vdWdoIHRvIHByb3RlY3QgdGhlIHZhbHVlIG9mIHRoZSBjb250cm9sCgpBaCwgT0ssIHRoYXQn bGwgcHJvdGVjdC4gIEJ1dCBpdCBtZWFucyB0aGF0IHlvdSBjYW5ub3QgY2hhbmdlIHRoZQp2YWx1 ZSBkdXJpbmcgdGhlIFBDTSBzdHJlYW0gaXMgb3BlbmVkLiAgSXQncyBhIGRyYXdiYWNrLCB0b28u CkJ1dCwgSSBkb24ndCBtaW5kIGluIGVpdGhlciB3YXkuICBNYXliZSB0aGUgY3VycmVudCBwcm90 ZWN0aW9uIGlzCmVhc3kgZW5vdWdoLgoKClRha2FzaGkKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KQWxzYS1kZXZlbCBtYWlsaW5nIGxpc3QKQWxzYS1kZXZl bEBhbHNhLXByb2plY3Qub3JnCmh0dHA6Ly9tYWlsbWFuLmFsc2EtcHJvamVjdC5vcmcvbWFpbG1h bi9saXN0aW5mby9hbHNhLWRldmVsCg==