On Wed, Dec 9, 2020 at 10:47 PM Emmanuel Grumbach <egrumbach@xxxxxxxxx> wrote: > > On Wed, Dec 9, 2020 at 10:40 PM Rui Salvaterra <rsalvaterra@xxxxxxxxx> wrote: > > > > Hi, Emmanuel, > > > > On Wed, 9 Dec 2020 at 20:32, Emmanuel Grumbach <egrumbach@xxxxxxxxx> wrote: > > > > > > Rui, I looked at the register dump and looks like you're using AMT on > > > your system? > > > Can you confirm? > > > > AMT? You mean Intel Active Management? Heavens, no, not that I know > > of! This is a personal laptop (Lenovo B51-80). (And I'd personally > > kill the ME with fire, if I could.) > > Yes, I mean that thing. No VPRO sticker on the laptop? > Weird... So apparently I was wrong about the register value. Indeed, the bit is reverse logic. So we can put that aside. Frankly, I have no clue. You can try our backport tree to bisect, should be easier.. What I see here is that your GP_CTRL value is 080003d8 #define CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW (0x08000000) which means sense since apparently, HW RF-Kill was asserted. #define CSR_GP_CNTRL_REG_FLAG_GOING_TO_SLEEP (0x00000010) Which means that the device is going to sleep... And that's the problem: iwl_trans_pcie_grab_nic_access: ret = iwl_poll_bit(trans, CSR_GP_CNTRL, CSR_GP_CNTRL_REG_VAL_MAC_ACCESS_EN, (CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY | CSR_GP_CNTRL_REG_FLAG_GOING_TO_SLEEP), 15000); if (unlikely(ret < 0)) { u32 cntrl = iwl_read32(trans, CSR_GP_CNTRL); WARN_ONCE(1, "Timeout waiting for hardware access (CSR_GP_CNTRL 0x%08x)\n", cntrl); but I'd expect the splat in your log... Or maybe you can't load the firmware? Can you try this: diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c index 2fffbbc8462f..748300752630 100644 --- a/drivers/net/wireless/intel/iwlwifi/pcie/trans.c +++ b/drivers/net/wireless/intel/iwlwifi/pcie/trans.c @@ -2121,6 +2121,7 @@ static bool iwl_trans_pcie_grab_nic_access(struct iwl_trans *trans, * track nic_access anyway. */ __release(&trans_pcie->reg_lock); + mdelay(1); return true; } If that helps, then... I'd have no clue why it helps, but this specific device caused us trouble like bad timing after grab_nic_access.. > > > > > Thanks, > > Rui