Announcement

Collapse
No announcement yet.

SD Express Support Coming With The Linux 5.11 Kernel

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • SD Express Support Coming With The Linux 5.11 Kernel

    Phoronix: SD Express Support Coming With The Linux 5.11 Kernel

    Earlier this year work began on preparing SD Express card/host support for Linux and now with the Linux 5.11 kernel that will debut in early 2021 is this preliminary support...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I'm surprised that kernel-level support is needed. I had assumed that the card reader would speak PCI-E to the card, but then offer USB 3.1 or USB 3.2 gen2 2x2 (i.e. 10Gbps or 20Gbps USB 3) back to the host. Does it not look like things will be going in that direction? Directly speaking PCI-E to the card itself sounds like it could have all sorts of security implications, no?

    Comment


    • #3
      Originally posted by ctlansdown View Post
      I'm surprised that kernel-level support is needed.
      The commit message explains a bit more about why changes are needed to support SD Express:

      In the SD specification v7.10 the SD express card has been added. This new type of removable SD card, can be managed via a PCIe/NVMe based interface, while also allowing backwards compatibility towards the legacy SD interface.

      To keep the backwards compatibility, it's required to start the initialization through the legacy SD interface. If it turns out that the mmc host and the SD card, both supports the PCIe/NVMe interface, then a switch should be allowed.

      ...

      To deal with the switch to the PCIe/NVMe interface, the mmc host is required to implement a new host ops, ->init_sd_express(). Based on the initial communication between the host and the card, host->ios.timing is set to either MMC_TIMING_SD_EXP or MMC_TIMING_SD_EXP_1_2V, depending on if 1.2V is supported or not. In this way, the mmc host can check these values in its ->init_sd_express() ops, to know how to proceed with the handover.

      ...

      Comment

      Working...
      X