rtsx(4)

rtsx4

Realtek sd card reader

Usage

To compile this driver into the kernel, place the following lines in the kernel configuration file:

device mmc device mmcsd device rtsx

Alternatively, to load the driver as a module at boot time, place the following lines in loader.conf(5):

mmc_load="YES"
mmcsd_load="YES"
rtsx_load="YES"

Overview

The rtsx driver provides support for Realtek SD card reader. Driver attaches mmc bus on card insertion and detaches it on card removing.

Hardware

The rtsx driver supports the following Realtek SD card readers:

  • RTS5209

  • RTS5227

  • RTS5229

  • RTS522A

  • RTS525A

  • RTS5260

  • RTL8411B

  • RTS5249 (unverified)

  • RTL8402 (unverified)

  • RTL8411 (unverified)

Contributors

Lutz Bichler ⟨[email protected]⟩

Debugging information

dev.rtsx.0.debug_mask can be set with the following masks:

  • 0x01 - to show the basic flow of the driver,

  • 0x02 - to trace the SD commands,

  • 0x04 - to trace the tuning phase.

Releases

15 releases since FreeBSD 13.0-RELEASE; the text changed 5 times.

  1. 13.0
  2. 13.1
  3. 13.2
  4. 13.3–14.3
  5. 14.4–15.1
  6. 16.0

History

The rtsx driver appeared in FreeBSD 13.0 and was ported from OpenBSD with modifications found in Linux and NetBSD.

Authors

Henri Hennebert ⟨[email protected]⟩ Gary Jennejohn ⟨[email protected]⟩ Jesper Schmitz Mouridsen ⟨[email protected]⟩

Bugs

  • RTS522A on Lenovo T470p, card detection and read-only switch are reversed. This is solved by adding in loader.conf(5):

    dev.rtsx.0.inversion=1

    The driver tries to automate those exceptions. If this automation is wrong, it can be avoided by adding in loader.conf(5):

    dev.rtsx.0.inversion=0

  • Mounting a filesystem with write access on a card write protected may involve a kernel crash.

  • Suspend/Resume do not work under MMCCAM.

  • For some chips (e.g. RTS5260) after devctl disable/enable or kldunload/kldload the driver can't detect a card correctly.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.