Commit graph

8 commits

Author SHA1 Message Date
Emmanuel Vadot
49da0242e7 sdio: Do not allow setting a block size if function doesn't support it 2022-08-10 22:07:24 +02:00
Emmanuel Vadot
1ee7a80492 sdio: Always use increment address for read/write_4
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.
2022-08-10 22:07:23 +02:00
Emmanuel Vadot
b9db5e0a8f sdio: Change the sdio helper name and arg order
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.
2022-08-10 22:07:23 +02:00
John Baldwin
0018a3041d Remove unused sdiob_devclass. 2022-05-10 10:21:39 -07:00
Warner Losh
c6df6f5322 Create wrapper for Giant taken for newbus
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
2021-12-09 17:04:45 -07:00
Warner Losh
fdd60a97da sdiob: get the device_t from periph's path
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
2021-06-28 16:13:02 -06:00
Mateusz Guzik
00d927f34a sdio: clean up empty lines in .c and .h files 2020-09-01 21:53:58 +00:00
Bjoern A. Zeeb
67ca7330cf Add SDIO support.
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
2019-06-08 16:26:56 +00:00