The Acme Systems shipping office will be closed for holidays from 14 august to 22 august

Roadrunner technical documentation

Using the MMC0 bus instead of MMC1 on roadrunner

This article illustrates how to boot and run Linux from a microSD card wired on MMC0 bus instead on MMC1

Wirings

There are the wirings between the Roadrunner module and a microSD/miniSD or SD card

CPU line SD Signal SD Pin #
PA0 CLK 5
PA1 CMD 2
PA2 DATA 0 7
PA3 DATA 1 8
PA4 DATA 2 9
PA5 DATA 3 1
VCC 4
GND 3,6
PA13 CD

A 68 kOhm pull-up resistor must be wired on each of these lines:

  • DATA 0
  • DATA 1
  • DATA 2
  • DATA 3
  • CMD

The PA13 line must be wired on CD (Carrier detect) line if your microSD socket has this pin or fixed on GND if not.

Device tree binding

This is the device tree definition to use:

ahb {

    ...

    sdmmc0: sdio-host@a0000000 {
        bus-width = <4>;
        pinctrl-names = "default";
        no-1-8-v;
        non-removable;  
        pinctrl-0 = <&pinctrl_sdmmc0_default>;
        status = "okay";
    };

    sdmmc1: sdio-host@b0000000 {
        bus-width = <4>;
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_sdmmc1_default>;
    };

    ...


    apb {

        ...

        pinctrl_sdmmc0_default: sdmmc0_default {
            cmd_data {
                pinmux = <PIN_PA1__SDMMC0_CMD>,
                     <PIN_PA2__SDMMC0_DAT0>,
                     <PIN_PA3__SDMMC0_DAT1>,
                     <PIN_PA4__SDMMC0_DAT2>,
                     <PIN_PA5__SDMMC0_DAT3>;
                bias-disable;
            };

            ck_cd_rstn_vddsel {
                pinmux = <PIN_PA0__SDMMC0_CK>,
                     <PIN_PA13__SDMMC0_CD>;
                bias-disable;
            };
        };

        ...


    };

    ...


};

at91bootstrap config

To be compatible with boot from MMC0, at91bootstrap must be compiled with these flags configured inside the make menuconfig command (read Compiling AT91bootstrap)

Memory selection  --->
  Flash Memory Technology (SD card)  --->
    ( ) Dataflash
    (X) SD card

and

Memory selection  --->
    SD Card Configuration  --->
        SD Host Controller Select (On SDHC0)  --->
            (X) On SDHC0
            ( ) On SDHC1

Sergio Tanzilli
System designer, webmaster and Acme Systems co-founder

Personal email: tanzilli@acmesystems.it
Webpage: https://www.acmesystems.it
Github repositories: https://github.com/tanzilli and https://github.com/acmesystems
Telegram group dedicated to the Acme Systems boards: https://t.me/acmesystemssrl

Roadrunner technical documentation