Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1558778
| Path | csiph.com!feeder.erje.net!2.eu.feeder.erje.net!news.roellig-ltd.de!open-news-network.org!news.albasani.net!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod |
|---|---|
| From | Florian Fainelli <f.fainelli@gmail.com> |
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data |
| Date | Fri, 13 Jan 2017 23:40:01 +0100 |
| Message-ID | <sZiFP-6v3-3@gated-at.bofh.it> (permalink) |
| References | <sYEyJ-7iM-5@gated-at.bofh.it> <sYEyJ-7iM-11@gated-at.bofh.it> <sZaRX-1TQ-15@gated-at.bofh.it> |
| X-Original-To | Andrew Lunn <andrew@lunn.ch> |
| Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=hJlJI6pxS4dp2VpLd0aKrrwsMaqEYYSvVQ0rLB9mASY=; b=I1vh/PQObXHl2yYopAlXGB/wA5vzSKm75p+vtGu4PIbUg5N21wI17X//2NJNbORaVG GLTe4PtsScrvPIaWIGqZD8eSPlXQ+rhTzYmTYAbRBVZZKc0gynV7AC9DfXyGv4v5ECYN ONTFD8jTShQPHEQn3PGAszNxpy+VM396Hs6Y3XAqZ3pdeIfKaySEL+RAcaGTR45pYEpz W+tdJSgbaPCyz92xSjXEL7MWAFWt2q0VbB9mGmw7apF0bDQcGbJ3ZUW8PXcUTRLxAiFL syZbBozgaBYf5L63IvhTzF40ggVAzMPYaCAd2hRkPL329azOpmq+Cjtph2HO2HYHD19Z t6XA== |
| X-Google-Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=hJlJI6pxS4dp2VpLd0aKrrwsMaqEYYSvVQ0rLB9mASY=; b=I6MX+yH3/y/UNmADYuoSoDrAOlc44R7k27+b+F/BU9/A71sgjbNmg4Ia5vdFEbPoR7 olmB9APD1szBgrU3lioG+YB2J7+r6ymxn2UNsh2P8nToirD23jltQnh1T4WvSip72Cf5 jG7ikbpQiK9aW8ZU6zLe0vdgX9lqckdzDVTANEPGVV0JgMlZ80MhavM8KzIC/d5p7pm8 8T49/V9KyqdJk8VQRSbyH5Iw7f69fxbNxg8Nhae/tJvvDkbrM+dsqI3h4vILIiS/IsXY 4NcQoNzIlLzC/58mk0CFvR2GNzTNDhhsqRuOp5dVHWne6IdqPgWK/eLYg9hQJZtDT7EQ Wz8A== |
| X-Gm-Message-State | AIkVDXLqwyGCDLcG/0LvOq5icc3xHxp0Hubyvb4H1hjI1YTd+haP1J/xrsC+mM2vi0JKeA== |
| X-Received | by 10.98.157.83 with SMTP id i80mr25219830pfd.177.1484347156109; Fri, 13 Jan 2017 14:39:16 -0800 (PST) |
| User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8 |
| Content-Transfer-Encoding | 7bit |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 63 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | netdev@vger.kernel.org, Jason Cooper <jason@lakedaemon.net>, Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>, Gregory Clement <gregory.clement@free-electrons.com>, Russell King <linux@armlinux.org.uk>, Vivien Didelot <vivien.didelot@savoirfairelinux.com>, "David S. Miller" <davem@davemloft.net>, "moderated list:ARM SUB-ARCHITECTURES" <linux-arm-kernel@lists.infradead.org>, open list <linux-kernel@vger.kernel.org>, gregkh@linuxfoundation.org |
| X-Original-Date | Fri, 13 Jan 2017 14:39:13 -0800 |
| X-Original-Message-ID | <80ff1fb8-b59e-995c-65c1-cf2460352a70@gmail.com> |
| X-Original-References | <20170112034121.27697-1-f.fainelli@gmail.com> <20170112034121.27697-9-f.fainelli@gmail.com> <20170113141110.GI10203@lunn.ch> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1558778 |
Show key headers only | View raw
On 01/13/2017 06:11 AM, Andrew Lunn wrote:
>> static int _dsa_register_switch(struct dsa_switch *ds, struct device *dev)
>> {
>> + struct dsa_chip_data *pdata = dev->platform_data;
>> struct device_node *np = dev->of_node;
>> struct dsa_switch_tree *dst;
>> struct device_node *ports;
>> u32 tree, index;
>> int i, err;
>>
>> - err = dsa_parse_member_dn(np, &tree, &index);
>> - if (err)
>> - return err;
>> + if (np) {
>> + err = dsa_parse_member_dn(np, &tree, &index);
>> + if (err)
>> + return err;
>>
>> - ports = dsa_get_ports(ds, np);
>> - if (IS_ERR(ports))
>> - return PTR_ERR(ports);
>> + ports = dsa_get_ports(ds, np);
>> + if (IS_ERR(ports))
>> + return PTR_ERR(ports);
>>
>> - err = dsa_parse_ports_dn(ports, ds);
>> - if (err)
>> - return err;
>> + err = dsa_parse_ports_dn(ports, ds);
>> + if (err)
>> + return err;
>> + } else {
>> + err = dsa_parse_member(pdata, &tree, &index);
>
Hello Andrew,
> Hi Florian
>
> Maybe it is hiding, but i don't see anywhere you check that pdata !=
> NULL.
You are right, there is not such a check, it should probably be added
early on.
>
> At least for x86 platforms, i don't expect we are booting using
> platform data like ARM systems used to do. I think it is more likely a
> glue module will be loaded. It looks up the MDIO bus and appends a
> platform data to an MDIO device. The switch driver then needs to load
> and use the platform data. But if things happen in a different order,
> it could be the switch driver probes before the glue driver, meaning
> pdata is NULL.
That's very valid, I will fix this, thanks!
>
> Do we even want to return -EPROBE_DEFERED?
I was trying to exercise that code path a little bit, but could not
quite make sense of what I was seeing, let me try again with more tracing.
--
Florian
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
[PATCH net-next v2 08/10] net: dsa: Add support for platform data Florian Fainelli <f.fainelli@gmail.com> - 2017-01-12 04:50 +0100
Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data Andrew Lunn <andrew@lunn.ch> - 2017-01-13 15:10 +0100
Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data Florian Fainelli <f.fainelli@gmail.com> - 2017-01-13 23:40 +0100
Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data Florian Fainelli <f.fainelli@gmail.com> - 2017-01-14 20:20 +0100
Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data Andrew Lunn <andrew@lunn.ch> - 2017-01-13 15:20 +0100
Re: [PATCH net-next v2 08/10] net: dsa: Add support for platform data Florian Fainelli <f.fainelli@gmail.com> - 2017-01-13 23:40 +0100
csiph-web