RE: [PATCH 15/15] ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle

2016-08-01 Thread Peter Chen
 
>>
>>> On Wednesday 27 July 2016 07:50 AM, Peter Chen wrote:
 of_node_put needs to be called when the device node which is got
 from of_parse_phandle has finished using.

 Signed-off-by: Peter Chen 
 ---
  drivers/net/ethernet/ti/davinci_emac.c | 1 +
  1 file changed, 1 insertion(+)

 diff --git a/drivers/net/ethernet/ti/davinci_emac.c
 b/drivers/net/ethernet/ti/davinci_emac.c
 index c6c5465..d8cb9d0 100644
 --- a/drivers/net/ethernet/ti/davinci_emac.c
 +++ b/drivers/net/ethernet/ti/davinci_emac.c
 @@ -1571,6 +1571,7 @@ static int emac_dev_open(struct net_device *ndev)
if (priv->phy_node) {
phydev = of_phy_connect(ndev, priv->phy_node,
_adjust_link, 0, 0);
 +  of_node_put(priv->phy_node);
if (!phydev) {
dev_err(emac_dev, "could not connect to phy %s\n",
priv->phy_node->full_name);

>>>
>>> phy_node is accessed in case of of_phy_connect() returns error, so it
>>> has to be moved after the dev_err log
>>>
>>
>> Yeah, you are right. I will change it, thanks.
>>
>
>I see one more problem, when you stop and open the interface there is no way 
>to get
>the phy_node and interface will be unusable, so of_node_put() should be moved 
>to
>remove()
>

It is my careless. Like I replied to David I did not know the phy_node would be 
used
in whole driver's life cycle. I will change it, thanks.

Peter


Re: [PATCH 15/15] ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle

2016-07-29 Thread Mugunthan V N
+ Linux Omap ML

On Wednesday 27 July 2016 01:13 PM, Peter Chen wrote:
>  
>> On Wednesday 27 July 2016 07:50 AM, Peter Chen wrote:
>>> of_node_put needs to be called when the device node which is got from
>>> of_parse_phandle has finished using.
>>>
>>> Signed-off-by: Peter Chen 
>>> ---
>>>  drivers/net/ethernet/ti/davinci_emac.c | 1 +
>>>  1 file changed, 1 insertion(+)
>>>
>>> diff --git a/drivers/net/ethernet/ti/davinci_emac.c
>>> b/drivers/net/ethernet/ti/davinci_emac.c
>>> index c6c5465..d8cb9d0 100644
>>> --- a/drivers/net/ethernet/ti/davinci_emac.c
>>> +++ b/drivers/net/ethernet/ti/davinci_emac.c
>>> @@ -1571,6 +1571,7 @@ static int emac_dev_open(struct net_device *ndev)
>>> if (priv->phy_node) {
>>> phydev = of_phy_connect(ndev, priv->phy_node,
>>> _adjust_link, 0, 0);
>>> +   of_node_put(priv->phy_node);
>>> if (!phydev) {
>>> dev_err(emac_dev, "could not connect to phy %s\n",
>>> priv->phy_node->full_name);
>>>
>>
>> phy_node is accessed in case of of_phy_connect() returns error, so it has to 
>> be
>> moved after the dev_err log
>>
> 
> Yeah, you are right. I will change it, thanks.
> 

I see one more problem, when you stop and open the interface there is no
way to get the phy_node and interface will be unusable, so of_node_put()
should be moved to remove()

Regards
Mugunthan V N



RE: [PATCH 15/15] ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle

2016-07-27 Thread Peter Chen
 
>On Wednesday 27 July 2016 07:50 AM, Peter Chen wrote:
>> of_node_put needs to be called when the device node which is got from
>> of_parse_phandle has finished using.
>>
>> Signed-off-by: Peter Chen 
>> ---
>>  drivers/net/ethernet/ti/davinci_emac.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/net/ethernet/ti/davinci_emac.c
>> b/drivers/net/ethernet/ti/davinci_emac.c
>> index c6c5465..d8cb9d0 100644
>> --- a/drivers/net/ethernet/ti/davinci_emac.c
>> +++ b/drivers/net/ethernet/ti/davinci_emac.c
>> @@ -1571,6 +1571,7 @@ static int emac_dev_open(struct net_device *ndev)
>>  if (priv->phy_node) {
>>  phydev = of_phy_connect(ndev, priv->phy_node,
>>  _adjust_link, 0, 0);
>> +of_node_put(priv->phy_node);
>>  if (!phydev) {
>>  dev_err(emac_dev, "could not connect to phy %s\n",
>>  priv->phy_node->full_name);
>>
>
>phy_node is accessed in case of of_phy_connect() returns error, so it has to be
>moved after the dev_err log
>

Yeah, you are right. I will change it, thanks.

Peter


Re: [PATCH 15/15] ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle

2016-07-26 Thread Mugunthan V N
On Wednesday 27 July 2016 07:50 AM, Peter Chen wrote:
> of_node_put needs to be called when the device node which is got
> from of_parse_phandle has finished using.
> 
> Signed-off-by: Peter Chen 
> ---
>  drivers/net/ethernet/ti/davinci_emac.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/net/ethernet/ti/davinci_emac.c 
> b/drivers/net/ethernet/ti/davinci_emac.c
> index c6c5465..d8cb9d0 100644
> --- a/drivers/net/ethernet/ti/davinci_emac.c
> +++ b/drivers/net/ethernet/ti/davinci_emac.c
> @@ -1571,6 +1571,7 @@ static int emac_dev_open(struct net_device *ndev)
>   if (priv->phy_node) {
>   phydev = of_phy_connect(ndev, priv->phy_node,
>   _adjust_link, 0, 0);
> + of_node_put(priv->phy_node);
>   if (!phydev) {
>   dev_err(emac_dev, "could not connect to phy %s\n",
>   priv->phy_node->full_name);
> 

phy_node is accessed in case of of_phy_connect() returns error, so it
has to be moved after the dev_err log

Regards
Mugunthan V N


[PATCH 15/15] ethernet: ti: davinci_emac: add missing of_node_put after calling of_parse_phandle

2016-07-26 Thread Peter Chen
of_node_put needs to be called when the device node which is got
from of_parse_phandle has finished using.

Signed-off-by: Peter Chen 
---
 drivers/net/ethernet/ti/davinci_emac.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/ti/davinci_emac.c 
b/drivers/net/ethernet/ti/davinci_emac.c
index c6c5465..d8cb9d0 100644
--- a/drivers/net/ethernet/ti/davinci_emac.c
+++ b/drivers/net/ethernet/ti/davinci_emac.c
@@ -1571,6 +1571,7 @@ static int emac_dev_open(struct net_device *ndev)
if (priv->phy_node) {
phydev = of_phy_connect(ndev, priv->phy_node,
_adjust_link, 0, 0);
+   of_node_put(priv->phy_node);
if (!phydev) {
dev_err(emac_dev, "could not connect to phy %s\n",
priv->phy_node->full_name);
-- 
1.9.1