On Fri, 7 Apr 2023 at 03:31, Marek Vasut <marex@xxxxxxx> wrote: > > Add SDIO ids for use with the muRata 1YN (Cypress CYW43439). > The odd thing about this is that the previous 1YN populated > on M.2 card for evaluation purposes had BRCM SDIO vendor ID, > while the chip populated on real hardware has a Cypress one. > The device ID also differs between the two devices. But they > are both 43439 otherwise, so add the IDs for both. > > ``` > /sys/.../mmc_host/mmc2/mmc2:0001 # cat vendor device > 0x04b4 > 0xbd3d > ``` > > Fixes: be376df724aa3 ("wifi: brcmfmac: add 43439 SDIO ids and initialization") > Signed-off-by: Marek Vasut <marex@xxxxxxx> Acked-by: Ulf Hansson <ulf.hansson@xxxxxxxxxx> Kind regards Uffe > --- > NOTE: Please drop the Fixes tag if this is considered unjustified > Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> > Cc: Arend van Spriel <aspriel@xxxxxxxxx> > Cc: Danny van Heumen <danny@xxxxxxxxxxxxxxxxx> > Cc: Eric Dumazet <edumazet@xxxxxxxxxx> > Cc: Franky Lin <franky.lin@xxxxxxxxxxxx> > Cc: Hans de Goede <hdegoede@xxxxxxxxxx> > Cc: Hante Meuleman <hante.meuleman@xxxxxxxxxxxx> > Cc: Jakub Kicinski <kuba@xxxxxxxxxx> > Cc: Kalle Valo <kvalo@xxxxxxxxxx> > Cc: Paolo Abeni <pabeni@xxxxxxxxxx> > Cc: Paul Cercueil <paul@xxxxxxxxxxxxxxx> > Cc: SHA-cyfmac-dev-list@xxxxxxxxxxxx > Cc: Ulf Hansson <ulf.hansson@xxxxxxxxxx> > Cc: brcm80211-dev-list.pdl@xxxxxxxxxxxx > Cc: linux-mmc@xxxxxxxxxxxxxxx > Cc: linux-wireless@xxxxxxxxxxxxxxx > Cc: netdev@xxxxxxxxxxxxxxx > --- > .../net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c | 9 ++++++++- > include/linux/mmc/sdio_ids.h | 5 ++++- > 2 files changed, 12 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c > index 65d4799a56584..ff710b0b5071a 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bcmsdh.c > @@ -965,6 +965,12 @@ int brcmf_sdiod_probe(struct brcmf_sdio_dev *sdiodev) > .driver_data = BRCMF_FWVENDOR_ ## fw_vend \ > } > > +#define CYW_SDIO_DEVICE(dev_id, fw_vend) \ > + { \ > + SDIO_DEVICE(SDIO_VENDOR_ID_CYPRESS, dev_id), \ > + .driver_data = BRCMF_FWVENDOR_ ## fw_vend \ > + } > + > /* devices we support, null terminated */ > static const struct sdio_device_id brcmf_sdmmc_ids[] = { > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43143, WCC), > @@ -979,6 +985,7 @@ static const struct sdio_device_id brcmf_sdmmc_ids[] = { > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4335_4339, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4339, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43430, WCC), > + BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43439, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4345, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_43455, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4354, WCC), > @@ -986,9 +993,9 @@ static const struct sdio_device_id brcmf_sdmmc_ids[] = { > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_4359, WCC), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_4373, CYW), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_43012, CYW), > - BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_43439, CYW), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_43752, CYW), > BRCMF_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_89359, CYW), > + CYW_SDIO_DEVICE(SDIO_DEVICE_ID_BROADCOM_CYPRESS_43439, CYW), > { /* end: all zeroes */ } > }; > MODULE_DEVICE_TABLE(sdio, brcmf_sdmmc_ids); > diff --git a/include/linux/mmc/sdio_ids.h b/include/linux/mmc/sdio_ids.h > index 0e4ef9c5127ad..bf3c95d8eb8af 100644 > --- a/include/linux/mmc/sdio_ids.h > +++ b/include/linux/mmc/sdio_ids.h > @@ -74,10 +74,13 @@ > #define SDIO_DEVICE_ID_BROADCOM_43362 0xa962 > #define SDIO_DEVICE_ID_BROADCOM_43364 0xa9a4 > #define SDIO_DEVICE_ID_BROADCOM_43430 0xa9a6 > -#define SDIO_DEVICE_ID_BROADCOM_CYPRESS_43439 0xa9af > +#define SDIO_DEVICE_ID_BROADCOM_43439 0xa9af > #define SDIO_DEVICE_ID_BROADCOM_43455 0xa9bf > #define SDIO_DEVICE_ID_BROADCOM_CYPRESS_43752 0xaae8 > > +#define SDIO_VENDOR_ID_CYPRESS 0x04b4 > +#define SDIO_DEVICE_ID_BROADCOM_CYPRESS_43439 0xbd3d > + > #define SDIO_VENDOR_ID_MARVELL 0x02df > #define SDIO_DEVICE_ID_MARVELL_LIBERTAS 0x9103 > #define SDIO_DEVICE_ID_MARVELL_8688_WLAN 0x9104 > -- > 2.39.2 >