[Linaro-acpi] [RFC PATCH for Juno 1/2] net: smsc911x add support for probing from ACPI
From: catalin.marinas@arm.com (Catalin Marinas)
Date: 2014-09-15 09:25:07
Also in:
linux-acpi, lkml
On Mon, Sep 15, 2014 at 05:08:44AM +0100, Grant Likely wrote:
On Mon, 1 Sep 2014 16:28:54 +0100, Graeme Gregory [off-list ref] wrote:quoted
On Mon, Sep 01, 2014 at 05:17:51PM +0200, Arnd Bergmann wrote:quoted
On Monday 01 September 2014 23:06:00 Hanjun Guo wrote:quoted
+#ifdef CONFIG_ACPI +/* Configure some sensible defaults for ACPI mode */ +static int smsc911x_probe_config_acpi(struct smsc911x_platform_config *config, + acpi_handle *ahandle) +{ + if (!ahandle) + return -ENOSYS; + + config->phy_interface = PHY_INTERFACE_MODE_MII;Please remove the #ifdef and use if (!IS_ENABLED(CONFIG_ACPI) || !ahandle) to check for ACPI support. This should result in the same object code in all cases, but give better compile-time coverage when ACPI is disabled.struct acpi_handle does not exist in the case !CONFIG_ACPIquoted
Also, -ENOSYS is probably the wrong return value. I think you mean -ENXIO.Yes that would make sense thanks. Not sure if we are planning to actually upstream this patch, I guess it depends if ARM start shipping Junos with the ACPI tables loaded on them.I think we do want this upstreamed. Juno is intended to be a readily available reference platform, regardless of the firmware loaded when shipped. There will be users who use it as a test platform for ACPI development.
The patches for Juno are not intrusive. The only problem I have is giving the wrong example on how to deal with the platform-specific device information like this patch. I would much prefer to use _DSD (once we agree on how to do this) than hard-coding information based on the ACPI device id (you would need one for each SoC). I don't think we have reached an agreement yet: https://lkml.kernel.org/g/4816592.tj3on6vUaC at wuerfel -- Catalin