aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/sdio
Commit message (Collapse)AuthorAgeFilesLines
* sdiob: Forward-declare struct sdio_funcJohn Baldwin2026-02-241-0/+2
| | | | | | | | | | Currently this happens as a side effect of the return type of sdio_get_function() in the expansion of __BUS_ACCESSOR, but this is fragile and can break if __BUS_ACCESSOR changes to define other functions first. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55351
* bus: Document special ranges of IVARsJohn Baldwin2026-02-171-1/+1
| | | | | | | | | | | | | Some IVAR indices are special in that they have global meaning across multiple buses where as other IVARs are always private to the local bus. Try to document this a bit and add constants for the various ranges to avoid future conflicts. This is a no-op, but IVAR indices are now generally defined as enums as that makes it easier to define them in terms of ranges. Reviewed by: imp, royger, andrew Differential Revision: https://reviews.freebsd.org/D54159
* sdio: add sdio_{read,write}_2Minsoo Choo2026-01-092-0/+32
| | | | | | | | This is equivalent of sdio_readw and sdio_writew in linuxkpi Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me> Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1951
* sdio: don't use CAM_PRIORITY_NONE for queued CCB-sAndriy Gapon2025-08-051-5/+2
| | | | | | | | | | | This is similar to changes done in other CAM drivers and fixes a panic because of a sanity check added in b4b166b8c46b. While here, remove unneeded ccb setup in sdiobdiscover. It's possible that ccb allocation in that function is not needed as well, but I wasn't sure about that. MFC after: 1 week
* newbus: replace leftover device unit wildcardsAhmad Khalifa2025-06-211-1/+1
| | | | | | Reviewed by: imp, jhb Approved by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D50913
* sdiodevs: add more vendors and devicesBjoern A. Zeeb2024-08-311-1/+31
| | | | | | | | | | | | | | Add IDs for Realtek, Atheros (QCA), and Mediatek. While I am not sure we'll ever support the ath10k and possibly mt76 SDIO devices, rtw88 ones can be found with SoCs (e.g. r2s-plus) and are actively being worked on. Update Broadcom/Cypress entries. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D46460
* newbus: globally replace device_add_child(..., -1) with DEVICE_UNIT_ANYWarner Losh2024-07-251-1/+1
| | | | Sponsored by: Netflix
* sys: Automated cleanup of cdefs and other formattingWarner Losh2023-11-271-1/+0
| | | | | | | | | | | | | | | | Apply the following automated changes to try to eliminate no-longer-needed sys/cdefs.h includes as well as now-empty blank lines in a row. Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/ Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/ Remove /\n+#if.*\n#endif.*\n+/ Remove /^#if.*\n#endif.*\n/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/ Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/ Sponsored by: Netflix
* cam: Minor opt_cam.h cleanupWarner Losh2023-11-061-3/+0
| | | | | | | | | | | | | | sys/cam/cam.h includes opt_cam.h, so none of the clients need to do this. cam.h does all the right dancing to conditionally include opt_cam.h only when it makes sense. It generally only matters when cam_debug.h is included (it must be included before that). Many of the stray opt_cam.h includes were after cam_debug.h which would be a problem were it not included in cam/cam.h. The other users of CAM options that aren't debug all already include cam/cam.h. Also trim unneeded sys/cdefs.h files from the files touched. Sponsored by: Netflix
* sys: Remove $FreeBSD$: one-line bare tagWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*\$FreeBSD\$$\n/
* sys: Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-161-1/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* sys: Remove $FreeBSD$: one-line .c patternWarner Losh2023-08-162-4/+0
| | | | Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
* sys: Remove $FreeBSD$: two-line .h patternWarner Losh2023-08-162-4/+0
| | | | Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
* sdio: Do not allow setting a block size if function doesn't support itEmmanuel Vadot2022-08-101-0/+3
|
* sdio: Always use increment address for read/write_4Emmanuel Vadot2022-08-101-2/+2
| | | | | | | | SDIO CMD53 (RW Extented) can either write to the same address (useful for FIFO) or auto increment the destination address (to write to multiple registers). It is more logical to have read/write_4 to use incremental mode and make other helper function for writing to a FIFO destination especially since most FIFO write/read will be 8bits based and not 32bits based.
* sdio: Change the sdio helper name and arg orderEmmanuel Vadot2022-08-102-12/+12
| | | | | | Do not use b/l but _1/_4 also address comes first and then data. This makes them closer to something like bus_space_{read,write} We have no users in the tree.
* Remove unused sdiob_devclass.John Baldwin2022-05-101-2/+1
|
* Create wrapper for Giant taken for newbusWarner Losh2021-12-101-2/+2
| | | | | | | | | | | Create a wrapper for newbus to take giant and for busses to take it too. bus_topo_lock() should be called before interacting with newbus routines and unlocked with bus_topo_unlock(). If you need the topology lock for some reason, bus_topo_mtx() will provide that. Sponsored by: Netflix Reviewed by: mav Differential Revision: https://reviews.freebsd.org/D31831
* sdiob: get the device_t from periph's pathWarner Losh2021-06-281-12/+9
| | | | | | | Use the new xpt_path_device to get the device_t using the periph's path. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30855
* sdio: clean up empty lines in .c and .h filesMateusz Guzik2020-09-011-8/+0
| | | | Notes: svn path=/head/; revision=365157
* Add SDIO support.Bjoern A. Zeeb2019-06-086-0/+1767
Add a CAM-Newbus SDIO support module. This works provides a newbus infrastructure for device drivers wanting to use SDIO. On the lower end while it is connected by newbus to SDHCI, it talks CAM using the MMCCAM framework to get to it. This also duplicates the usbdevs framework to equally create sdiodev header files with #defines for "vendors" and "products". Submitted by: kibab (initial work, see https://reviews.freebsd.org/D12467) Reviewed by: kibab, imp (comments on earlier version) MFC after: 6 weeks Relnotes: yes Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19749 Notes: svn path=/head/; revision=348805