cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F4x9 SDIO Linux Driver

bmh
Associate II
Posted on April 13, 2016 at 21:22

Dear All,

I'm working on porting Linux MMCI(http://lxr.free-electrons.com/source/drivers/mmc/host/mmci.c) driver to run on STM32.

AFIAK STM32F4x9 has one ARM PrimeCell 180 and the driver uses Peripheral Identification Registers from ARM manual (http://infocenter.arm.com/help/topic/com.arm.doc.ddi0172a/DDI0172.pdf) from base address + 0xFE0.

It seems ST32F4 does not have access to these addresses once the SDIO register map at STM32F4 reference manual is only 1kB, but from ARM it should be 4kB. Does anyone have any clue how to read the Peripheral Identification Registers from SDIO peripheral at STM32F4?

#stm32-sdio
2 REPLIES 2
Posted on April 13, 2016 at 23:15

I'd assume ST has a bunch of their own IP, and that you'll have to port the driver to the hardware that is actually described.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
bmh
Associate II
Posted on April 14, 2016 at 02:42

Hi Clive, 

I meant STM32 SDIO peripheral is based on PL180, you can compare both address and register and will they are the same up to the point of the Peripheral ID. 

The guys from emcraft just hardcoded some ID at uclinux port (https://github.com/EmcraftSystems/linux-emcraft/blob/master/arch/arm/mach-stm32/sdcard.c#L48) 

I was wondering if is there a way to read it and if not where this ID came from?

br.,