[U-Boot] [PATCH] net: gmac_rockchip: Add support for pinctrl
Dr. Philipp Tomsich
philipp.tomsich at theobroma-systems.com
Tue Jul 11 13:44:52 UTC 2017
> On 07 Jul 2017, at 05:58, Simon Glass <sjg at chromium.org> wrote:
>
> +Philipp
>
> Hi Romain,
>
> On 3 July 2017 at 01:13, Romain Perier <romain.perier at collabora.com> wrote:
>> Currently, selecting state simple is done by the device driver model,
>> prior probing the driver. The problem is that it's done and called on
>> the pinctrl node with "gmac" as the "periph" struct udevice *. So
>> pinctrl-rk3288 is looking for an interrupt property that is not found,
>> and then gmac_config is never called.
>>
>> This commits toggles the pinctrl on the right node from the probe
>> function of the driver.
>
> Is it possible to fix this while still using driver-model automatic pinctrl?
I agree that we need to get a handle on the underlying issue and
solve that instead of putting a band-aid on.
>> Signed-off-by: Romain Perier <romain.perier at collabora.com>
>> ---
>> drivers/net/gmac_rockchip.c | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/net/gmac_rockchip.c b/drivers/net/gmac_rockchip.c
>> index 5e2ca76302..8581026b4a 100644
>> --- a/drivers/net/gmac_rockchip.c
>> +++ b/drivers/net/gmac_rockchip.c
>> @@ -160,6 +160,10 @@ static int gmac_rockchip_probe(struct udevice *dev)
>> struct clk clk;
>> int ret;
>>
>> + ret = pinctrl_select_state(dev, "simple");
>> + if (ret)
>> + return ret;
>> +
>> ret = clk_get_by_index(dev, 0, &clk);
>> if (ret)
>> return ret;
>> --
>> 2.11.0
>>
>
> Regards,
> Simon
More information about the U-Boot
mailing list