Перейти к содержанию
    

U-boot и Linux на STM32

Пытаюсь запустить ucLinux на STM32F429

За основу взял проект от Emcraft.

Подправил в конфигах тайминги для своего чипа SDRAM и пытаюсь загрузить linux из u-boot.

В консоли получил:

 

U-Boot 2010.03 (Aug 31 2014 - 13:29:45)

CPU  : STM32F4 (Cortex-M4)
Freqs: SYSCLK=16MHz,HCLK=16MHz,PCLK1=16MHz,PCLK2=16MHz
Board: STM32F429-DISCOVERY Rev 1.A
DRAM:  32 MB
*** Warning - bad CRC, using default environment

Net:   STM32_MAC
Hit any key to stop autoboot:  0
## Booting kernel from Legacy Image at 08040000 ...
  Image Name:   Linux-2.6.33-arm1
  Image Type:   ARM Linux Kernel Image (uncompressed)
  Data Size:    772448 Bytes = 754.3 kB
  Load Address: 08020040
  Entry Point:  08020041
  Verifying Checksum ... OK
  Loading Kernel Image ... OK
OK

Starting kernel ...

UNHANDLED EXCEPTION: HARD FAULT
 R0    = 00000000  R1  = 00000ea6
 R2    = d0000000  R3  = 00000003
 R12   = 00000020  LR  = 0000dddd
 PC    = 08020040  PSR = 61000000

 

по этим данным что-то можно сказать о причине проблемы?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Странно, судя по этому:

 PC    = 08020040

Исключение произошло сразу после перехода на точку входа:

   Load Address: 08020040

 

Сам образ где лежит? во flash или через mac подгружаете? или еще с чего распаковываете?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Странно, судя по этому:

 PC    = 08020040

Исключение произошло сразу после перехода на точку входа:

   Load Address: 08020040

 

Сам образ где лежит? во flash или через mac подгружаете? или еще с чего распаковываете?

спасибо за ответ.

 

Образ лежит во флеши по адресу 08040000.

 

Я наверное я путаюсь сильно по неопытности, но, если я правильно понял, точка входа - это адрес куда грузится образ из флеш. Сейчас понял что если это так, то у меня образ с адреса 08040000 на флеш грузится в 08020000. Это чушь.

 

У меня на плате стоит SD-RAM на 32MB, в u-boot указал SYS_RAM_BASE 0xD0000000

Если я правильно понял, то надо указать точку входа как 0xD0000000.

Так?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...