Re: [alsa-devel] Fwd: [PATCH 1/1] SPI : spi-pxa2xx : fix spi init of WM510205 codec via ACPI (resend)

Pierre-Louis Bossart
2015-06-26T11:46:50Z

On 6/25/15 5:44 PM, Charles Keepax wrote:
> On Thu, Jun 25, 2015 at 03:58:53PM +0100, Mark Brown wrote:
>> On Thu, Jun 25, 2015 at 02:18:23PM +0200, Christian Hartmann wrote:
>>
>>> Name (_HID, "WM510205") // _HID: Hardware ID
>>> Name (_CID, "WM510205") // _CID: Compatible ID
>>> Name (_DDN, "Wolfson Microelectronics Audio WM5102")
>>
>> Separately to the chip select discussion one thing to highlight here is
>> that for some reason the BIOS is listing the device as "WM510205" rather
>> than "WM5102" - do those extra numbers mean anything and does this mean
>> that WM50120[1-4] and possibly higher numbers are also valid?
>
> From my brief discussions with the Windows guys here on this
> basically those last two digits are being used to inform the
> Windows driver of use-case setup. So here it will set things up
> for whatever the Window's driver considers to be setup "5".
>
> I think from the Linux side we can safely ignore those last two
> digits. I expect that all systems of the same make and model
> would report the same last two digits but that it might change
> between models if the Windows driver is expected to something
> differently for that model.

Here's the summary of what a valid _HID should look like. It took me a
couple of days to gather the rules from different sources, I hope it
helps others figure things out.
-Pierre

_HID must be one of these forms:
- "AAA####” or EisaID(“AAA####”) where A is an uppercase letter and # is
a hex digit. The AAA PNP Vendor ID consists of 3 characters, verified on
http://www.uefi.org/sites/default/files/resources/PNPID_List.pdf

- "ACPI####” where # is a hex digit

- "NNNN####” where N is an uppercase letter or decimal digit (0-9) and #
is a hex digit (ACPI 5.0).
The NNNN Vendor ID can be
--> a PCI ID: 4 hex digits (0-9 and A-F), verified on
https://www.pcisig.com/membership/vid_search/
--> or an ACPI ID: 4 characters, each character being either an
uppercase letter (A-Z) or a numeral (0-9), verified on