Нетобзор - форум про интернет

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Автор Тема: qtools-набор инструментов для работы с flash модемов на чипсете qualcomm  (Прочитано 216688 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

test

  • Гость

да, visualstudio.

подожди... а то мы совсем запутаемся)...

я сейчас ковыряюсь с мф667 в режиме ENPRG, тоесть в EMERGENCY, когда модем запускается с загрузчика, который в процике.
для этого я его выдергивал при обновлении прошивки, а когда подпаялся к жтаг-у - просто вытер мибиб.

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

но сейчас я пробую только ENPRG.
Записан

forth32

  • Гость

но сейчас я пробую только ENPRG.

Все, я понял. Стромозил малость. Значит, мой патченный ENPRG не работает? Ладно, постараюсь сегодня проверить. А ведь действительно - достаточно ему MIBIB потереть, и модем вывалится в режим PBL-загрузки.
Записан

test

  • Гость

поставил виртуалку, восьмерку, vs2012. собрал из самых свежих исходников).

в процессе построения ошибок нет. но много предупреждений: неиспользованная локальная переменная, несоответствие типов со знаком и без знака и т.д.

Записан

test

  • Гость

forth32, чёт моск уже закипает)... не пойму, в лыжах проблема или нет...

тот же мф667.
загружаю ENPRG. исполнение. ОК.

открывается уже другой порт, как говорил ранее.

qcommand не срабатывает - см. картинку.

но если после загрузки и исполнения лоадера в твоей программе ее закрыть и открыть любую другую с команодной строкой - то команды на 7Е в этой другой софтине успешно отрабатываются...
Записан

forth32

  • Гость

Все, я разобрался. Это целиком и полностью моя ошибка - я криво запатчил ENPRG. В результате команда 05 отрабатывалась правильно, но загрузчик после этого уходил в перезагрузку.
Теперь я все исправил, перескачай ENPRG8200p.bin и пробуй, все будет работать. Я уже записал с помощью qwdirect несколько разделов модема 667 - все записалось.

Кстати. Нет ли у кого-нибудь полного дампа флешки билайновского MF667?
Записан

sej

  • Новичок
  • *
  • Благодарность: +9/-0
  • Оффлайн Оффлайн
  • Сообщений: 44

esmt или hynix ?)  и  в каком виде он нужен.
Записан

test

  • Гость

forth32
работает)))...
делал солянку. вроде из билайновских прошивок. под обе флешки. для модемов mf667, уваленных dc-унлоскером)...
Записан

forth32

  • Гость

esmt или hynix ?)  и  в каком виде он нужен.
ESMT. А вид - лучше всего просто сырой дамп 512-байтных секторов друг за другом. ООВ здесь, как я понимаю, нигде не используется.
Но можно и в любом другом формате. Уж как преобразовать - я как-нибудь придумаю.
Записан

sej

  • Новичок
  • *
  • Благодарность: +9/-0
  • Оффлайн Оффлайн
  • Сообщений: 44

да неиспользуеца, https://www.dropbox.com/s/7nj3mqifpo2mckh/mf667_ESMT.bin?dl=0, сырой образ, твоей тулзой несливал - лень компилить))) но мб вечером соберу солью ею, если нужно будет в ином виде каком пиши, + есть под операторов
Записан

sej

  • Новичок
  • *
  • Благодарность: +9/-0
  • Оффлайн Оффлайн
  • Сообщений: 44

собрал, затестил, неработает )))) мб чтот криво зделал?
интересно же ))

Записан

forth32

  • Гость

собрал, затестил, неработает )))) мб чтот криво зделал?
Ты, похоже, используешь старую версию загрузчика. Потому как у меня все работает. Возьми новый из репозитория, и его только сегодня днем туда залил.
И еще. Если так всеми вами любимая винда сажает загрузчик на другой последовательный порт, то загрузку надо делать в 2 этапа:
qdload -k1 -a58020000 -d10 -p xx loaders/ENPRG8200p.bin
qcommand -k1 -p yy -c"c i"

xx и yy - старый и новый номера портов. Если же после запуска загрузчика номер порта не меняется - то можно инициализировать загрузчик прямо в qdload:
qdload -k1 -a58020000 -d10 -p xx  -i loaders/ENPRG8200p.bin

В любом случае после инициализации загрузчика должна выводиться информация о параметрах флешки:

core:/home/forth32/zte/qtools# ./qcommand -k1 -i
 Отсылка hello...ok
 Флеш-память: Elite Semiconductor ESMT_FM6AD1G12A, NAND 128MiB 1,8V 8-bit
 Версия протокола: 3
 Максимальный размер пакета: 1024 байта
 Размер сектора: 512 байт
 Размер страницы: 2048 байт (4 секторов)
 Размер OOB: 64 байт
 Тип ECC: R-S, 4 бит
 Общий размер флеш-памяти = 1024 блоков (128 MB)
Записан

sej

  • Новичок
  • *
  • Благодарность: +9/-0
  • Оффлайн Оффлайн
  • Сообщений: 44

загрузчик качал из реп последний, с 2 мя поправками в подписи, порт тот же остается ..хм
и самое интересное Download mode port #: 392
 Отсылка hello... hello возвратил ошибку!
00000000: 15 01 51 43 4f 4d 20 66 61 73 74 20 64 6f 77 6e  *..QCOM fast down*
00000010: 6c a8 8b 7e                                      *l..~            *
« Последнее редактирование: 16 Апреля 2015, 19:56:47 от sej »
Записан

forth32

  • Гость

загрузчик качал из реп последний, с 2 мя поправками в подписи, порт тот же остается ..хм
А покажи, как выглядит скрипт, которым ты запускаешь загрузчик. Может быть, ты где-то с параметрами ошибся?
Записан

sej

  • Новичок
  • *
  • Благодарность: +9/-0
  • Оффлайн Оффлайн
  • Сообщений: 44

@echo off
set /p dlpnum="Download mode port #: "
qdload -k1 -a58020000 -p 20 -i loaders\ENPRG8200p.bin
qwflash -p%blpnum% -k1 -m -s pt-mf667-w.bin -w 09:09-0-EFS2.bin
вот так как то мб втупил ? конец дня..
Записан

forth32

  • Гость

вот так как то мб втупил ? конец дня..
Добавь еще ключ -d50 в строку qdload. Это вызовет 5-секундную задержку перез инициализацией загрузчика - сейчас он просто не успевает запуститься до того, как в него улетит команда Hello.
Я, как линуксоид, совершенно не знаю синтаксиса виндовых скриптов. %blpnum% - это что означает? По идее, если порт не меняется, то тут нужно указывать тот же -p20, что и в qdload.
Записан