Module Name: src Committed By: martin Date: Tue Feb 25 18:40:44 UTC 2020
Modified Files: src/sys/dev/fdt [netbsd-9]: dwcmmc_fdt.c src/sys/dev/ic [netbsd-9]: bwfm.c bwfmreg.h bwfmvar.h dwc_mmc.c dwc_mmc_reg.h dwc_mmc_var.h src/sys/dev/pcmcia [netbsd-9]: pcmciareg.h src/sys/dev/sdmmc [netbsd-9]: if_bwfm_sdio.c sdhc.c sdmmc.c sdmmc_cis.c sdmmc_io.c sdmmc_ioreg.h sdmmc_mem.c sdmmcdevs sdmmcvar.h src/sys/net [netbsd-9]: if_media.h Added Files: src/sys/dev/sdmmc [netbsd-9]: if_bwfm_sdio.h Log Message: Pull up following revision(s) (requested by mrg in ticket #717): sys/dev/fdt/dwcmmc_fdt.c 1.11 sys/dev/ic/bwfm.c 1.15-1.18 sys/dev/ic/bwfmreg.h 1.4-1.6 sys/dev/ic/bwfmvar.h 1.4,1.5 sys/dev/ic/dwc_mmc.c 1.21,1.22 sys/dev/ic/dwc_mmc_reg.h 1.8,1.9,1.12,1.13 sys/dev/pcmcia/pcmciareg.h 1.11 sys/dev/sdmmc/if_bwfm_sdio.c 1.4,1.6-1.12 sys/dev/sdmmc/if_bwfm_sdio.h 1.1,1.2 sys/dev/sdmmc/sdhc.c 1.105,1.106 sys/dev/sdmmc/sdmmc.c 1.37,1.39 sys/dev/sdmmc/sdmmc_cis.c 1.6,1.8 sys/dev/sdmmc/sdmmc_io.c 1.15-1.19 sys/dev/sdmmc/sdmmc_ioreg.h 1.4,1.5 sys/dev/sdmmc/sdmmc_mem.c 1.69-1.71 sys/dev/sdmmc/sdmmcdevs 1.5-1.8 sys/dev/sdmmc/sdmmcvar.h 1.31,1.33,1.34 sys/net/if_media.h 1.66 Add Broadcom devices - Fix typo - add PCMCIA_CISTPL_SDIO definition. - >From OpenBSD: - move event handling to workqueue - check for save/restore capability - Tag work queue as MPsafe and increase length. - Juse use bpf_mtap(), the 802.11 encapsulation is handled by firmware. - >From OpenBSD: - support block length per function - add functions to read/write regions - Decode (but not use) SDIO tuple in CIS. - Fix locking. - Add more SDIO defines (partially from version 3.0). - >From OpenBSD: - All the missing pieces (firmware load, chip setup, protocol handling) TX queue and interrupt handling via sdmmc_task. - Fix locking. - Fix packet parsing. - Add parser for original firmware config files. - tagging work queue as MPSAFE was premature. Revert. - SD_IO_RW_EXTENDED is a data transfer command, so set ADTC flag instead of AC Use correct function to verify if a task has been queued. Avoids race that can corrupt the task queue. - More register definitions. - Add IFM_IEEE80211_VHT subtype, IFM_IEEE80211_11AC operating mode, and missing descriptions - If firmware is connected in HT or VHT mode, report it to SIOCGIFMEDIA - white space police. Skip setting power when the voltage doesn't change. Also increase some timeouts. - Add and use sdmmc_pause to avoid long-term busy waits. - Add sdio abort function. - Additional error messages. - Print parameters for SDIO devices. - Minor cosmetics. - Simplyfy sdmmc_io_set_blocklen function signature by dropping the extra softc pointer. Aligns with OpenBSD. - Missing commit for sdio abort function. - More code from OpenBSD - no need to splnet() when enqueing packets - explicit structure padding - make internal functions static - also prepare for GPIO interrupts. - Avoid warnings for tautological shifts as sole conditional. - Follow the Linux driver an use the FDT "compatible" property to build a filename for the nvram config file, fall back to the standard filename. E.g. [Caching 123 nodes and 1093 properties] compatible 73696e6f 766f6970 2c627069 2d6d322d "sinovoip,bpi-m2- 0010: 7a65726f 00...... ........ ........ zero" 0015: 616c6c77 696e6e65 722c7375 6e38692d "allwinner,sun8i- 0025: 68322d70 6c757300 ........ ........ h2-plus" interrupt-parent 00000001 ........ ........ ........ .... model 42616e61 6e612050 69204250 492d4d32 "Banana Pi BPI-M2 0010: 2d5a6572 6f00.... ........ ........ -Zero" name 00...... ........ ........ ........ "" serial-number 30326330 30303432 65636431 36376566 02c00042ecd167ef 0010: 00...... ........ ........ ........ . -rw-r--r-- 1 root wheel 875 Nov 2 12:06 brcmfmac43430-sdio.AP6212.txt lrwxr-xr-x 1 root wheel 29 Dec 30 16:19 brcmfmac43430-sdio.sinovoip,bpi-m2-zero.txt -> brcmfmac43430-sdio.AP6212.txt -rw-r--r-- 1 root wheel 874 Jun 30 2019 brcmfmac43430-sdio.raspberrypi,3-model-b.txt -rw-r--r-- 1 root wheel 1864 Jun 30 2019 brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt lrwxr-xr-x 1 root wheel 29 Dec 30 11:24 brcmfmac43455-sdio.raspberrypi,4-model-b-plus.txt -> brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt - Add product ID for Broadcom BCM43455 - Use correct firmware for BCM43456 - size check was backwards. - Be less noisy for some commands. - Fix DWC_MMC_INT_SDIO_INT bit - dwc_mmc fixes: - Rockchip uses a different SDIO int bit, so take this into consideration - Avoid unnecessary resets and always wait for resets to complete - kpause instead of delay while holding spinlock - Do not attempt autostop for SD_IO_RW_EXTENDED commands - Allow for sub-blklen byte counts for single block transfers - More SDIO stability and performance fixes To generate a diff of this commit: cvs rdiff -u -r1.8.2.1 -r1.8.2.2 src/sys/dev/fdt/dwcmmc_fdt.c cvs rdiff -u -r1.14 -r1.14.6.1 src/sys/dev/ic/bwfm.c cvs rdiff -u -r1.3 -r1.3.10.1 src/sys/dev/ic/bwfmreg.h cvs rdiff -u -r1.3 -r1.3.6.1 src/sys/dev/ic/bwfmvar.h cvs rdiff -u -r1.17.2.1 -r1.17.2.2 src/sys/dev/ic/dwc_mmc.c cvs rdiff -u -r1.7 -r1.7.8.1 src/sys/dev/ic/dwc_mmc_reg.h cvs rdiff -u -r1.8.2.1 -r1.8.2.2 src/sys/dev/ic/dwc_mmc_var.h cvs rdiff -u -r1.10 -r1.10.170.1 src/sys/dev/pcmcia/pcmciareg.h cvs rdiff -u -r1.3 -r1.3.8.1 src/sys/dev/sdmmc/if_bwfm_sdio.c cvs rdiff -u -r0 -r1.2.4.2 src/sys/dev/sdmmc/if_bwfm_sdio.h cvs rdiff -u -r1.103 -r1.103.2.1 src/sys/dev/sdmmc/sdhc.c cvs rdiff -u -r1.36 -r1.36.4.1 src/sys/dev/sdmmc/sdmmc.c cvs rdiff -u -r1.5 -r1.5.10.1 src/sys/dev/sdmmc/sdmmc_cis.c cvs rdiff -u -r1.14 -r1.14.4.1 src/sys/dev/sdmmc/sdmmc_io.c cvs rdiff -u -r1.3 -r1.3.2.1 src/sys/dev/sdmmc/sdmmc_ioreg.h cvs rdiff -u -r1.68 -r1.68.2.1 src/sys/dev/sdmmc/sdmmc_mem.c cvs rdiff -u -r1.4 -r1.4.4.1 src/sys/dev/sdmmc/sdmmcdevs cvs rdiff -u -r1.30 -r1.30.4.1 src/sys/dev/sdmmc/sdmmcvar.h cvs rdiff -u -r1.65 -r1.65.2.1 src/sys/net/if_media.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.