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

Добрый день!

Пытаюсь запустить AM1705 уже который день. Плата и схема моего же производства.

Скачал OMAP-L137_FlashAndBootUtils_2_20. Откомпилировал благополучно.

Установил частоту 300Mhz, тайминги памяти, частоту uartа. (device.c, device_uart.c)

Установил strapы в BOOTMODE UART2.

При старте выдает BOOTME.

Пытаюсь стереть флешку командой:

sfh_OMAP-L137.exe -v -p COM1 -targetType AM1707 -erase -flashType SPI_MEM

Прошивка благополучно передается по UART и застревает на

(AIS Parse): AIS complete. Jump to address 0x80000000.
(AIS Parse): Waiting for DONE...
(AIS Parse): Boot completed successfully.

Waiting for SFT on the OMAP-L137...

 

Осциллографом не видно SDRAM clk - делаю вывод что до инициализации памяти дело не доходит, застревает раньше.

Питание процессора подаю вручную тумблерами (сначала 1.2 потом 3.3).

Не подаю питание 1.2 и 1.8 на USB так как не буду его использовать. Думал из-за этого не работает. Пробовал в инициализации PSC не включать USB.

void DEVICE_PSCInit()
{
...
//  for( i = 1; i <= 13; i++ )
  for( i = 2; i <= 13; i++ )
    PSC1->MDCTL[i] = (PSC1->MDCTL[i] & 0xFFFFFFE0) | PSC_ENABLE;
...
}

Не помогает.

Есть jtag SAU510-USB но его подключить так и не смог. CCS4.1.2 ругается и не конектится к процессору. (не завел на плате RTCK, может из за этого)

Посоветуйте хотя бы в каком направлении двигаться с этим черным ящиком, который только BOOTME выдавать может.

Изменено пользователем Славка

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


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

Добрый день!

Пытаюсь запустить AM1705 уже который день. ...

sfh_OMAP-L137.exe -v -p COM1 -targetType AM1707 -erase -flashType SPI_MEM

 

А может все дело в том, что в команде Вы указали другой процессор (AM1707 вместо AM1705)?

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


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

А может все дело в том, что в команде Вы указали другой процессор (AM1707 вместо AM1705)?

AM1705 указать для sfh нельзя.

Как такового софта UBL для AM1705 нет. 1707 отличается только наличием LCD и 32-битным SDRAM.

И по регистрам они сходятся почти. Потому народ использует UBL от 1707 для 1705 изменив только SDCFG регистра для 16-бит памяти.

http://e2e.ti.com/support/dsp/omap_applications_processors/f/42/t/107883.aspx

Все это мои домыслы и чтение форумов. Как оно на самом деле я не знаю, так как процессор до сих пор не запущен.

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


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

Посоветуйте хотя бы в каком направлении двигаться с этим черным ящиком, который только BOOTME выдавать может.

Грузите u-boot через UART, дальше работайте через него. Ну, можно еще свою программку написать на предмет проверки памяти и прочего.

 

P.S. С SFH я как-то не подружился. AISGen + UART Boot Host для жизни вполне достаточно.

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


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

Грузите u-boot через UART, дальше работайте через него. Ну, можно еще свою программку написать на предмет проверки памяти и прочего.

 

P.S. С SFH я как-то не подружился. AISGen + UART Boot Host для жизни вполне достаточно.

Написал hello world для проца. Загружаю прогу через Uart Boot Host. Когда в AisGenе выставляю Configure PLL

(AIS Parse): Processing command 1: 0x58535901.
(AIS Parse): Performing Opcode Sync...
(Serial Port): Read error! (The operation has timed out.)
(AIS Parse): I/O Error in read!
(Serial Port): Read error! (The operation has timed out.)
(AIS Parse): I/O Error in read!
(Serial Port): Read error! (The operation has timed out.)
(AIS Parse): I/O Error in read!
(Serial Port): Read error! (The operation has timed out.)
(AIS Parse): I/O Error in read!

Когда не выставляю прошивка благополучно передается (но не запускается, я в ней ничего не инициализирую, кроме uartа). В чем проблема? Кварц 25 МГц. Пробовал обе установки:12-1-3-3-6 (300, 300, 100, 100, 50 МГц) 24-2-3-3-6 (600,300, 100, 100, 50МГц)

 

 

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


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

Добрый день всем!

Решил проблему. Застревал процессор по непонятным причинам. Очень много над ним издевался и эксперементировал. Плата не выдержала мучений (дорожки начали отваливаться от множества перепаек). Решил спаять новую, с новыми деталями, все по минимуму - проц, питание, разъем uart и кварц. UBL запустился сразу, без ошибок. Решил конвертнуть в AIS uboot. Пришлось немного пошаманить с кодом (у меня UART0 вместо UART2, другая память, другой кварц). Uboot благополучно запустился через UART. Чему я несказанно рад.

Вопрос в следущем. Процессор очень прилично греется, через минуту-две палец на нем не удержать. Так и должно быть после загрузки uboot?

 

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


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

Можно попросить Вас прислать мне принципиальную схему включения процессора (из минимального набора) на почту [email protected] (Для личных сообщений я пока еще рейтингом не вышел). У меня похоже тоже проблема в схеме зарыта, но найти пока не удаеться.

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


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

Можно попросить Вас прислать мне принципиальную схему включения процессора (из минимального набора) на почту [email protected] (Для личных сообщений я пока еще рейтингом не вышел). У меня похоже тоже проблема в схеме зарыта, но найти пока не удаеться.

Выслал.

 

Первая плата не запускалась из-за спаленной микросхемы phy. Почему уровни на выводах RMII интерфейса влияют на старт PLL одному TI известно. Когда начал дальше собирать плату опять спалил phy (ошибка в схеме) и опять нихрена не грузилось. Отпаял физику заработало. Исправил ошибку, припаял новую физику, все заработало. Никогда не используйте 1.8В от micrel KSZ8041TL под свои нужды) Наш разводчик решил сэкономить. Имея отдельный источник 1.8В, он завел микреловский на развязывающий транс. Влом было дорожку протянуть, ну а я проглядел :rolleyes:

 

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


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

Выслал.

 

Первая плата не запускалась из-за спаленной микросхемы phy. Почему уровни на выводах RMII интерфейса влияют на старт PLL одному TI известно. Когда начал дальше собирать плату опять спалил phy (ошибка в схеме) и опять нихрена не грузилось. Отпаял физику заработало. Исправил ошибку, припаял новую физику, все заработало. Никогда не используйте 1.8В от micrel KSZ8041TL под свои нужды) Наш разводчик решил сэкономить. Имея отдельный источник 1.8В, он завел микреловский на развязывающий транс. Влом было дорожку протянуть, ну а я проглядел :rolleyes:

 

Спасибо Вам, Вячеслав. Оказалось, что проблема была в том, что вывод TRST я подтянул к питанию, а не к земле, хотя делал все исходя из описания POR и Warm Reset. Теперь буду пытаться прошить UBL и u-boot.

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


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

Спасибо Вам, Вячеслав. Оказалось, что проблема была в том, что вывод TRST я подтянул к питанию, а не к земле, хотя делал все исходя из описания POR и Warm Reset. Теперь буду пытаться прошить UBL и u-boot.

Да пожалуйста!

TRST внутренне подтянут к земле, и в принципе без внешнего резистора все прекрасно работает. Но где-то на ti.wiki нашел, что желательно его подтянуть внешним резстором.

Если будут вопросы спрашивайте здесь, а не через почту. В интернете так мало информации по этим процессорам, тем более на русском. Из-за этого я потратил уйму времени, чтоб его запустить. Думаю, пока это один из моих текущих прожектов на работе, и все в памяти, смогу помочь.

 

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


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

Добрый день!

Добрался я до загрузки Linux.

Гружусь c SPI Flash сразу U-boot. В инициализации отключил всю перефирию, что не использую.

(PSC0 - 0,1,2,4,6,9,10,11,12,13,14 PSC1 - 3,5,6,24,25,26,31)

Гружу линух через tftp:

U-Boot 2009.11 (РћРєС‚ 27 2011 - 15:45:48)

DRAM:  16 MB
In:    serial
Out:   serial
Err:   serial
ARM Clock : 300000000 Hz
Net:   88E6165 Initialized on daveth0
Can't overwrite "ethaddr"

Hit any key to stop autoboot:  0
U-Boot > tftp 0xc0800000 uImage
Using  device
TFTP from server 10.64.28.10; our IP address is 10.64.28.5
Filename 'uImage'.
Load address: 0xc0800000
Loading: #################################################################
         ##############################################
done
Bytes transferred = 1626140 (18d01c hex)
U-Boot > bootm 0xc0800000
## Booting kernel from Legacy Image at c0800000 ...
   Image Name:   Linux-2.6.33-rc4
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    1626076 Bytes =  1.6 MB
   Load Address: c0008000
   Entry Point:  c0008000
   Verifying Checksum ... OK
   Loading Kernel Image ...

U-Boot 2009.11 (РћРєС‚ 27 2011 - 15:45:48)

DRAM:  16 MB
In:    serial
Out:   serial
Err:   serial
ARM Clock : 300000000 Hz
Net:   88E6165 Initialized on daveth0
Can't overwrite "ethaddr"

Hit any key to stop autoboot:  0
U-Boot >

Как видно проц уходит в резет после Loading Kernel Image ...

Никакой debug включить не получается. У меня UART0 вместо UART2.

Исправил везде, где нашел UART2 на UART0:

1. bootargs mem=16M console=ttyS0,115200n8

2. debug_macro.S:

orr    \rx, \rx, #0x00C40000    @ physical base address
orr    \rx, \rx, #0x00002000    @ of UART 0

3. board-da830-evm.c:

static int __init da830_evm_console_init(void)
{
    return add_preferred_console("ttyS", 0, "115200");
}

4. uncompress.h:

static u32 *get_uart_base(void)
{
    if (__machine_arch_type == MACH_TYPE_DAVINCI_DA830_EVM ||
        __machine_arch_type == MACH_TYPE_DAVINCI_DA850_EVM)
        return (u32 *)DA8XX_UART0_BASE;
    else
        return (u32 *)DAVINCI_UART0_BASE;
}

 

В menuconfig выставил early debug.

Но ни символа не вышло с uart :crying:

Когда гружу u-boot через uart, а потом linux через tftp, то в том месте проц тупо виснет.

С spi перезагружается. Чтобы я не делал, с какими опциями не компилировал ядро.

Пробовал отключать в ядре все драйверы, что я не использую (I2C, NAND, Sound Card, Multimedia, RTC, MMC)

Безрезультатно.

Может кто-нибудь посоветует, куда смотреть?

Ядро: Davinci linux-03.20.00.14

С готовым образом uImage из сборки поведение абсолютно такое же - перезагрузка.

Изменено пользователем Славка

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


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

Когда гружу u-boot через uart...

 

Скажите пожалуйста, мне удалось на своей процессор (AM1705) загрузить UBL, а как потом загрузить u-boot через UART? Не затрет ли он UBL? Пользуюсь AISgen и UART Boot Host.

 

Забыл сказать, пробовал после записи UBL записать U-boot, и программа Boot host полсле

(AIS Parse): Read magic word 0x41504954 закрывала COM порт. U-boot собран в CodeSourcery.

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


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

Что-то не понимаю проблемы:

1. Берете бинарник u-boot

2. Окучиваете его при помощи AISgen, указав нужный адрес и настройки памяти/периферии

3. Загружаете полученный файл на голую плату при помощи UART Boot Host

Вот и всё.

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


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

Проблема с перезагрузкой решена! Так как у меня на борту стоит 16Мб ОЗУ, а entrypoint u-boot установлен по умолчанию с отступом от начала на 16 Мб, чтобы linux мог развернуться. Так вот u-boot у меня писался в область памяти, где разворачивается linux + 16 Мб (старший адресс у меня на памяти не заведен вообще). Тоесть вроде все работало нечайно)) Когда исправил entry point u-boot, все заработало с пол пинка. Осталось сделать файловую систему для линукса, что в принципе не сложно, опыт есть. Но сейчас приходится заниматься старым проектом, исправлением глюков, потому откладывается на неопределенный срок.

Скажите пожалуйста, мне удалось на своей процессор (AM1705) загрузить UBL, а как потом загрузить u-boot через UART? Не затрет ли он UBL? Пользуюсь AISgen и UART Boot Host.

 

Забыл сказать, пробовал после записи UBL записать U-boot, и программа Boot host полсле

(AIS Parse): Read magic word 0x41504954 закрывала COM порт. U-boot собран в CodeSourcery.

Грузите сразу uboot без ubl.

1. Открываете инструкцию UserGuide (в папке docs SDK). Ищете инструкцию по компиляции u-boot. Компилируете.

2. Берете файл u-boot (без расширения, это ELF файл. не u-boot.bin). Запускаете AisGen.

3. В AisGen внимательно по даташиту и вашей схеме настраиваете все что у вас используется на плате (bootmode, кварц, память, PINMUX, PSC...) и генерируете AIS.

4. Грузите через UARTHOST ais файл.

5. Радуетесь :biggrin:

 

Как подпилить u-boot - отдельная песня. Все зависит от того, насколько ваша плата отличается от кита. Спросите что конкретно подкрутить - я подскажу в каком месте в исходниках это делается.

 

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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