1 Star 0 Fork 0

softxing / RealtekCardReader

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

Realtek Card Reader Driver for macOS

Unleash the full potential of your SDXC UHS-I cards

Introduction

An unofficial macOS kernel extension for Realtek PCIe/USB-based SD card readers.
It uses the Linux driver as a reference implementation but is written from scratch and carefully designed for macOS to deliver the best performance.

Features

  • No compatibility layer
  • Supports SDSC/HC/XC cards
  • Supports the default and the high speed modes
  • Supports UHS-I SDR12/25/50/104 and DDR50 modes
  • Recognizable as a built-in card reader device*
  • Device-independent SD host driver stack

Notes:

Limitations

  • MMC cards are not supported
  • SD Express cards are not supported

Current Status

  • Last Updated: Dec 27, 2021
  • Reference: Linux Kernel 5.11
  • Driver Status: Pre-1.0 Beta (v0.9.6)
    • USB-based RTS5129, 5139 and 5179 card readers are now supported and should be working properly.
    • I/O performance and the overall driver stability are of the most concern at this moment.
  • Known Issues: Link

Supported Systems

  • macOS Monterey
  • macOS Big Sur
  • macOS Catalina
  • macOS Mojave

Notes:

  • Other systems are not tested yet.

Supported Devices

Series Device ID Name Supported Since Status
51X9 0x0BDA0129 RTS5129 USB 2.0/3.0 Card Reader Yes 0.9.5 Issues
51X9 0x0BDA0139 RTS5139 USB 2.0/3.0 Card Reader Yes 0.9.5 Issues
51X9 0x0BDA0140 RTS5179 USB 2.0/3.0 Card Reader Yes 0.9.5 Issues
5209 0x10EC5209 RTS5209 PCI Express Card Reader Yes 0.9.1 Issues
5227 0x10EC5227 RTS5227 PCI Express Card Reader Yes 0.9.3 Issues
5227 0x10EC522A RTS522A PCI Express Card Reader Yes 0.9.3 Issues
5228 0x10EC5228 RTS5228 PCI Express Card Reader Not Yet N/A Issues
5229 0x10EC5229 RTS5229 PCI Express Card Reader Yes 0.9.1 Issues
5249 0x10EC5249 RTS5249 PCI Express Card Reader Yes 0.9.0 Issues
5249 0x10EC524A RTS524A PCI Express Card Reader Yes 0.9.0 Issues
5249 0x10EC525A RTS525A PCI Express Card Reader Yes 0.9.0 Issues
5260 0x10EC5260 RTS5260 PCI Express Card Reader Yes 0.9.6 Issues
5261 0x10EC5261 RTS5261 PCI Express Card Reader Not Yet N/A Issues
8411 0x10EC5286 RTL8402 PCI Express Card Reader Yes 0.9.2 Issues
8411 0x10EC5287 RTL8411B PCI Express Card Reader Yes 0.9.2 Issues
8411 0x10EC5289 RTL8411 PCI Express Card Reader Yes 0.9.2 Issues

Notes:

  • By design, all listed devices are supported, and devices that have the same series share most of the controller code.
  • RTS525A has the highest priority than other chips, because that's the only chip available for me to test the driver.
  • If a device's support status is "Not Yet", its controller is not implemented yet.
  • Other Realtek USB card readers (e.g., RTS5138) conform to the USB Attached SCSI (UAS) protocol and therefore may be supported by the native driver.

Downloads

Boot Arguments

Please refer to this dedicated page to see all boot arguments.

Questions, Issues and Documentation

Users

Please read FAQs and Known Issues carefully before asking any questions.
Please use the issue template before submitting any code-level issues.
Please clearly indicate your chip model, device ID and revision number and attach the kernel log in your issue.
Please make sure that your kernel log is complete. Issues without any details will be closed and left unanswered.

Developers

You are welcome to submit pull requests to improve this driver.
Please read the code documentation to understand how each class/function is related to the Linux driver code and how to add support for other listed devices.
A detailed port note will be available later.

Discussion

A discussion thread is available on InsanelyMac.

Support

Writing a driver from scratch is hard and time consuming.
If you would like to support my work, please consider a donation.

Donate

References

Credits

Acknowledgements

I would like to acknowledge the following beta testers without whom support for USB-based card readers won't be available.

  • m0d16l14n1 for testing unstable, experimental builds to capture and fix a large number of issues.
  • Sherlocks for testing early builds to debug the timeout issues.
  • whatnameisit for testing early builds to debug the hardware initialization issues.
  • gnpaone for providing multiple comprehensive bug reports.

License

This project is licensed under BSD-3-Clause.
Copyright (C) 2021 FireWolf @ FireWolf Pl. All Rights Reserved.

BSD 3-Clause License Copyright (c) 2021, FireWolf @ FireWolf Pl. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

https://github.com/0xFireWolf/RealtekCardReader 展开 收起
C++
BSD-3-Clause
取消

发行版 (1)

全部

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/softxing/RealtekCardReader.git
git@gitee.com:softxing/RealtekCardReader.git
softxing
RealtekCardReader
RealtekCardReader
main

搜索帮助