1d6644679SSascha Wildner.\" 2d6644679SSascha Wildner.\" Copyright (c) 2008 Alexander Motin <mav@FreeBSD.org> 3d6644679SSascha Wildner.\" All rights reserved. 4d6644679SSascha Wildner.\" 5d6644679SSascha Wildner.\" Redistribution and use in source and binary forms, with or without 6d6644679SSascha Wildner.\" modification, are permitted provided that the following conditions 7d6644679SSascha Wildner.\" are met: 8d6644679SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 9d6644679SSascha Wildner.\" notice, this list of conditions and the following disclaimer. 10d6644679SSascha Wildner.\" 2. The name of the author may not be used to endorse or promote products 11d6644679SSascha Wildner.\" derived from this software without specific prior written permission. 12d6644679SSascha Wildner.\" 13d6644679SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14d6644679SSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15d6644679SSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16d6644679SSascha Wildner.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17d6644679SSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18d6644679SSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19d6644679SSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20d6644679SSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21d6644679SSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22d6644679SSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23d6644679SSascha Wildner.\" SUCH DAMAGE. 24d6644679SSascha Wildner.\" 25d6644679SSascha Wildner.\" $FreeBSD: src/share/man/man4/sdhci.4,v 1.2 2009/01/16 19:28:25 mav Exp $ 26d6644679SSascha Wildner.\" 274f67f60cSImre Vadász.Dd May 13, 2017 28d6644679SSascha Wildner.Dt SDHCI 4 29d6644679SSascha Wildner.Os 30d6644679SSascha Wildner.Sh NAME 31d6644679SSascha Wildner.Nm sdhci 32d6644679SSascha Wildner.Nd PCI SD Host Controller bridge driver 33d6644679SSascha Wildner.Sh SYNOPSIS 34d6644679SSascha WildnerTo compile this driver into the kernel, place the following lines in your 35d6644679SSascha Wildnerkernel configuration file: 36d6644679SSascha Wildner.Bd -ragged -offset indent 37d6644679SSascha Wildner.Cd "device mmc" 38d6644679SSascha Wildner.Cd "device mmcsd" 39d6644679SSascha Wildner.Cd "device sdhci" 40d6644679SSascha Wildner.Ed 41d6644679SSascha Wildner.Pp 42d6644679SSascha WildnerAlternatively, to load the driver as a module at boot time, place the 43d6644679SSascha Wildnerfollowing lines in 44d6644679SSascha Wildner.Xr loader.conf 5 : 45d6644679SSascha Wildner.Bd -literal -offset indent 46d6644679SSascha Wildnermmc_load="YES" 47d6644679SSascha Wildnermmcsd_load="YES" 484f29f02bSImre Vadászsdhci_pci_load="YES" 49d6644679SSascha Wildner.Ed 50d6644679SSascha Wildner.Sh DESCRIPTION 51d6644679SSascha WildnerThe 52d6644679SSascha Wildner.Nm 53d6644679SSascha Wildnerdriver supports PCI devices with class 8 and subclass 5 according to 54d6644679SSascha WildnerSD Host Controller Specification. 55d6644679SSascha WildnerDriver supports up to six high speed 4bit MMC/SD slots per controller. 56d6644679SSascha WildnerDriver attaches mmc bus to the respective slot on card insertion and 57d6644679SSascha Wildnerdetaches it on card removing. 58d6644679SSascha Wildner.Sh HARDWARE 59d6644679SSascha WildnerThe 60d6644679SSascha Wildner.Nm 61d6644679SSascha Wildnerdriver supports different specification compatible chips. The following 62d6644679SSascha Wildnerchips have been verified to work: 63d6644679SSascha Wildner.Pp 64d6644679SSascha Wildner.Bl -bullet -compact 65d6644679SSascha Wildner.It 66d6644679SSascha WildnerENE CB712 67d6644679SSascha Wildner.It 68d6644679SSascha WildnerENE CB714 69d6644679SSascha Wildner.It 70d6644679SSascha WildnerRICOH R5C822 71d6644679SSascha Wildner.It 72c2a650d8SMarkus PfeifferRICOH R5CE823 73c2a650d8SMarkus Pfeiffer.It 74d6644679SSascha WildnerTI PCIXX21/XX11 75d6644679SSascha Wildner.El 764f67f60cSImre Vadász.Sh LOADER TUNABLES 774f67f60cSImre Vadász.Bl -tag -width indent 784f67f60cSImre Vadász.It Va hw.sdhci.debug 794f67f60cSImre VadászSet verbose debugging level. 804f67f60cSImre VadászLevels 0 to 3 are currently used. 814f67f60cSImre Vadász.It Va hw.sdhci.adma2_test 824f67f60cSImre VadászSet to 1 to allow using ADMA2 transfer mode on untested controller models. 834f67f60cSImre Vadász.It Va hw.sdhci.sdma_disable 844f67f60cSImre VadászSet to 1 to disable the SDMA transfer mode. 854f67f60cSImre Vadász.It Va hw.sdhci.adma2_disable 864f67f60cSImre VadászSet to 1 to disable the ADMA2 transfer mode. 87*7ba10b88SImre Vadász.It Va hw.sdhci.quirk_clear 88*7ba10b88SImre VadászSet bit mask of quirks to clear. 89*7ba10b88SImre Vadász.It Va hw.sdhci.quirk_set 90*7ba10b88SImre VadászSet bit mask of quirks to set, this is applied after the clearing mask. 914f67f60cSImre Vadász.El 92d6644679SSascha Wildner.Sh SEE ALSO 93d6644679SSascha Wildner.Xr mmc 4 , 94d6644679SSascha Wildner.Xr mmcsd 4 95d6644679SSascha Wildner.Rs 96d6644679SSascha Wildner.%T "SD Specifications, Part 2, SD Host Controller, Simplified Specification" 97d6644679SSascha Wildner.Re 98d6644679SSascha Wildner.Sh HISTORY 99d6644679SSascha WildnerThe 100d6644679SSascha Wildner.Nm 101d6644679SSascha Wildnerdriver was imported from 102d6644679SSascha Wildner.Fx 103d6644679SSascha Wildnerinto 104c2a650d8SMarkus Pfeiffer.Dx 2.7 105c2a650d8SMarkus Pfeifferand updated by 106c2a650d8SMarkus Pfeiffer.An Markus Pfeiffer Aq Mt profmakx@dragonflybsd.org . 107d6644679SSascha Wildner.Sh AUTHORS 108e18a87e3SFranco Fichtner.An Alexander Motin Aq Mt mav@FreeBSD.org 109d6644679SSascha Wildner.Sh BUGS 110d6644679SSascha WildnerMany of existing SD controller chips have some nonstandard requirements, 111d6644679SSascha Wildnerproprietary registers and hardware bugs, requiring additional handling. 112d6644679SSascha WildnerENE chips are handled to work fine, while some revisions of RICOH and TI 113c2a650d8SMarkus Pfeiffercontrollers still do not see cards without some additional initialization. 114