Date: Thu, 7 Nov 2019 23:36:25 +0000 (UTC) From: Mark Johnston <markj@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r354506 - head/sys/dev/iwm Message-ID: <201911072336.xA7NaPb5074015@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: markj Date: Thu Nov 7 23:36:25 2019 New Revision: 354506 URL: https://svnweb.freebsd.org/changeset/base/354506 Log: iwm: Explicitly enable MSI on newer chipsets. 9000-series chips implement support for MSI-X interrupts and disable MSI by default. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/iwm/if_iwm_pcie_trans.c head/sys/dev/iwm/if_iwmreg.h Modified: head/sys/dev/iwm/if_iwm_pcie_trans.c ============================================================================== --- head/sys/dev/iwm/if_iwm_pcie_trans.c Thu Nov 7 23:36:10 2019 (r354505) +++ head/sys/dev/iwm/if_iwm_pcie_trans.c Thu Nov 7 23:36:25 2019 (r354506) @@ -616,6 +616,10 @@ iwm_start_hw(struct iwm_softc *sc) if ((error = iwm_apm_init(sc)) != 0) return error; + /* On newer chipsets MSI is disabled by default. */ + if (sc->cfg->mqrx_supported) + iwm_write_prph(sc, IWM_UREG_CHICK, IWM_UREG_CHICK_MSI_ENABLE); + iwm_enable_rfkill_int(sc); iwm_check_rfkill(sc); Modified: head/sys/dev/iwm/if_iwmreg.h ============================================================================== --- head/sys/dev/iwm/if_iwmreg.h Thu Nov 7 23:36:10 2019 (r354505) +++ head/sys/dev/iwm/if_iwmreg.h Thu Nov 7 23:36:25 2019 (r354506) @@ -457,6 +457,10 @@ enum iwm_secure_boot_status_reg { #define IWM_LMPM_CHICK 0xa01ff8 #define IWM_LMPM_CHICK_EXTENDED_ADDR_SPACE 0x01 +#define IWM_UREG_CHICK 0xa05c00 +#define IWM_UREG_CHICK_MSI_ENABLE 0x01000000 +#define IWM_UREG_CHICK_MSIX_ENABLE 0x02000000 + #define IWM_FH_TCSR_0_REG0 (0x1D00) /*
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201911072336.xA7NaPb5074015>