From: Russell King - ARM Linux admin <linux@armlinux.org.uk>
To: Jeremy Linton <jeremy.linton@arm.com>
Cc: netdev@vger.kernel.org, davem@davemloft.net, andrew@lunn.ch,
f.fainelli@gmail.com, hkallweit1@gmail.com,
madalin.bucur@oss.nxp.com, calvin.johnson@oss.nxp.com,
linux-kernel@vger.kernel.org
Subject: Re: [RFC 10/11] net: example acpize xgmac_mdio
Date: Sat, 23 May 2020 19:48:35 +0100 [thread overview]
Message-ID: <20200523184835.GB1551@shell.armlinux.org.uk> (raw)
In-Reply-To: <20200522213059.1535892-11-jeremy.linton@arm.com>
On Fri, May 22, 2020 at 04:30:58PM -0500, Jeremy Linton wrote:
> Signed-off-by: Jeremy Linton <jeremy.linton@arm.com>
> ---
> drivers/net/ethernet/freescale/xgmac_mdio.c | 27 +++++++++++++--------
> 1 file changed, 17 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/net/ethernet/freescale/xgmac_mdio.c b/drivers/net/ethernet/freescale/xgmac_mdio.c
> index c82c85ef5fb3..96ee3bd89983 100644
> --- a/drivers/net/ethernet/freescale/xgmac_mdio.c
> +++ b/drivers/net/ethernet/freescale/xgmac_mdio.c
> @@ -245,14 +245,14 @@ static int xgmac_mdio_probe(struct platform_device *pdev)
> {
> struct device_node *np = pdev->dev.of_node;
> struct mii_bus *bus;
> - struct resource res;
> + struct resource *res;
> struct mdio_fsl_priv *priv;
> int ret;
>
> - ret = of_address_to_resource(np, 0, &res);
> - if (ret) {
> + res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> + if (!res) {
> dev_err(&pdev->dev, "could not obtain address\n");
> - return ret;
> + return -EINVAL;
> }
>
> bus = mdiobus_alloc_size(sizeof(struct mdio_fsl_priv));
> @@ -263,21 +263,21 @@ static int xgmac_mdio_probe(struct platform_device *pdev)
> bus->read = xgmac_mdio_read;
> bus->write = xgmac_mdio_write;
> bus->parent = &pdev->dev;
> - snprintf(bus->id, MII_BUS_ID_SIZE, "%llx", (unsigned long long)res.start);
> + snprintf(bus->id, MII_BUS_ID_SIZE, "%llx", (unsigned long long)res->start);
>
> /* Set the PHY base address */
> priv = bus->priv;
> - priv->mdio_base = of_iomap(np, 0);
> + priv->mdio_base = devm_platform_ioremap_resource(pdev, 0);
> if (!priv->mdio_base) {
I think you need to pay greater attention to the return value of
functions - this is one such case, where
devm_platform_ioremap_resource() does not return NULL on failure.
It uses devm_ioremap_resource(), which is documented in lib/devres.c
to return an error-pointer on failure.
> ret = -ENOMEM;
> goto err_ioremap;
> }
>
> - priv->is_little_endian = of_property_read_bool(pdev->dev.of_node,
> - "little-endian");
> + priv->is_little_endian = device_property_read_bool(&pdev->dev,
> + "little-endian");
>
> - priv->has_a011043 = of_property_read_bool(pdev->dev.of_node,
> - "fsl,erratum-a011043");
> + priv->has_a011043 = device_property_read_bool(&pdev->dev,
> + "fsl,erratum-a011043");
>
> ret = of_mdiobus_register(bus, np);
> if (ret) {
> @@ -320,10 +320,17 @@ static const struct of_device_id xgmac_mdio_match[] = {
> };
> MODULE_DEVICE_TABLE(of, xgmac_mdio_match);
>
> +static const struct acpi_device_id xgmac_acpi_match[] = {
> + { "NXP0006", (kernel_ulong_t)NULL },
> + { },
> +};
> +MODULE_DEVICE_TABLE(acpi, xgmac_acpi_match);
> +
> static struct platform_driver xgmac_mdio_driver = {
> .driver = {
> .name = "fsl-fman_xmdio",
> .of_match_table = xgmac_mdio_match,
> + .acpi_match_table = xgmac_acpi_match,
> },
> .probe = xgmac_mdio_probe,
> .remove = xgmac_mdio_remove,
> --
> 2.26.2
>
>
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC for 0.8m (est. 1762m) line in suburbia: sync at 13.1Mbps down 424kbps up
next prev parent reply other threads:[~2020-05-23 18:48 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-22 21:30 [RFC 00/11] Make C45 autoprobe more robust Jeremy Linton
2020-05-22 21:30 ` [RFC 01/11] net: phy: Don't report success if devices weren't found Jeremy Linton
2020-05-23 18:20 ` Russell King - ARM Linux admin
2020-05-25 2:46 ` Jeremy Linton
2020-05-25 9:45 ` Russell King - ARM Linux admin
2020-05-25 21:02 ` Jeremy Linton
2020-05-25 21:07 ` Russell King - ARM Linux admin
2020-05-25 21:59 ` Jeremy Linton
2020-05-22 21:30 ` [RFC 02/11] net: phy: Simplify MMD device list termination Jeremy Linton
2020-05-23 18:36 ` Russell King - ARM Linux admin
2020-05-25 2:48 ` Jeremy Linton
2020-05-25 8:09 ` Russell King - ARM Linux admin
2020-05-22 21:30 ` [RFC 03/11] net: phy: refactor c45 phy identification sequence Jeremy Linton
2020-05-23 15:28 ` Andrew Lunn
2020-05-23 17:16 ` Jeremy Linton
2020-05-23 17:32 ` Jeremy Linton
2020-05-23 19:12 ` Russell King - ARM Linux admin
2020-05-23 18:30 ` Russell King - ARM Linux admin
2020-05-23 19:51 ` Andrew Lunn
2020-05-23 20:01 ` Russell King - ARM Linux admin
2020-05-25 2:37 ` Jeremy Linton
2020-05-22 21:30 ` [RFC 04/11] net: phy: Handle c22 regs presence better Jeremy Linton
2020-05-23 18:37 ` Russell King - ARM Linux admin
2020-05-25 3:34 ` Jeremy Linton
2020-05-25 9:53 ` Russell King - ARM Linux admin
2020-05-25 10:06 ` Russell King - ARM Linux admin
2020-05-25 21:51 ` Jeremy Linton
2020-05-25 22:01 ` Russell King - ARM Linux admin
2020-05-25 22:22 ` Jeremy Linton
2020-05-25 23:09 ` Russell King - ARM Linux admin
2020-05-25 23:22 ` Jeremy Linton
2020-05-25 23:33 ` Russell King - ARM Linux admin
2020-05-25 23:42 ` Jeremy Linton
2020-05-25 23:46 ` Andrew Lunn
2020-05-25 23:57 ` Russell King - ARM Linux admin
2020-05-25 23:16 ` Jeremy Linton
2020-05-25 23:30 ` Russell King - ARM Linux admin
2020-05-25 22:06 ` Andrew Lunn
2020-05-25 22:17 ` Jeremy Linton
2020-05-25 23:06 ` Andrew Lunn
2020-05-25 23:07 ` Russell King - ARM Linux admin
2020-05-25 23:12 ` Andrew Lunn
2020-05-25 23:46 ` Jeremy Linton
2020-05-25 23:47 ` Andrew Lunn
2020-05-22 21:30 ` [RFC 05/11] net: phy: Scan the entire MMD device space Jeremy Linton
2020-05-22 21:30 ` [RFC 06/11] net: phy: Hoist no phy detected state Jeremy Linton
2020-05-22 21:30 ` [RFC 07/11] net: phy: reset invalid phy reads of 0 back to 0xffffffff Jeremy Linton
2020-05-23 18:44 ` Russell King - ARM Linux admin
2020-05-25 4:20 ` Jeremy Linton
2020-05-25 8:20 ` Russell King - ARM Linux admin
2020-05-22 21:30 ` [RFC 08/11] net: phy: Allow mdio buses to auto-probe c45 devices Jeremy Linton
2020-05-24 14:44 ` Andrew Lunn
2020-05-25 4:28 ` Jeremy Linton
2020-05-25 8:25 ` Russell King - ARM Linux admin
2020-05-25 13:43 ` Andrew Lunn
2020-05-25 22:09 ` Jeremy Linton
2020-05-25 22:41 ` Russell King - ARM Linux admin
2020-05-22 21:30 ` [RFC 09/11] net: phy: Refuse to consider phy_id=0 a valid phy Jeremy Linton
2020-05-22 21:30 ` [RFC 10/11] net: example acpize xgmac_mdio Jeremy Linton
2020-05-23 18:48 ` Russell King - ARM Linux admin [this message]
2020-05-22 21:30 ` [RFC 11/11] net: example xgmac enable extended scanning Jeremy Linton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200523184835.GB1551@shell.armlinux.org.uk \
--to=linux@armlinux.org.uk \
--cc=andrew@lunn.ch \
--cc=calvin.johnson@oss.nxp.com \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=jeremy.linton@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=madalin.bucur@oss.nxp.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).