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

 
 
> CY7C68013A отключить загрузку прошивки по Usb
evgen_ln
сообщение Sep 17 2010, 18:23
Сообщение #1





Группа: Новичок
Сообщений: 9
Регистрация: 17-09-10
Пользователь №: 59 561



Приветствую, подскажите пожалуйста, существует ли способ программно отключить возможность загрузки прошивки через Usb. Суть в том, что разрабатывается клон устройства под существующие закрытые драйвера, в процессе ренумерации подгружающий оригинальную прошивку заменяя ней написанную мною, протокол известен. В ходе чтения EZ-USB Technical Reference Manual, я понял, что все реализовано через вендорспец. команду 0хА0. Но как запретить на нее реагировать, или изменить поведение при ее получении способа так и не увидел.
Подскажите, может есть идеи.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
evgen_ln
сообщение Sep 19 2010, 13:23
Сообщение #2





Группа: Новичок
Сообщений: 9
Регистрация: 17-09-10
Пользователь №: 59 561



Цитата
перезалить свою прошивку с EEPROM, после этого отпустить Bus reset
Чесно говоря я не представляю как это можно реализовать на практике.
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Sep 19 2010, 15:17
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(alexkok @ Sep 19 2010, 04:34) *
...Но Вы можете отлавливать момент ренумерации после заливки драйвером его прошивки и, придерживая Bus reset, перезалить свою прошивку с EEPROM, после этого отпустить Bus reset....

То есть, предлагаете добавить аппаратный watchdog. Firmware FX2LP должно периодически инвертировать состояние вывода контроллера, подключенного ко входу сброса watchdog-а. Тогда, через некоторое время после загрузки чужой прошивки watchdog выдаст аппаратный Reset и произойдет загрузка штатной прошивки из EEPROM. Все это работает для FX2 (CY7C68013), но не для FX2LP. На время выдачи аппаратного Reset FX2LP отключается от USB (раздел "3.2 Automatic Disconnect and Reconnect on Hard Reset" в файле "fx2_to_fx2lp.pdf"). После снятия Reset произойдет загрузка штатной прошивки, затем подключение к USB и драйвер снова загрузит "чужую" прошивку. Процесс будет циклически повторяться...

Цитата(evgen_ln @ Sep 18 2010, 21:52) *
...В процессе установки драйвер посылает устройству, запрос с командой 0хА0, которая обрабатывается CY7C68013A автоматически, и происходит загрузка прошивки для оригинального устройства (заменяя написанную мной)...

А что, действительно в NVIDIA Stereoscopic 3D USB controller используется CY7C68013A?
Go to the top of the page
 
+Quote Post
evgen_ln
сообщение Sep 19 2010, 16:54
Сообщение #4





Группа: Новичок
Сообщений: 9
Регистрация: 17-09-10
Пользователь №: 59 561



Цитата(Konst_777 @ Sep 19 2010, 18:17) *
А что, действительно в NVIDIA Stereoscopic 3D USB controller используется CY7C68013A?

Да, CY7C68013A-100. Могу скинуть фотку если интересно.

NVIDIA выбрала этот контролер для ”ПИРАМИДКИ” в силу критичности таймингов, работа устрайства возможна только в режиме USB 2.0 Hi Speed, а контролеров с поддержкой этого режима сами знаете раз два и обчелся. CY7C68013A самый часто используемый и проверенный. Вот на нем и сделали.
В самих беспроводных очках использован AVR.

Сообщение отредактировал evgen_ln - Sep 19 2010, 16:55
Go to the top of the page
 
+Quote Post
Konst_777
сообщение Sep 20 2010, 22:39
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(evgen_ln @ Sep 19 2010, 19:54) *
...
NVIDIA выбрала этот контролер для "ПИРАМИДКИ" в силу критичности таймингов, работа устрайства возможна только в режиме USB 2.0 Hi Speed...

Цитата(evgen_ln @ Sep 20 2010, 23:38) *
...И для данной задачи этого достаточно, происходит обработка 8 битовых пакетов, их синхронизация, и дерганье портом исходя из необходимого протокола. На порт повешены ИК-диоды через полевик-драйвер вот и все...

Все таки, почему нужен High Speed? Почему не достаточно Full Speed? Вы не проверяли, а будет ли работать Ваш клон в режиме Full Speed? Если да, то можно выбрать для клона дешевый контроллер (не FX2LP) с малым количеством выводов, со встроенным генератором (не нужен внешний кварц), с SPI. И будет нормальная реакция на "вендорспец. команду 0хА0". Правда, обновлять firmware будет менее удобно.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- evgen_ln   CY7C68013A отключить загрузку прошивки по Usb   Sep 17 2010, 18:23
- - Konst_777   Цитата(evgen_ln @ Sep 17 2010, 21:23) ......   Sep 18 2010, 16:47
- - evgen_ln   ЦитатаВот это предложение не понятно. Да как то су...   Sep 18 2010, 18:52
|- - alexkok   Цитата(evgen_ln @ Sep 18 2010, 21:52) Вот...   Sep 19 2010, 01:34
||- - Konst_777   Цитата(evgen_ln @ Sep 17 2010, 21:23) ......   Sep 19 2010, 18:38
||- - evgen_ln   Да, пробовали все режимы, я делал на AVR, один тов...   Sep 21 2010, 06:27
|- - alexkok   Цитата(Konst_777 @ Sep 19 2010, 19:17) То...   Sep 19 2010, 20:19
- - evgen_ln   Прошивка лежит в драйвере nvstusb.sys, причем в тр...   Sep 19 2010, 19:05
|- - Konst_777   Если Ваша прошивка имеет меньший объем, то можно и...   Sep 19 2010, 19:33
- - evgen_ln   Спасибо Konst_777, четвертой не заметил. Завтра бу...   Sep 19 2010, 21:57
- - evgen_ln   Докладываю, патчинг прошел успешно, виндовс принял...   Sep 20 2010, 19:30
|- - Konst_777   Цитата(evgen_ln @ Sep 20 2010, 22:30) ......   Sep 20 2010, 19:58
- - evgen_ln   Основная задача реализовать поддержку сторонних оч...   Sep 20 2010, 20:38


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

 


RSS Текстовая версия Сейчас: 30th June 2025 - 06:37
Рейтинг@Mail.ru


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