mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-03 01:36:52 +09:00
ODROIDC:dtd: Managing single device tree for SDCARD or eMMC boot
In order to assign a boot media to SDHC block between SDCARD or eMMC, different two device tree have to be maintained. But this is risky to maintain. Hence add both properties of SDCARD and eMMC to each contoller, SDHC and SDIO, remove one of them in U-boot. Finally Linux kernel will have proper device tree with corresponding to boot deivce. Change-Id: I607575123f81e85d93c0c2613738e11f53892731 Signed-off-by: Dongjin Kim <tobetter@gmail.com>
This commit is contained in:
@@ -407,7 +407,7 @@ void root_func(){
|
||||
//$$ L2 PROP_STR = "gpio_dat3"
|
||||
//$$ L2 PROP_U32 = "card_type"
|
||||
emmc{
|
||||
status = "ok";
|
||||
status = "okay";
|
||||
port = <2>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200000>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
@@ -419,6 +419,41 @@ void root_func(){
|
||||
gpio_dat3 = "BOOT_3";
|
||||
card_type = <1>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */
|
||||
};
|
||||
|
||||
//$$ DEVICE="sd"
|
||||
//$$ L2 PROP_STR = "status"
|
||||
//$$ L3 PROP_U32 = "port"
|
||||
//$$ L2 PROP_STR = "pinname"
|
||||
//$$ L3 PROP_U32 = "ocr_avail"
|
||||
//$$ L2 PROP_STR 3 = "caps"
|
||||
//$$ L3 PROP_U32 = "f_min"
|
||||
//$$ L3 PROP_U32 = "f_max"
|
||||
//$$ L3 PROP_U32 = "f_max_w"
|
||||
//$$ L3 PROP_U32 = "max_req_size"
|
||||
//$$ L2 PROP_STR = "gpio_dat3"
|
||||
//$$ L2 PROP_STR = "jtag_pin"
|
||||
//$$ L2 PROP_STR = "gpio_cd"
|
||||
//$$ L2 PROP_STR = "gpio_ro"
|
||||
//$$ L2 PROP_U32 = "irq_in"
|
||||
//$$ L2 PROP_U32 = "irq_out"
|
||||
//$$ L2 PROP_U32 = "card_type"
|
||||
sd{
|
||||
status = "okay";
|
||||
port = <1>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
|
||||
pinname = "sd";
|
||||
ocr_avail = <0x200000>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_4_BIT_DATA","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED";
|
||||
f_min = <300000>;
|
||||
f_max = <50000000>;
|
||||
f_max_w = <50000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = "CARD_4";
|
||||
gpio_cd = "CARD_6";
|
||||
gpio_volsw = "GPIOAO_3";
|
||||
irq_in = <3>;
|
||||
irq_out = <5>;
|
||||
card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */
|
||||
};
|
||||
};
|
||||
|
||||
/// ***************************************************************************************
|
||||
@@ -485,6 +520,32 @@ void root_func(){
|
||||
irq_out = <5>;
|
||||
card_type = <5>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */
|
||||
};
|
||||
|
||||
//$$ DEVICE="emmc"
|
||||
//$$ L2 PROP_STR = "status"
|
||||
//$$ L3 PROP_U32 = "port"
|
||||
//$$ L2 PROP_STR = "pinname"
|
||||
//$$ L3 PROP_U32 = "ocr_avail"
|
||||
//$$ L2 PROP_STR 4 = "caps"
|
||||
//$$ L3 PROP_U32 = "f_min"
|
||||
//$$ L3 PROP_U32 = "f_max"
|
||||
//$$ L3 PROP_U32 = "f_max_w"
|
||||
//$$ L3 PROP_U32 = "max_req_size"
|
||||
//$$ L2 PROP_STR = "gpio_dat3"
|
||||
//$$ L2 PROP_U32 = "card_type"
|
||||
emmc{
|
||||
status = "okay";
|
||||
port = <5>; /**0:sdio_a, 1:sdio_b, 2:sdio_c, 3:sdhc_a, 4:sdhc_b, 5:sdhc_c */
|
||||
pinname = "emmc";
|
||||
ocr_avail = <0x200000>; /**VDD voltage 3.3 ~ 3.4 */
|
||||
caps = "MMC_CAP_8_BIT_DATA","MMC_CAP_MMC_HIGHSPEED","MMC_CAP_SD_HIGHSPEED", "MMC_CAP_NONREMOVABLE","MMC_CAP_ERASE", "MMC_CAP_HW_RESET"; // MMC_CAP_NEEDS_POLL -- for detect, MMC_CAP_NONREMOVABLE -- for eMMC/TSD
|
||||
caps2 = "MMC_CAP2_HS200_1_8V_SDR";
|
||||
f_min = <300000>;
|
||||
f_max = <150000000>;
|
||||
max_req_size = <0x20000>; /**128KB*/
|
||||
gpio_dat3 = "BOOT_3";
|
||||
card_type = <1>; /* 0:unknown, 1:mmc card(include eMMC), 2:sd card(include tSD), 3:sdio device(ie:sdio-wifi), 4:SD combo (IO+mem) card, 5:NON sdio device(means sd/mmc card), other:reserved */
|
||||
};
|
||||
};
|
||||
|
||||
/// ***************************************************************************************
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user