[U-Boot] [PATCH v1 4/7] board/ti/am335x: add support for beaglebone NOR Cape

Gupta, Pekon pekon at ti.com
Mon Jul 21 12:27:22 CEST 2014


>From: Tom Rini [mailto:tom.rini at gmail.com] On Behalf Of Rini, Tom
>>On Sat, Jul 05, 2014 at 12:35:14AM +0530, Pekon Gupta wrote:
>
>> This patch updates pin-mux for beaglebone NOR cape [1]
>> This cape has 128Mbits(16MBytes), x16, CFI compatible NOR Flash device.
>>
>> On Beaglebone, GPMC chip-select-0 is shared by both NAND and NOR capes,
>> so only one of them can be enabled at a time from board profile configs.
>>
>> [1] http://elinux.org/Beagleboardtoys:BeagleBone_128Mb_16-Bit_NOR_Module
>[snip]
>> @@ -200,73 +200,46 @@ static struct module_pin_mux nand_pin_mux[] = {
>>  	{OFFSET(gpmc_be0n_cle),	(MODE(0) | PULLDOWN_EN)},	   /* BE_CLE */
>>  	{-1},
>>  };
>> -#endif
>> -#if defined(CONFIG_NOR) && !defined(CONFIG_NOR_BOOT)
>> +#elif defined(CONFIG_NOR)
>>  static struct module_pin_mux bone_norcape_pin_mux[] = {
>> -	{OFFSET(lcd_data0), MODE(1) | PULLUDEN | RXACTIVE},     /* NOR_A0 */
>
>It _looks_ like this is jsut whitespace only.  Since that doesn't match
>the rest of the file, please don't do that.
>
Will be fixed in next version of this patch.

>[snip]
>>  #endif
>>
>>  #if defined(CONFIG_NOR_BOOT)
>> -static struct module_pin_mux norboot_pin_mux[] = {
>> -	{OFFSET(lcd_data1), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data2), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data3), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data4), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data5), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data6), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data7), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data8), MODE(1) | PULLUDDIS},
>> -	{OFFSET(lcd_data9), MODE(1) | PULLUDDIS},
>> -	{-1},
>> -};
>> -
>>  void enable_norboot_pin_mux(void)
>>  {
>> -	configure_module_pin_mux(norboot_pin_mux);
>> +	configure_module_pin_mux(bone_norcape_pin_mux);
>
>Did you boot test this?  The system requirements here are a bit strict
>and I don't know if we can just do what you're doing here...
>

Yes, this one is also tested on Beaglebone-Black with following change in
boards.cfg to enable NOR on Beaglebone-Black
diff --git a/boards.cfg b/boards.cfg
-Active  arm         armv7          am33xx      ti              am335x              am335x_boneblack                      am335x_evm:SERIAL1,CO
+Active  arm         armv7          am33xx      ti              am335x              am335x_boneblack                      am335x_evm:SERIAL1,CO

---------------------
U-Boot SPL 2014.07-00012-g0e5512a-dirty (Jul 21 2014 - 15:38:26)
reading u-boot.img
reading u-boot.img

U-Boot 2014.07-00012-g0e5512a-dirty (Jul 21 2014 - 15:38:26)

I2C:   ready
DRAM:  512 MiB
Flash: 16 MiB
MMC:   OMAP SD/MMC: 0, OMAP SD/MMC: 1
Using default environment

Net:   <ethaddr> not set. Validating first E-fuse MAC
cpsw, usb_ether
Hit any key to stop autoboot:  1  0 
U-Boot# 
U-Boot# flinfo

Bank # 1: CFI conformant flash (16 x 16)  Size: 16 MB in 128 Sectors
  AMD Standard command set, Manufacturer ID: 0x20, Device ID: 0x227E2100
  Advanced Sector Protection (PPB) enabled
  Erase timeout: 4096 ms, write timeout: 1 ms
  Buffer write timeout: 1 ms, buffer size: 64 bytes

  Sector Start Addresses:
  08000000   RO   08020000   RO   08040000   RO   08060000   RO   08080000   RO 
  080A0000   RO   080C0000   RO   080E0000   RO   08100000   RO   08120000   RO 
...
  08E60000   RO   08E80000   RO   08EA0000   RO   08EC0000   RO   08EE0000   RO 
  08F00000   RO   08F20000   RO   08F40000   RO   08F60000   RO   08F80000   RO 
  08FA0000   RO   08FC0000   RO   08FE0000   RO 
U-Boot#
---------------------


with regards, pekon


More information about the U-Boot mailing list