summaryrefslogtreecommitdiffstats
path: root/sys/dev/sdmmc/sdmmcvar.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Don't detach non-removable devices during resume on "sdhc* at acpi?".stsp2019-04-021-1/+2
| | | | | | Makes hibernate work with rootfs on built-in emmc storage. Tested on King Jim Portabook. ok deraadt@ kettenis@
* Allow passing the maximum size of a segment that a SD/MMC hostpatrick2018-12-291-1/+2
| | | | | | controller can handle for DMA tranfers, since not all support 64k. ok kettenis@
* Allow passing per-function cookies through the SD/MMC bus to SDIOpatrick2018-08-091-1/+3
| | | | | | | devices. This allows SDIO device drivers to read information from the ACPI or FDT tables. ok kettenis@
* Add hibernate IO path for sdmmc(4). This requires some help from thejmatthew2018-03-201-1/+6
| | | | | | | | sdmmc chipset driver, currently only implemented in sdhc(4), but mostly uses the regular path. sdhc(4) also needed the ability to perform IO while cold. ok deraadt@
* Add sdmmc_io_set_blocklen() which allows to set the block length of anpatrick2018-02-111-1/+3
| | | | | | | | SDIO function. This is necessary for some SDIO cards that need to be talked with using smaller block lengths than the maximum supported by the host controller. ok kettenis@
* Add sdmmc_io_read_region_1() and sdmmc_io_write_region_1() as anpatrick2018-02-111-1/+3
| | | | | | | | | interface for "reading memory" akin to the bus_space(9) API. The already existing multi interface is used for "reading FIFOs". The technical difference is that one always reads from the same address (FIFO) while the other increments the address while reading (memory). ok kettenis@
* Add Dual Data Rate support for eMMC at 52MHz.kettenis2016-05-051-1/+8
|
* Add high-speed support for SD cards. In theory this should double thekettenis2016-05-041-1/+2
| | | | | transfer rates to and from the card. In practice the improvement will be smaller, but I am seeing serious improvement in the read speeds.
* Add support for changing the bus width to the sdmmc subsystem and the sdhc(4)kettenis2016-05-011-1/+7
| | | | | | controller. Use this to switch SD cards to a 4-bit bus if they support it. ok deraadt@, jsg@
* Implement DMA support. Bits and pieces taken from NetBSD, but we onlykettenis2016-04-301-1/+9
| | | | | | | | | | | | support ADMA2. The older SDMA mode has too many limitations to be really usable. Gives us only moderate speed improvements, bus reduces the CPU load considerably. We will reap the full benefits once we implement wider bus widths and high speed modes. There is a remining issue with simultanious use of eMMC and external SD card on (some) Intel Bay Trail hardware. Still under investigation. ok patrick@, stsp@, deraadt@
* Add basic support for eMMC memory.rapha2013-09-121-1/+14
| | | | | | | | Heavily based on netbsd. Tested by dlg@, bcallah@ (sdhc), stsp@ (rstx) and me (ommmc). ok patrick@
* Fixed config_pending calls in sdmmc(4)uwe2011-11-101-1/+2
| | | | | | | | Root on SD/MMC card did not work reliably because the config_pending state was cleared too early. This change will clear config_pending only after the card discovery has actually completed once. ok deraadt@ drahn@
* Backout a bunch of my SCSI commits from c2k11. At least one of thesematthew2011-07-171-2/+2
| | | | | | is causing problems when trying to boot sparc64 from an isp(4). Verified to fix the sparc64/isp(4) regression by krw@; ok deraadt@
* Kludge around sdmmc(4)'s poor design: replace "struct scsi_link *"matthew2011-07-091-2/+2
| | | | | | with "struct scsibus_attach_args" in sdmmc_attach_args. ok krw@
* lockmgr -> rwlock conversionblambert2010-08-241-6/+4
| | | | | | | and with this, my adventure in sdmmc-land is over bikeshed is still banana-shaped ok oga@
* - fold several occurences of DEVNAME() into one located in sdmmcvar.h.jasper2010-08-191-2/+2
| | | | | | making DEVNAME() usage a lot more consistent. ok krw@
* Remove recursion from the sdmmc locking regime.blambert2009-04-071-1/+3
| | | | | | | | | In snaps for a while. Originally hacked on phessler@'s couch. Testing by many, input from jsg@ "I'm tired of seeing the Ms" deraadt@
* Let the sdmmc adapters tell the sdmmc layer how much sectors they canmiod2009-02-201-1/+3
| | | | | | | | transfer with one command. Build on this and the recent minphys() changes in the sdmmc layer to crank transfers at the maximum possible size instead of a sad DEV_BSIZE. Depending on your controller, this can speed up sdmmc I/O up to 2.5 times.
* Fix crash on zaurus when sd memory card plugged by providing an attachmentgrange2009-02-061-2/+2
| | | | structure that slave devices like sbt expect.
* Add support for SDHC cards on SDHC capable host controllers.jsg2009-01-091-1/+4
| | | | | | | Thanks to everyone who tested in particular jsing@ who found several problems in the initial diffs. ok dlg@ jsing@ miod@
* backout: would have been nice if this had been tested, to see that itderaadt2008-12-021-7/+1
| | | | crashes the moment a card is plugged in.
* Rework sdmmc locking to remove recursionblambert2008-11-241-1/+7
| | | | | | | Add SDMMC_ASSERT_LOCKED(), replacing many locking calls, and sprinkling the assertion to make sure that future changes don't catch us out "please commit" uwe@
* unbreak the zaurus kernel build by adding a missing headertodd2007-11-291-1/+2
| | | | co-discovered by robert@
* Add SDIO card interrupt handling codeuwe2007-05-311-1/+10
|
* Wait until an I/O function becomes ready after enabling it, and makeuwe2007-05-261-2/+5
| | | | sdmmc_io_rw_extended() non-incremental, by default.
* DHC automatically sends a CMD12 after multiple-block transfers, but otheruwe2007-03-181-1/+2
| | | | controllers don't. Put in a temporary hack for pxammc on Zaurus.
* Support the PXA27x SD/SDIO/MMC controller on Zaurusuwe2007-03-181-2/+7
| | | | | We use the suggested workaround for the problem E40 in the PXA27x errata sheet. Unfortunately this limits the bus speed to 9.75Mhz.
* move CSD/CID decoding to sdmmc_mem.cuwe2006-11-291-6/+1
|
* add ioctl hack to support the sdio(8) userland tooluwe2006-11-291-1/+19
|
* First and foremost, avoid an obious race between two or more processesuwe2006-07-181-16/+39
| | | | | | | | | | | | | | trying to get MMC commands through to the SD/MMC host controller via the emulated SCSI layer. This is achieved by ensuring exclusive access to the host controller for one process during any MMC command and during a sequence of commands at the sdmmc(4) layer. While at it, the command processing thread has been moved to sdmmc(4), so as to simplify the implementation of future host controller drivers. This should also pave the way for further cleanup of the code and for new drivers. Minor cleanups are included in this commit, as well.
* SDIO card identificationuwe2006-06-011-19/+93
|
* Support for standard SD host controllers like the Ricoh 5C822, a smalluwe2006-05-281-0/+127
generic bus layer, and SCSI emulation for SD/MMC memory cards.