mirror of https://gitee.com/openkylin/linux.git
wil6210: log firmware crash information
Print firmware and ucode assert codes when firmware crashed. Signed-off-by: Lior David <liord@qti.qualcomm.com> Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
This commit is contained in:
parent
3b282bc609
commit
bf2f67343e
|
@ -347,7 +347,12 @@ static irqreturn_t wil6210_irq_misc(int irq, void *cookie)
|
||||||
wil6210_mask_irq_misc(wil);
|
wil6210_mask_irq_misc(wil);
|
||||||
|
|
||||||
if (isr & ISR_MISC_FW_ERROR) {
|
if (isr & ISR_MISC_FW_ERROR) {
|
||||||
wil_err(wil, "Firmware error detected\n");
|
u32 fw_assert_code = wil_r(wil, RGF_FW_ASSERT_CODE);
|
||||||
|
u32 ucode_assert_code = wil_r(wil, RGF_UCODE_ASSERT_CODE);
|
||||||
|
|
||||||
|
wil_err(wil,
|
||||||
|
"Firmware error detected, assert codes FW 0x%08x, UCODE 0x%08x\n",
|
||||||
|
fw_assert_code, ucode_assert_code);
|
||||||
clear_bit(wil_status_fwready, wil->status);
|
clear_bit(wil_status_fwready, wil->status);
|
||||||
/*
|
/*
|
||||||
* do not clear @isr here - we do 2-nd part in thread
|
* do not clear @isr here - we do 2-nd part in thread
|
||||||
|
|
|
@ -246,6 +246,10 @@ struct RGF_ICR {
|
||||||
#define RGF_USER_JTAG_DEV_ID (0x880b34) /* device ID */
|
#define RGF_USER_JTAG_DEV_ID (0x880b34) /* device ID */
|
||||||
#define JTAG_DEV_ID_SPARROW_B0 (0x2632072f)
|
#define JTAG_DEV_ID_SPARROW_B0 (0x2632072f)
|
||||||
|
|
||||||
|
/* crash codes for FW/Ucode stored here */
|
||||||
|
#define RGF_FW_ASSERT_CODE (0x91f020)
|
||||||
|
#define RGF_UCODE_ASSERT_CODE (0x91f028)
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
HW_VER_UNKNOWN,
|
HW_VER_UNKNOWN,
|
||||||
HW_VER_SPARROW_B0, /* JTAG_DEV_ID_SPARROW_B0 */
|
HW_VER_SPARROW_B0, /* JTAG_DEV_ID_SPARROW_B0 */
|
||||||
|
|
Loading…
Reference in New Issue