* Re: [PATCH] net:dsa:mv88e6xxx: delete timer and cancel ppu_work
2016-12-06 14:22 ` [PATCH] net:dsa:mv88e6xxx: delete timer and cancel ppu_work Andrew Lunn
@ 2016-12-07 10:38 ` Volodymyr Bendiuga
2016-12-07 13:14 ` Volodymyr Bendiuga
1 sibling, 0 replies; 3+ messages in thread
From: Volodymyr Bendiuga @ 2016-12-07 10:38 UTC (permalink / raw)
To: Andrew Lunn
Cc: vivien.didelot, f.fainelli, netdev, volodymyr.bendiuga,
Jonas Johansson
OK, will check it.
/Volodymyr
On 2016-12-06 15:22, Andrew Lunn wrote:
> On Tue, Dec 06, 2016 at 01:57:42PM +0100, Volodymyr Bendiuga wrote:
>> Signed-off-by: Jonas Johansson <jonas.johansson@westermo.se>
>> Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@westermo.se>
>> ---
>> drivers/net/dsa/mv88e6xxx/chip.c | 5 ++++-
>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
>> index ca453f3..4212fb6 100644
>> --- a/drivers/net/dsa/mv88e6xxx/chip.c
>> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
>> @@ -4528,8 +4528,11 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev)
>> out_mdio:
>> mv88e6xxx_mdio_unregister(chip);
>> out_g2_irq:
>> - if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_G2_INT) && chip->irq > 0)
>> + if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_G2_INT) && chip->irq > 0) {
>> mv88e6xxx_g2_irq_free(chip);
>> + del_timer(&chip->ppu_timer);
>> + cancel_work_sync(&chip->ppu_work);
>> + }
> Why do this here, inside this if statement?
>
> Vivien has also just reworked the PPU code. Please take a look at his
> patches and see if they fix the issue.
>
> Thanks
> Andrew
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH] net:dsa:mv88e6xxx: delete timer and cancel ppu_work
2016-12-06 14:22 ` [PATCH] net:dsa:mv88e6xxx: delete timer and cancel ppu_work Andrew Lunn
2016-12-07 10:38 ` Volodymyr Bendiuga
@ 2016-12-07 13:14 ` Volodymyr Bendiuga
1 sibling, 0 replies; 3+ messages in thread
From: Volodymyr Bendiuga @ 2016-12-07 13:14 UTC (permalink / raw)
To: Andrew Lunn
Cc: vivien.didelot, f.fainelli, netdev, volodymyr.bendiuga,
Jonas Johansson
This issue seems to be resolved now with new PPU patch set.
On 2016-12-06 15:22, Andrew Lunn wrote:
> On Tue, Dec 06, 2016 at 01:57:42PM +0100, Volodymyr Bendiuga wrote:
>> Signed-off-by: Jonas Johansson <jonas.johansson@westermo.se>
>> Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@westermo.se>
>> ---
>> drivers/net/dsa/mv88e6xxx/chip.c | 5 ++++-
>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
>> index ca453f3..4212fb6 100644
>> --- a/drivers/net/dsa/mv88e6xxx/chip.c
>> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
>> @@ -4528,8 +4528,11 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev)
>> out_mdio:
>> mv88e6xxx_mdio_unregister(chip);
>> out_g2_irq:
>> - if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_G2_INT) && chip->irq > 0)
>> + if (mv88e6xxx_has(chip, MV88E6XXX_FLAG_G2_INT) && chip->irq > 0) {
>> mv88e6xxx_g2_irq_free(chip);
>> + del_timer(&chip->ppu_timer);
>> + cancel_work_sync(&chip->ppu_work);
>> + }
> Why do this here, inside this if statement?
>
> Vivien has also just reworked the PPU code. Please take a look at his
> patches and see if they fix the issue.
>
> Thanks
> Andrew
^ permalink raw reply [flat|nested] 3+ messages in thread