All of lore.kernel.org
 help / color / mirror / Atom feed
* Repeated firmware crash when admin down.
@ 2015-03-20 21:46 Ben Greear
  2015-03-23  6:37 ` Michal Kazior
  0 siblings, 1 reply; 3+ messages in thread
From: Ben Greear @ 2015-03-20 21:46 UTC (permalink / raw)
  To: ath10k

Someone reported this bug to me.  It is repeatable on various firmware,
including my own and official QCA firmware.

I am not certain of the hardware platform, but I think it might be a Ventana
imx6 board.

Kernel is based on 3.19-mumble.

I cannot reproduce on x86 (but testing on 3.17 kernel and different flavour of
Linux, so who knows.)

They simply admin-down wlanX, and then the firmware crashes over and over.
They cannot get any register dump.
When they admin up the interface, the crashes stop and system resumes normally.

I had them try it with my firmware and a driver patch
which will attempt to do ping-pong register dump
over pci register reads in case the firmware's normal PCI messaging transport
is down, but the register value always reads as '0xdeadbeef'.

Driver patch is linked below, 'val' is 0xdeadbeef after the million read attempts.

(Need a few additional patches to define CT firmware flag and such, but you can
 see the logic easily enough.)
http://dmz2.candelatech.com/?p=linux-3.17.dev.y/.git;a=commit;h=52333b889f0c818d2766d0d514ac31e5c53ce0ab

Any ideas what might be the problem?

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Repeated firmware crash when admin down.
  2015-03-20 21:46 Repeated firmware crash when admin down Ben Greear
@ 2015-03-23  6:37 ` Michal Kazior
  2015-03-24  0:30   ` Ben Greear
  0 siblings, 1 reply; 3+ messages in thread
From: Michal Kazior @ 2015-03-23  6:37 UTC (permalink / raw)
  To: Ben Greear; +Cc: ath10k

On 20 March 2015 at 22:46, Ben Greear <greearb@candelatech.com> wrote:
> Someone reported this bug to me.  It is repeatable on various firmware,
> including my own and official QCA firmware.
>
> I am not certain of the hardware platform, but I think it might be a Ventana
> imx6 board.
>
> Kernel is based on 3.19-mumble.
>
> I cannot reproduce on x86 (but testing on 3.17 kernel and different flavour of
> Linux, so who knows.)
>
> They simply admin-down wlanX, and then the firmware crashes over and over.
> They cannot get any register dump.
> When they admin up the interface, the crashes stop and system resumes normally.
>
> I had them try it with my firmware and a driver patch
> which will attempt to do ping-pong register dump
> over pci register reads in case the firmware's normal PCI messaging transport
> is down, but the register value always reads as '0xdeadbeef'.
>
> Driver patch is linked below, 'val' is 0xdeadbeef after the million read attempts.

If you read MMIO registers while the device sleeps you get 0xdeadbeef.
I've recently posted a patch which should fix some of these[1].

I'm guessing the imx6 board could be using shared irq and the line is
shared with some other (active) device(s). This would lead to checking
registers in ath10k after ath10k_pci_sleep(). In that case my patch
should be sufficient.

[1]: https://github.com/kvalo/ath/commit/320e14b8db51a2d635897d521db4e5c79c3a8390


Michał

_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Repeated firmware crash when admin down.
  2015-03-23  6:37 ` Michal Kazior
@ 2015-03-24  0:30   ` Ben Greear
  0 siblings, 0 replies; 3+ messages in thread
From: Ben Greear @ 2015-03-24  0:30 UTC (permalink / raw)
  To: Michal Kazior; +Cc: ath10k

The user reports this does indeed fix the problem.

Thanks,
Ben

On 03/22/2015 11:37 PM, Michal Kazior wrote:
> On 20 March 2015 at 22:46, Ben Greear <greearb@candelatech.com> wrote:
>> Someone reported this bug to me.  It is repeatable on various firmware,
>> including my own and official QCA firmware.
>>
>> I am not certain of the hardware platform, but I think it might be a Ventana
>> imx6 board.
>>
>> Kernel is based on 3.19-mumble.
>>
>> I cannot reproduce on x86 (but testing on 3.17 kernel and different flavour of
>> Linux, so who knows.)
>>
>> They simply admin-down wlanX, and then the firmware crashes over and over.
>> They cannot get any register dump.
>> When they admin up the interface, the crashes stop and system resumes normally.
>>
>> I had them try it with my firmware and a driver patch
>> which will attempt to do ping-pong register dump
>> over pci register reads in case the firmware's normal PCI messaging transport
>> is down, but the register value always reads as '0xdeadbeef'.
>>
>> Driver patch is linked below, 'val' is 0xdeadbeef after the million read attempts.
>
> If you read MMIO registers while the device sleeps you get 0xdeadbeef.
> I've recently posted a patch which should fix some of these[1].
>
> I'm guessing the imx6 board could be using shared irq and the line is
> shared with some other (active) device(s). This would lead to checking
> registers in ath10k after ath10k_pci_sleep(). In that case my patch
> should be sufficient.
>
> [1]: https://github.com/kvalo/ath/commit/320e14b8db51a2d635897d521db4e5c79c3a8390
>
>
> Michał
>

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com

_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-03-24  0:30 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-20 21:46 Repeated firmware crash when admin down Ben Greear
2015-03-23  6:37 ` Michal Kazior
2015-03-24  0:30   ` Ben Greear

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.