[U-Boot] Ask for help: Compulab CM-510 U-boot version: Load Kernel from SD-Card

Hello,
I am trying to boot the kernel image from SD-CARD (mmc0) in the CM-510 SoM(provided by Compulab) using the u-boot image provided by Compulab:
http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres
By default, it seems SD-Card is not enabled, so I think I have to configure right the MPP option.
I have searched over and over in the code sources, I have change some arrays defined in some files that are related to the MPP (pinmux) but nothing happens:
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.h:
* DB-88F6781-BP B0 */ #define DB_88AP510BP_B_MPP0_7 0x00000000 #define DB_88AP510BP_B_MPP8_15 0x00442000 #define DB_88AP510BP_B_MPP16_23 0x32334043 <--- #define DB_88AP510BP_B_MPP24_31 0x11111111 #define DB_88AP510BP_B_MPP32_39 0x11111111 #define DB_88AP510BP_B_MPP40_47 0x11111111 <--- #define DB_88AP510BP_B_MPP48_55 0x11111111 #define DB_88AP510BP_B_MPP56_63 0x00111111 #define DB_88AP510BP_B_OE_LOW (~((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT14)|(BIT15)|(BIT16)|(BIT18)|(BIT19))) #define DB_88AP510BP_B_OE_HIGH 0x0FFFFFFF #define DB_88AP510BP_B_OE_VAL_LOW ((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT16)|(BIT18)|(BIT19)) #define DB_88AP510BP_B_OE_VAL_HIGH 0x0
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.c: MV_BOARD_MPP_INFO db88f6781bpbInfoBoardMppConfigValue[] = {{{{ DB_88AP510BP_B_MPP0_7, DB_88AP510BP_B_MPP8_15, DB_88AP510BP_B_MPP16_23, DB_88AP510BP_B_MPP40_47 <------- }}}};
Anyone has faced this problem before? I really appreciate some kind of help.
Best regards,
Gabriel

Hi Gabriel,
Try fixing CM-A510 related code:
mvBoardEnvSpec.h
... ...
/* CM-A510 */ #define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040 #define CM_A510_MPP24_31 0x11111111 #define CM_A510_MPP32_39 0x11111111 #define CM_A510_MPP40_47 0x11111111 #define CM_A510_MPP48_55 0x11111111 #define CM_A510_MPP56_63 0x00111111
...
board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.c
... ... MV_BOARD_MPP_INFO cm_a510InfoBoardMppConfigValue[]
...
Regards,
Dmitry
On 03/03/2015 05:55 PM, Gabriel Dobato wrote:
Hello,
I am trying to boot the kernel image from SD-CARD (mmc0) in the CM-510 SoM(provided by Compulab) using the u-boot image provided by Compulab:
http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres
By default, it seems SD-Card is not enabled, so I think I have to configure right the MPP option.
I have searched over and over in the code sources, I have change some arrays defined in some files that are related to the MPP (pinmux) but nothing happens:
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.h:
- DB-88F6781-BP B0 */
#define DB_88AP510BP_B_MPP0_7 0x00000000 #define DB_88AP510BP_B_MPP8_15 0x00442000 #define DB_88AP510BP_B_MPP16_23 0x32334043 <--- #define DB_88AP510BP_B_MPP24_31 0x11111111 #define DB_88AP510BP_B_MPP32_39 0x11111111 #define DB_88AP510BP_B_MPP40_47 0x11111111 <--- #define DB_88AP510BP_B_MPP48_55 0x11111111 #define DB_88AP510BP_B_MPP56_63 0x00111111 #define DB_88AP510BP_B_OE_LOW (~((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT14)|(BIT15)|(BIT16)|(BIT18)|(BIT19)))
#define DB_88AP510BP_B_OE_HIGH 0x0FFFFFFF #define DB_88AP510BP_B_OE_VAL_LOW ((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT16)|(BIT18)|(BIT19))
#define DB_88AP510BP_B_OE_VAL_HIGH 0x0
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.c: MV_BOARD_MPP_INFO db88f6781bpbInfoBoardMppConfigValue[] = {{{{ DB_88AP510BP_B_MPP0_7, DB_88AP510BP_B_MPP8_15, DB_88AP510BP_B_MPP16_23, DB_88AP510BP_B_MPP40_47 <------- }}}};
Anyone has faced this problem before? I really appreciate some kind of help.
Best regards,
Gabriel _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

HI Dmitry,
Thank you very much for your answer!
I have tried it, but I get the same:
CM-A510>> mmc init CM-A510>> mmcinfo 0 Device: MV_SDHCI Manufacturer ID: 0 OEM: 0 Name: Tran Speed: 0 Rd Block Len: 0 MMC version 0.0 High Capacity: No Capacity: 0 Bus Width: 0-bit
In reference to peripherals, only is available USB and Ethernet 0 by default. I am searching in the sources just in case there is something else... but I am afraid I will not find something.
#define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040
By the way, how do you get that resgisters? In my case, I tried to define them as per as Marvell 88AP510 Specification reference. Is it the right place?
Best regards,
Gabriel
On 04/03/15 07:37, Dmitry Lifshitz wrote:
Hi Gabriel,
Try fixing CM-A510 related code:
mvBoardEnvSpec.h
... ...
/* CM-A510 */ #define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040 #define CM_A510_MPP24_31 0x11111111 #define CM_A510_MPP32_39 0x11111111 #define CM_A510_MPP40_47 0x11111111 #define CM_A510_MPP48_55 0x11111111 #define CM_A510_MPP56_63 0x00111111
...
board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.c
... ... MV_BOARD_MPP_INFO cm_a510InfoBoardMppConfigValue[]
...
Regards,
Dmitry
On 03/03/2015 05:55 PM, Gabriel Dobato wrote:
Hello,
I am trying to boot the kernel image from SD-CARD (mmc0) in the CM-510 SoM(provided by Compulab) using the u-boot image provided by Compulab:
http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres
By default, it seems SD-Card is not enabled, so I think I have to configure right the MPP option.
I have searched over and over in the code sources, I have change some arrays defined in some files that are related to the MPP (pinmux) but nothing happens:
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.h:
- DB-88F6781-BP B0 */
#define DB_88AP510BP_B_MPP0_7 0x00000000 #define DB_88AP510BP_B_MPP8_15 0x00442000 #define DB_88AP510BP_B_MPP16_23 0x32334043 <--- #define DB_88AP510BP_B_MPP24_31 0x11111111 #define DB_88AP510BP_B_MPP32_39 0x11111111 #define DB_88AP510BP_B_MPP40_47 0x11111111 <--- #define DB_88AP510BP_B_MPP48_55 0x11111111 #define DB_88AP510BP_B_MPP56_63 0x00111111 #define DB_88AP510BP_B_OE_LOW (~((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT14)|(BIT15)|(BIT16)|(BIT18)|(BIT19)))
#define DB_88AP510BP_B_OE_HIGH 0x0FFFFFFF #define DB_88AP510BP_B_OE_VAL_LOW ((BIT1)|(BIT2)|(BIT5)|(BIT7)|(BIT8)|(BIT10)|(BIT11)|(BIT16)|(BIT18)|(BIT19))
#define DB_88AP510BP_B_OE_VAL_HIGH 0x0
./board/marvell/mv_dove/dove_family/boardEnv/mvBoardEnvSpec.c: MV_BOARD_MPP_INFO db88f6781bpbInfoBoardMppConfigValue[] = {{{{ DB_88AP510BP_B_MPP0_7, DB_88AP510BP_B_MPP8_15, DB_88AP510BP_B_MPP16_23, DB_88AP510BP_B_MPP40_47 <------- }}}};
Anyone has faced this problem before? I really appreciate some kind of help.
Best regards,
Gabriel _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

Hi Gabriel,
On 03/04/2015 10:18 AM, Gabriel Dobato wrote:
HI Dmitry,
Thank you very much for your answer!
I have tried it, but I get the same:
CM-A510>> mmc init CM-A510>> mmcinfo 0 Device: MV_SDHCI Manufacturer ID: 0 OEM: 0 Name: Tran Speed: 0 Rd Block Len: 0 MMC version 0.0 High Capacity: No Capacity: 0 Bus Width: 0-bit
In reference to peripherals, only is available USB and Ethernet 0 by default. I am searching in the sources just in case there is something else... but I am afraid I will not find something.
#define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040
We forked from DB88AP510-A-P dev board code. Apply the patches from the latest CM-A510 U-Boot package (http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres) to see the changes log and build instructions.
By the way, how do you get that resgisters? In my case, I tried to define them as per as Marvell 88AP510 Specification reference. Is it the right place?
Best regards,
Gabriel
Regards,
Dmitry

Hi Dmitry,
Finally, I got the SD Card as a bootable kernel space. However I had to set the registers as below:
#define CM_A510_MPP0_7 0x00000033 (does not
matter)
#define CM_A510_MPP8_15 0x00445050 (does not
matter)
#define CM_A510_MPP16_23 0x33333333 <----
(SDIO0 and SDIO1)
Regards,
Gabriel
On 04/03/15 09:50, Dmitry Lifshitz wrote:
Hi Gabriel,
On 03/04/2015 10:18 AM, Gabriel Dobato wrote:
HI Dmitry,
Thank you very much for your answer!
I have tried it, but I get the same:
CM-A510>> mmc init CM-A510>> mmcinfo 0 Device: MV_SDHCI Manufacturer ID: 0 OEM: 0 Name: Tran Speed: 0 Rd Block Len: 0 MMC version 0.0 High Capacity: No Capacity: 0 Bus Width: 0-bit
In reference to peripherals, only is available USB and Ethernet 0 by default. I am searching in the sources just in case there is something else... but I am afraid I will not find something.
#define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040
We forked from DB88AP510-A-P dev board code. Apply the patches from the latest CM-A510 U-Boot package (http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres) to see the changes log and build instructions.
By the way, how do you get that resgisters? In my case, I tried to define them as per as Marvell 88AP510 Specification reference. Is it the right place?
Best regards,
Gabriel
Regards,
Dmitry

Hi Gabriel,
Sorry for the late reply. I see you made a progress with that issue.
Thank you for sharing the results.
Best regards,
Dmitry
On 03/05/2015 11:48 AM, Gabriel Dobato wrote:
Hi Dmitry,
Finally, I got the SD Card as a bootable kernel space. However I had to set the registers as below:
#define CM_A510_MPP0_7 0x00000033 (does not
matter)
#define CM_A510_MPP8_15 0x00445050 (does not
matter)
#define CM_A510_MPP16_23 0x33333333 <----
(SDIO0 and SDIO1)
Regards,
Gabriel
On 04/03/15 09:50, Dmitry Lifshitz wrote:
Hi Gabriel,
On 03/04/2015 10:18 AM, Gabriel Dobato wrote:
HI Dmitry,
Thank you very much for your answer!
I have tried it, but I get the same:
CM-A510>> mmc init CM-A510>> mmcinfo 0 Device: MV_SDHCI Manufacturer ID: 0 OEM: 0 Name: Tran Speed: 0 Rd Block Len: 0 MMC version 0.0 High Capacity: No Capacity: 0 Bus Width: 0-bit
In reference to peripherals, only is available USB and Ethernet 0 by default. I am searching in the sources just in case there is something else... but I am afraid I will not find something.
#define CM_A510_MPP0_7 0x00000033 #define CM_A510_MPP8_15 0x00445050 #define CM_A510_MPP16_23 0x66664040
We forked from DB88AP510-A-P dev board code. Apply the patches from the latest CM-A510 U-Boot package (http://www.compulab.co.il/products/computer-on-modules/cm-a510/#devres) to see the changes log and build instructions.
By the way, how do you get that resgisters? In my case, I tried to define them as per as Marvell 88AP510 Specification reference. Is it the right place?
Best regards,
Gabriel
Regards,
Dmitry
participants (2)
-
Dmitry Lifshitz
-
Gabriel Dobato