On 2016-03-29 05:25, Arnd Bergmann wrote:
On Monday 28 March 2016 09:35:22 Sinan Kaya wrote:
The code is using the compatible DT string to associate a reset driver
with
the actual device itself. The compatible string does not exist on ACPI
based systems. HID is the unique identifier for a device driver
instead.
The change allows a driver to register with DT compatible string or
ACPI
HID and then match the object with one of these conditions.
Rules for loading the reset driver are as follow:
- ACPI HID needs match for ACPI systems
- DT compat needs to match for OF systems
Tested-by: Eric Auger <eric.auger@xxxxxxxxxx> (device tree only)
Tested-by: Shanker Donthineni <shankerd@xxxxxxxxxxxxxx> (ACPI only)
Signed-off-by: Sinan Kaya <okaya@xxxxxxxxxxxxxx>
This really feels wrong for two reasons:
* device assignment of non-PCI devices is really special and doesn't
seem to make sense on general purpose servers that would be the
target
for ACPI normally
Why is it special? Acpi is not equal to pci. Platform devices are first
class devices too. Especially, _cls was introduced for this reason.
* If there is indeed a requirement for ACPI to handle something like
this,
it should be part of the ACPI spec, with a well-defined method of
handling
reset, rather than having to add a device specific hack for each
device separately.
I see. Normally, this is done by calling _rst method. AFAIK, Linux
doesn’t support _rst. I can check its presence and call it if it is
there.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html