реклама на сайте
подробности

 
 
> boot LPC2478 STK from external flash
andybeg
сообщение May 25 2010, 11:33
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



была сабжевая отладочная платка, на её основе делаем свою, возникает вопрос возможно ли будет грузить uclinux с внешних банок памяти? c тех что сидят на чипселектах CS0 CS1 CS2 CS3, есть ли каконьть ман по подобному, понимаю это надо с u-boot повозиться
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
andybeg
сообщение May 28 2010, 12:53
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 133
Регистрация: 30-11-06
Пользователь №: 22 954



в lowlevel_init.c была найдена закомментированная функция, но её раскоментирование и вставка в инициалзацию схемы не решило проблемы sad.gif запись в NOR не производится

Код
/******************************************************************************

** Function name:        ConfigureEMC

**

** Descriptions:        Configure EMC for external SDRAM, NAND and NOR FLASH

** parameters:            None

** Returned value:    None

**

******************************************************************************/

void

ConfigureEMC(void)

{

    volatile unsigned int i, dummy = dummy;



//  SCS     &= ~0x00000002;

//  SCS     |= 0x00000002;

  EMC_CTRL = 0x00000001;

    PCONP   |= 0x00000800;        /* Turn on EMC PCLK */

  PINSEL4  = 0x50000000;

#ifdef USE_32_BIT_DATABUS

  PINSEL5  = 0x55010115;

  PINSEL7  = 0x55555555;

#else

  PINSEL5  = 0x05050555;

#endif

  PINSEL6  = 0x55555555;

  PINSEL8  = 0x55555555;

  PINSEL9  = 0x50555555;



  //all registers...

#ifdef USE_32_BIT_DATABUS

  EMC_DYN_RP     = 1;   //>20ns = 2 clk

  EMC_DYN_RAS    = 3;   //>45ns = 3 clk

  EMC_DYN_SREX   = 5;   //>80-100ns = 6 clk

  EMC_DYN_APR    = 1;   //

  EMC_DYN_DAL    = 5;   //2 clk

  EMC_DYN_WR     = 1;   //2 clk

  EMC_DYN_RC     = 5;   //>65ns = 4 clk

  EMC_DYN_RFC    = 5;   //>80-100ns = 6 clk

  EMC_DYN_XSR    = 5;   //>80-100ns = 6 clk

  EMC_DYN_RRD    = 1;   //>15ns = 1-2 clk

  EMC_DYN_MRD    = 1;   //2 clk

  EMC_DYN_RD_CFG = 1;   //or 1,2,3

    

  //

  EMC_DYN_RASCAS0 = 0x00000202;



  //

  EMC_DYN_CFG0 = 0x00005480;

#else

  EMC_DYN_RP     = 2;   //>20ns = 2 clk

  EMC_DYN_RAS    = 3;   //>45ns = 3 clk

  EMC_DYN_SREX   = 7;   //>80-100ns = 6 clk

  EMC_DYN_APR    = 2;   //

  EMC_DYN_DAL    = 5;   //2 clk

  EMC_DYN_WR     = 1;   //2 clk

  EMC_DYN_RC     = 5;   //>65ns = 4 clk

  EMC_DYN_RFC    = 5;   //>80-100ns = 6 clk

  EMC_DYN_XSR    = 7;   //>80-100ns = 6 clk

  EMC_DYN_RRD    = 1;   //>15ns = 1-2 clk

  EMC_DYN_MRD    = 2;   //2 clk

  EMC_DYN_RD_CFG = 1;   //or 1,2,3

    

  //

  EMC_DYN_RASCAS0 = 0x00000303;

    

  //

  EMC_DYN_CFG0 = 0x00000680;

#endif

    

  //wait 100mS

  delayMs(100);



  //Send command: NOP

  EMC_DYN_CTRL = 0x00000183;

    

  //wait 200mS

  delayMs(200);

    

  //Send command: PRECHARGE-ALL, shortest possible refresh period

  EMC_DYN_CTRL = 0x00000103;

  EMC_DYN_RFSH = 0x00000002;

    

  //wait 128 ABH clock cycles

  for(i=0; i<0x40; i++)

    asm volatile(" nop");

    

  //Set correct refresh period

  EMC_DYN_RFSH = 28;

    

  //Send command: MODE

  EMC_DYN_CTRL = 0x00000083;

    

  //Set mode register in SDRAM

#ifdef USE_32_BIT_DATABUS

  dummy = *((volatile unsigned int*)(SDRAM_BASE_ADDR | (0x22 << 11)));

#else

  dummy = *((volatile unsigned int*)(SDRAM_BASE_ADDR | (0x33 << 12)));

#endif



  //Send command: NORMAL

  EMC_DYN_CTRL = 0x00000000;



  //Enable buffer

  EMC_DYN_CFG0 |= 0x00080000;



  //initial system delay

  delayMs(1);



  EMC_STA_WAITWEN0  = 0x2;

  EMC_STA_WAITOEN0  = 0x2;

  EMC_STA_WAITRD0   = 0x1f;

  EMC_STA_WAITPAGE0 = 0x1f;

  EMC_STA_WAITWR0   = 0x1f;

  EMC_STA_WAITTURN0 = 0xf;

  EMC_STA_CFG0      = 0x00000081;



  EMC_STA_WAITWEN1  = 0x2;

  EMC_STA_WAITOEN1  = 0x2;

  EMC_STA_WAITRD1   = 0x8;

  EMC_STA_WAITPAGE1 = 0x1f;

  EMC_STA_WAITWR1   = 0x8;

  EMC_STA_WAITTURN1 = 0xf;

  EMC_STA_CFG1      = 0x00000080;



}


Код
lpc-2478-stk # fatload usb 0 0x80800000 romfs_5.img
reading romfs_5.img
........................................................

581632 bytes read
lpc-2478-stk # md 0x80800000
80800000: ffffffff ffffffff ffffffff ffffffff    ................
80800010: ffffffff ffffffff ffffffff ffffffff    ................
80800020: ffffffff ffffffff ffffffff ffffffff    ................
80800030: ffffffff ffffffff ffffffff ffffffff    ................
80800040: ffffffff ffffffff ffffffff ffffffff    ................
80800050: ffffffff ffffffff ffffffff ffffffff    ................
80800060: ffffffff ffffffff ffffffff ffffffff    ................
80800070: ffffffff ffffffff ffffffff ffffffff    ................
80800080: ffffffff ffffffff ffffffff ffffffff    ................
80800090: ffffffff ffffffff ffffffff ffffffff    ................
808000a0: ffffffff ffffffff ffffffff ffffffff    ................
808000b0: ffffffff ffffffff ffffffff ffffffff    ................
808000c0: ffffffff ffffffff ffffffff ffffffff    ................
808000d0: ffffffff ffffffff ffffffff ffffffff    ................
808000e0: ffffffff ffffffff ffffffff ffffffff    ................
808000f0: ffffffff ffffffff ffffffff ffffffff    ................
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- andybeg   boot LPC2478 STK from external flash   May 25 2010, 11:33
- - Совсем старый Бабай   А почему нельзя? Ведь сначала у вас грузиться U-Bo...   May 25 2010, 11:59
|- - andybeg   Цитата(Совсем старый Бабай @ May 25 2010, 15...   May 25 2010, 12:04
- - Совсем старый Бабай   Надо смотреть исходники загрузчика Посмотрю отпишу...   May 25 2010, 14:09
- - andybeg   мысли вслух ... в файле cmd_boot.c олимексовского ...   May 26 2010, 05:25
- - andybeg   вручную по ману, загружая обрз с флешки научился с...   May 26 2010, 06:36
- - Совсем старый Бабай   Для начала неплохо бы убедиться что в загрузчике п...   May 27 2010, 01:56
- - andybeg   спасибо, информативно грузится планируется из NOR ...   May 27 2010, 05:06
- - Совсем старый Бабай   А почему не FLASH? Насколько я помню, когда работа...   May 27 2010, 10:59
- - andybeg   ЦитатаА почему не FLASH? есть подозрение что флеша...   May 27 2010, 11:27
- - Совсем старый Бабай   Три файла патчи для u-boot. Почему три? Потому что...   May 27 2010, 11:34
- - andybeg   ЦитатаТри файла патчи для u-boot. сейчас попробую ...   May 27 2010, 12:16
- - andybeg   может чего не так сделал, команд у убута появилось...   May 27 2010, 13:20
- - Совсем старый Бабай   Отвечу завтра   May 27 2010, 15:10
- - andybeg   почитал Тревора Мартина и по нему получается что н...   May 28 2010, 07:57


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 00:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01399 секунд с 7
ELECTRONIX ©2004-2016