Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1376870

Re: [PATCH RFT 2/2] macb: kill PHY reset code

From Nicolas Ferre <nicolas.ferre@atmel.com>
Newsgroups linux.kernel
Subject Re: [PATCH RFT 2/2] macb: kill PHY reset code
Date 2016-04-12 16:50 +0200
Message-ID <rn7NE-tV-17@gated-at.bofh.it> (permalink)
References <rlN4B-2Mf-3@gated-at.bofh.it> <rlN4B-2Mf-1@gated-at.bofh.it> <rmzLY-6Ud-1@gated-at.bofh.it> <rn2NX-4Qf-11@gated-at.bofh.it> <rn6RA-8dh-7@gated-at.bofh.it>
Organization atmel

Show all headers | View raw


Le 12/04/2016 15:40, Andrew Lunn a écrit :
> On Tue, Apr 12, 2016 at 11:22:10AM +0200, Nicolas Ferre wrote:
>> Le 11/04/2016 04:28, Andrew Lunn a écrit :
>>> On Sat, Apr 09, 2016 at 01:25:03AM +0300, Sergei Shtylyov wrote:
>>>> With  the 'phylib' now  being aware of  the "reset-gpios" PHY node property,
>>>> there should be no need to frob the PHY reset in this  driver anymore...
>>>>
>>>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>>>>
>>>> ---
>>>>  drivers/net/ethernet/cadence/macb.c |   17 -----------------
>>>>  drivers/net/ethernet/cadence/macb.h |    1 -
>>>>  2 files changed, 18 deletions(-)
>>>>
>>>> Index: net-next/drivers/net/ethernet/cadence/macb.c
>>>> ===================================================================
>>>> --- net-next.orig/drivers/net/ethernet/cadence/macb.c
>>>> +++ net-next/drivers/net/ethernet/cadence/macb.c
>>>> @@ -2884,7 +2884,6 @@ static int macb_probe(struct platform_de
>>>>  					      = macb_clk_init;
>>>>  	int (*init)(struct platform_device *) = macb_init;
>>>>  	struct device_node *np = pdev->dev.of_node;
>>>> -	struct device_node *phy_node;
>>>>  	const struct macb_config *macb_config = NULL;
>>>>  	struct clk *pclk, *hclk = NULL, *tx_clk = NULL;
>>>>  	unsigned int queue_mask, num_queues;
>>>> @@ -2977,18 +2976,6 @@ static int macb_probe(struct platform_de
>>>>  	else
>>>>  		macb_get_hwaddr(bp);
>>>>  
>>>> -	/* Power up the PHY if there is a GPIO reset */
>>>> -	phy_node =  of_get_next_available_child(np, NULL);
>>>> -	if (phy_node) {
>>>> -		int gpio = of_get_named_gpio(phy_node, "reset-gpios", 0);
>>>> -
>>>> -		if (gpio_is_valid(gpio)) {
>>>> -			bp->reset_gpio = gpio_to_desc(gpio);
>>>> -			gpiod_direction_output(bp->reset_gpio, 1);
>>>
>>> Hi Sergei
>>>
>>> The code you are deleting would of ignored the flags in the gpio
>> I don't parse this.
>>
>> The code deleted does take the flag into account. And the DT property
>> associated to it seems correct to me (I mean, with proper flag
>> specification).
> 
> Hi Nicolas
>  
> of_get_named_gpio() does not do anything with the flags. So for
> example,
> 
> 			gpios = <&gpio0 12 GPIO_ACTIVE_LOW>;
> 
> the GPIO_ACTIVE_LOW would be ignored. If you want the flags to be
> respected, you need to use the gpiod API for all calls, in particular,
> you need to use something which calls gpiod_get_index(), since that is
> the only function to call gpiod_parse_flags() to translate
> GPIO_ACTIVE_LOW into a flag within the gpio descriptor.

Ok, I remember what confused me now: this code, used to be something around:
devm_gpiod_get_optional(&bp->pdev->dev, "phy-reset", GPIOD_OUT_HIGH);
before it has been changed to the chunk above... So, yes, the DT flag
was not handled anyway...

Sorry for the noise and thanks for the clarification.

Bye,
-- 
Nicolas Ferre

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH RFT 2/2] macb: kill PHY reset code Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-04-09 00:30 +0200
  Re: [PATCH RFT 2/2] macb: kill PHY reset code Andrew Lunn <andrew@lunn.ch> - 2016-04-11 04:30 +0200
    Re: [PATCH RFT 2/2] macb: kill PHY reset code Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-04-11 19:50 +0200
      Re: [PATCH RFT 2/2] macb: kill PHY reset code Andrew Lunn <andrew@lunn.ch> - 2016-04-11 20:20 +0200
        Re: [PATCH RFT 2/2] macb: kill PHY reset code Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-04-11 20:40 +0200
          Re: [PATCH RFT 2/2] macb: kill PHY reset code Andrew Lunn <andrew@lunn.ch> - 2016-04-11 21:00 +0200
            Re: [PATCH RFT 2/2] macb: kill PHY reset code Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-04-11 21:10 +0200
            Re: [PATCH RFT 2/2] macb: kill PHY reset code Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-04-12 11:30 +0200
    Re: [PATCH RFT 2/2] macb: kill PHY reset code Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-04-12 11:30 +0200
      Re: [PATCH RFT 2/2] macb: kill PHY reset code Andrew Lunn <andrew@lunn.ch> - 2016-04-12 15:50 +0200
        Re: [PATCH RFT 2/2] macb: kill PHY reset code Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-04-12 16:50 +0200
      Re: [PATCH RFT 2/2] macb: kill PHY reset code Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> - 2016-04-12 16:00 +0200
        Re: [PATCH RFT 2/2] macb: kill PHY reset code Nicolas Ferre <nicolas.ferre@atmel.com> - 2016-04-12 17:00 +0200

csiph-web