[sdio][dm] update for DM (#11078)

* [sdio][dm] import Kconfig for DM

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio] fixup IRQ and mmcsd threads' stack size default

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio][dm] Support DM mode

1. Support features read by DM.
2. Support regulator API in drivers.
3. Support send tuning option CMD.
4. Replace `switch_uhs_voltage` by `signal_voltage_switch`.

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [dm][sdhci] Cleanup the SDHCI

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio][dm] add new SDIO/SDHCI drivers

1. SDHCI support on PCI bus
2. Synopsys DesignWare MMC Family(MMIO/PCI)

Signed-off-by: GuEe-GUI <2991707448@qq.com>

---------

Signed-off-by: GuEe-GUI <2991707448@qq.com>
This commit is contained in:
GUI
2025-12-26 21:04:42 +08:00
committed by GitHub
parent 71d802c415
commit c6498b5f65
29 changed files with 7111 additions and 1813 deletions
+25 -16
View File
@@ -1,23 +1,32 @@
Import('RTT_ROOT')
from building import *
group = []
objs = []
if not GetDepend(['RT_USING_SDIO']):
Return('group')
cwd = GetCurrentDir()
src = Split("""
dev_block.c
dev_mmcsd_core.c
dev_sd.c
dev_sdio.c
dev_mmc.c
""")
list = os.listdir(cwd)
CPPPATH = [cwd + '/../include']
# The set of source files associated with this SConscript file.
path = [cwd + '/../include' , cwd + '/sdhci/include']
src = ['dev_block.c', 'dev_mmcsd_core.c', 'dev_sd.c', 'dev_sdio.c', 'dev_mmc.c']
if GetDepend('RT_USING_SDHCI'):
src += [os.path.join('sdhci', 'sdhci.c')]
src += [os.path.join('sdhci', 'fit-mmc.c')]
src += [os.path.join('sdhci', 'sdhci-platform.c')]
if GetDepend(['RT_USING_DM']):
src += ['dev_sdio_dm.c']
group = DefineGroup('DeviceDrivers', src, depend = ['RT_USING_SDIO'], CPPPATH = path)
if GetDepend('RT_USING_SDHCI'):
src += ['dev_sdhci.c', 'dev_sdhci_dm.c', 'dev_sdhci_host.c']
Return('group')
if GetDepend(['RT_USING_REGULATOR']):
src += ['dev_regulator.c']
group = DefineGroup('DeviceDrivers', src, depend = [''], CPPPATH = CPPPATH)
for d in list:
path = os.path.join(cwd, d)
if os.path.isfile(os.path.join(path, 'SConscript')):
objs = objs + SConscript(os.path.join(d, 'SConscript'))
objs = objs + group
Return('objs')