* [PATCH net 1/4] net: hns: fix a bug for cycle index
2016-03-08 3:52 [PATCH net 0/4] net: hns: bugs fix about hns driver Lisheng
@ 2016-03-08 3:52 ` Lisheng
2016-03-08 3:52 ` [PATCH net 2/4] net: hns: bug fix for format string Lisheng
` (2 subsequent siblings)
3 siblings, 0 replies; 8+ messages in thread
From: Lisheng @ 2016-03-08 3:52 UTC (permalink / raw)
To: davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
andriy.shevchenko, netdev, haifeng.wei, charles.chenxin, linuxarm
From: Qianqian Xie <xieqianqian@huawei.com>
The cycle index should be varied while the variable j is a fixed value.
The patch will fix this bug.
Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
---
drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
index 7fe1c1c..4583597 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_main.c
@@ -2182,17 +2182,17 @@ void hns_dsaf_get_regs(struct dsaf_device *ddev, u32 port, void *data)
/* dsaf onode registers */
for (i = 0; i < DSAF_XOD_NUM; i++) {
p[311 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_TSA_TC0_TC3_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_TSA_TC0_TC3_CFG_0_REG + i * 0x90);
p[319 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_TSA_TC4_TC7_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_TSA_TC4_TC7_CFG_0_REG + i * 0x90);
p[327 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_BW_TC0_TC3_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_BW_TC0_TC3_CFG_0_REG + i * 0x90);
p[335 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_BW_TC4_TC7_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_BW_TC4_TC7_CFG_0_REG + i * 0x90);
p[343 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_BW_OFFSET_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_BW_OFFSET_CFG_0_REG + i * 0x90);
p[351 + i] = dsaf_read_dev(ddev,
- DSAF_XOD_ETS_TOKEN_CFG_0_REG + j * 0x90);
+ DSAF_XOD_ETS_TOKEN_CFG_0_REG + i * 0x90);
}
p[359] = dsaf_read_dev(ddev, DSAF_XOD_PFS_CFG_0_0_REG + port * 0x90);
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH net 2/4] net: hns: bug fix for format string
2016-03-08 3:52 [PATCH net 0/4] net: hns: bugs fix about hns driver Lisheng
2016-03-08 3:52 ` [PATCH net 1/4] net: hns: fix a bug for cycle index Lisheng
@ 2016-03-08 3:52 ` Lisheng
2016-03-08 3:52 ` [PATCH net 3/4] net: hns: bug fix for return values Lisheng
2016-03-08 3:52 ` [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean Lisheng
3 siblings, 0 replies; 8+ messages in thread
From: Lisheng @ 2016-03-08 3:52 UTC (permalink / raw)
To: davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
andriy.shevchenko, netdev, haifeng.wei, charles.chenxin, linuxarm
From: Qianqian Xie <xieqianqian@huawei.com>
There is not a format string in function snprinf().
This patch will fix it.
Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
---
drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c
index b8517b0..d0591d9 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_gmac.c
@@ -641,7 +641,8 @@ static void hns_gmac_get_strings(u32 stringset, u8 *data)
return;
for (i = 0; i < ARRAY_SIZE(g_gmac_stats_string); i++) {
- snprintf(buff, ETH_GSTRING_LEN, g_gmac_stats_string[i].desc);
+ snprintf(buff, ETH_GSTRING_LEN, "%s",
+ g_gmac_stats_string[i].desc);
buff = buff + ETH_GSTRING_LEN;
}
}
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH net 3/4] net: hns: bug fix for return values
2016-03-08 3:52 [PATCH net 0/4] net: hns: bugs fix about hns driver Lisheng
2016-03-08 3:52 ` [PATCH net 1/4] net: hns: fix a bug for cycle index Lisheng
2016-03-08 3:52 ` [PATCH net 2/4] net: hns: bug fix for format string Lisheng
@ 2016-03-08 3:52 ` Lisheng
2016-03-08 3:52 ` [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean Lisheng
3 siblings, 0 replies; 8+ messages in thread
From: Lisheng @ 2016-03-08 3:52 UTC (permalink / raw)
To: davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
andriy.shevchenko, netdev, haifeng.wei, charles.chenxin, linuxarm
From: Qianqian Xie <xieqianqian@huawei.com>
The return values in the first two functions mdiobus_write()
are ignored. The patch will fix it.
Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
---
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
index 3df2284..cc5c545 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
@@ -1000,8 +1000,8 @@ int hns_phy_led_set(struct net_device *netdev, int value)
struct phy_device *phy_dev = priv->phy;
retval = phy_write(phy_dev, HNS_PHY_PAGE_REG, HNS_PHY_PAGE_LED);
- retval = phy_write(phy_dev, HNS_LED_FC_REG, value);
- retval = phy_write(phy_dev, HNS_PHY_PAGE_REG, HNS_PHY_PAGE_COPPER);
+ retval |= phy_write(phy_dev, HNS_LED_FC_REG, value);
+ retval |= phy_write(phy_dev, HNS_PHY_PAGE_REG, HNS_PHY_PAGE_COPPER);
if (retval) {
netdev_err(netdev, "mdiobus_write fail !\n");
return retval;
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean
2016-03-08 3:52 [PATCH net 0/4] net: hns: bugs fix about hns driver Lisheng
` (2 preceding siblings ...)
2016-03-08 3:52 ` [PATCH net 3/4] net: hns: bug fix for return values Lisheng
@ 2016-03-08 3:52 ` Lisheng
2016-03-08 7:18 ` Andy Shevchenko
3 siblings, 1 reply; 8+ messages in thread
From: Lisheng @ 2016-03-08 3:52 UTC (permalink / raw)
To: davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
andriy.shevchenko, netdev, haifeng.wei, charles.chenxin, linuxarm
From: Qianqian Xie <xieqianqian@huawei.com>
The variable head in hns_nic_tx_fini_pro has read a value,
but the value is not used. The patch will solve it.
Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
---
drivers/net/ethernet/hisilicon/hns/hns_enet.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_enet.c b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
index 3f77ff7..7b4ec2f 100644
--- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
+++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
@@ -901,10 +901,8 @@ static int hns_nic_tx_poll_one(struct hns_nic_ring_data *ring_data,
static void hns_nic_tx_fini_pro(struct hns_nic_ring_data *ring_data)
{
struct hnae_ring *ring = ring_data->ring;
- int head = ring->next_to_clean;
- /* for hardware bug fixed */
- head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
+ int head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
if (head != ring->next_to_clean) {
ring_data->ring->q->handle->dev->ops->toggle_ring_irq(
--
1.9.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean
2016-03-08 3:52 ` [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean Lisheng
@ 2016-03-08 7:18 ` Andy Shevchenko
2016-03-08 8:02 ` Lisheng011
0 siblings, 1 reply; 8+ messages in thread
From: Andy Shevchenko @ 2016-03-08 7:18 UTC (permalink / raw)
To: Lisheng, davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
netdev, haifeng.wei, charles.chenxin, linuxarm
On Tue, 2016-03-08 at 11:52 +0800, Lisheng wrote:
> From: Qianqian Xie <xieqianqian@huawei.com>
>
> The variable head in hns_nic_tx_fini_pro has read a value,
> but the value is not used. The patch will solve it.
>
> Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
> ---
> drivers/net/ethernet/hisilicon/hns/hns_enet.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
> b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
> index 3f77ff7..7b4ec2f 100644
> --- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
> +++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
> @@ -901,10 +901,8 @@ static int hns_nic_tx_poll_one(struct
> hns_nic_ring_data *ring_data,
> static void hns_nic_tx_fini_pro(struct hns_nic_ring_data *ring_data)
> {
> struct hnae_ring *ring = ring_data->ring;
> - int head = ring->next_to_clean;
>
This empty line is a leftover, I prefer to just cut assignment.
> - /* for hardware bug fixed */
This is not good. Explanation is needed why you removed this comment.
> - head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
> + int head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
>
> if (head != ring->next_to_clean) {
> ring_data->ring->q->handle->dev->ops-
> >toggle_ring_irq(
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean
2016-03-08 7:18 ` Andy Shevchenko
@ 2016-03-08 8:02 ` Lisheng011
2016-03-08 8:12 ` Andy Shevchenko
0 siblings, 1 reply; 8+ messages in thread
From: Lisheng011 @ 2016-03-08 8:02 UTC (permalink / raw)
To: Andy Shevchenko, davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
netdev, haifeng.wei, charles.chenxin, linuxarm
在 2016/3/8 15:18, Andy Shevchenko 写道:
> On Tue, 2016-03-08 at 11:52 +0800, Lisheng wrote:
>> From: Qianqian Xie <xieqianqian@huawei.com>
>>
>> The variable head in hns_nic_tx_fini_pro has read a value,
>> but the value is not used. The patch will solve it.
>>
>> Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
>> ---
>> drivers/net/ethernet/hisilicon/hns/hns_enet.c | 4 +---
>> 1 file changed, 1 insertion(+), 3 deletions(-)
>>
>> diff --git a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
>> b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
>> index 3f77ff7..7b4ec2f 100644
>> --- a/drivers/net/ethernet/hisilicon/hns/hns_enet.c
>> +++ b/drivers/net/ethernet/hisilicon/hns/hns_enet.c
>> @@ -901,10 +901,8 @@ static int hns_nic_tx_poll_one(struct
>> hns_nic_ring_data *ring_data,
>> static void hns_nic_tx_fini_pro(struct hns_nic_ring_data *ring_data)
>> {
>> struct hnae_ring *ring = ring_data->ring;
>> - int head = ring->next_to_clean;
>>
> This empty line is a leftover, I prefer to just cut assignment.
Yeah, the empty line does not be needed. I'll remove it. thx.
>> - /* for hardware bug fixed */
> This is not good. Explanation is needed why you removed this comment.
This bug-fixed comment is for the function pointer
ring_data->fini_process,that is called in function hns_nic_common_poll.
The comment should not be here, so remove it.
>> - head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
>> + int head = readl_relaxed(ring->io_base + RCB_REG_HEAD);
>>
>> if (head != ring->next_to_clean) {
>> ring_data->ring->q->handle->dev->ops-
>>> toggle_ring_irq(
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH net 4/4] net: hns: remove useless head=ring->next_to_clean
2016-03-08 8:02 ` Lisheng011
@ 2016-03-08 8:12 ` Andy Shevchenko
0 siblings, 0 replies; 8+ messages in thread
From: Andy Shevchenko @ 2016-03-08 8:12 UTC (permalink / raw)
To: Lisheng011, davem
Cc: yisen.zhuang, yankejian, xieqianqian, huangdaode, salil.mehta,
netdev, haifeng.wei, charles.chenxin, linuxarm
On Tue, 2016-03-08 at 16:02 +0800, Lisheng011 wrote:
>
> 在 2016/3/8 15:18, Andy Shevchenko 写道:
> >
> > On Tue, 2016-03-08 at 11:52 +0800, Lisheng wrote:
> > >
> > > From: Qianqian Xie <xieqianqian@huawei.com>
> > >
> > > The variable head in hns_nic_tx_fini_pro has read a value,
> > > but the value is not used. The patch will solve it.
> - /* for hardware bug fixed */
> > This is not good. Explanation is needed why you removed this
> > comment.
> This bug-fixed comment is for the function pointer
> ring_data->fini_process,that is called in function
> hns_nic_common_poll.
> The comment should not be here, so remove it.
Please, add above paragraph to the commit message.
--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy
^ permalink raw reply [flat|nested] 8+ messages in thread