|
|
  |
pxa270 + jtag wiggler - не могу достучаться до strataflash |
|
|
|
Mar 13 2011, 16:14
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Попробовал. Удалось достучаться до памяти, она корректно определяется, но не программруется Цитата target state: halted target halted in ARM state due to debug-request, current mode: Supervisor cpsr: 0x000000d3 pc: 0x00000000 MMU: disabled, D-Cache: disabled, I-Cache: disabled (processor reset) Info : Flash Manufacturer/Device: 0x0089 0x8816 Warn : expected one protection register field, but found 2 Warn : configuration specifies 0x2000000 size, but a 0x2000000 size flash was found flash 'cfi' found at 0x00000000
> flash write_image 1.2.5-hp.rom 0x0 bin Using target buffer at 0x5c000038 and of size 0x8000 Write 0x8000 bytes to flash at 0x00000000 status register: 0x98 Low Programming Voltage Detected, Operation Aborted Program Error / Error in Setting Lock-Bit error writing to flash at address 0x00000000 at offset 0x00000000 (-902) Command handler execution failed in procedure 'flash' called at file "command.c", line 650 called at file "command.c", line 361
|
|
|
|
|
Mar 13 2011, 16:39
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Самое интересное в том что питания должно хватать, аккумулятор заряжен полностью. Плюс ко всему могу снять защиту от записи... А записать вот не выходит. Посмотрел исходники openocd на предмет этой ошибки, там написано Код 00348 if (status != 0x80) 00349 { 00350 LOG_ERROR("status register: 0x%x", status); 00351 if (status & 0x2) 00352 LOG_ERROR("Block Lock-Bit Detected, Operation Abort"); 00353 if (status & 0x4) 00354 LOG_ERROR("Program suspended"); 00355 if (status & 0x8) 00356 LOG_ERROR("Low Programming Voltage Detected, Operation Aborted"); 00357 if (status & 0x10) 00358 LOG_ERROR("Program Error / Error in Setting Lock-Bit"); 00359 if (status & 0x20) 00360 LOG_ERROR("Error in Block Erasure or Clear Lock-Bits"); 00361 if (status & 0x40) 00362 LOG_ERROR("Block Erase Suspended"); 00363 00364 cfi_intel_clear_status_register(bank); 00365 00366 retval = ERROR_FAIL; 00367 } У меня же состояние регистра 0xa8, в коде же такого состояния не оговорено... И еще смущает вот эта строка Цитата Warn : expected one protection register field, but found 2
|
|
|
|
|
Mar 14 2011, 18:34
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Пробовал и закомментировать и обход написать, все равно не флешит... Выпадает в ошибку... Собирал последнюю версию из svn
Сообщение отредактировал amamlin - Mar 14 2011, 18:39
|
|
|
|
|
Mar 14 2011, 18:50
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Тоесть попробовать зажать хардресет и запустить openocd или другую софтварь?
|
|
|
|
|
Mar 15 2011, 08:07
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Кажется дело сдвинулось. Удалось записать небольшой кусок загрузчика. Теперь после ресета процессор останавливается на инструкции по адресу 0x1920(раньше 0x0). Плюс во время включения батареи экран на долю секунды загорается. Раньше этого тоже не было.
Буду дальше пробовать, но меня смущает все же ошибки о low programming voltage. Хотя тут есть одна идея. При сборке схемы я не нашел 100 Омных резисторов и использовал 91 Омные. Судя по всему с TRST читается минимальный уровень логической единицы. Из-за меньшего сопротивления получается более высокий уровень, девайс видит что минимальный уровень отличается от того что подается для программирования памяти и выдает ошибку. Но это всего лишь моя теория.
Сообщение отредактировал amamlin - Mar 15 2011, 08:24
|
|
|
|
|
Mar 15 2011, 09:25
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Напряжение аккумулятора 3.7 вольта. Не думаю что поможет, но попробовать стоит.
|
|
|
|
|
Mar 15 2011, 09:37
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Подсветка загорается только при включении и идентификации устройства. В общем то можно для экономии в таком случае отсоединить вообще все и оставить только голую плату. Благо добраться до нее не очень сложно. Может попробовать запитать логику вигглера от отдельного 5 вольтового источника? Или не стоит?
|
|
|
|
|
Mar 18 2011, 09:32
|
Участник

Группа: Участник
Сообщений: 17
Регистрация: 11-03-11
Пользователь №: 63 532

|
Пробовал заптку от аккумулятора, заряженного на полную. Эффект тот же. Думаю попробовать обратиться к разработчикам openocd В даташите про 0x98 написано что оно соответствует состоянию cfi read query Сброс состояния регистра не увенчался успехом.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|