spbroma 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Здравствуйте, Вопрос относительно подключения отладчика к тестовой машине. Вот я из студии развернул драйвер на тестовой машине, т.е. компьютеры общаются и хорошо друг друга понимают. Теперь запускаю Windbg, ввожу порт, ключ (у меня они общаются по ethernet) и... Using NET for debugging Opened WinSock 2.0 Waiting to reconnect... Через студию (Driver -> Test -> Configure computers) меняю параметры подключения (порт и/или шину), применяю их на тестовом компьютере, и после некоторых шаманств с этими параметрами отладчик успешно подключается. Однако, на тестовом компьютере из диспетчера пропадает моё устройство. После перезагрузки тестового компьютера устройство появляется, отладчик вновь не может подключиться. Как показало гугление, не я один сталкиваюсь с подобным и каждый находит какое-то свое магическое решение данной проблемы. Была ли у кого-нибудь подобная проблема и в чем вообще тут может быть дело? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Была ли у кого-нибудь подобная проблема и в чем вообще тут может быть дело? Подобной проблемы не было. Однако, могу сказать, как я подключаюсь, со 100%-ной повторяемостью Использую COM-порт, либо IEEE-1394. На удаленной машине запускаю Windbg, там File->Kernel Debug... ну и OK. Затем перегружаю отлаживаемый комп, и именно в процессе перезагрузки происходит соединение этой машины с отладчиком - в отладчике вижу весь вывод всего того, что выводят части ядра и прочие дрова. После этого делаю что угодно с драйверами на отлаживаемой машине, разрешаю, запрещаю, ставлю, сношу, и все это происходит под контролем отладчика, который подсоединен к ядру отлаживаемой машины с момента ее загрузки и до победного конца. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба Попробовал и заметил вот что: Если на тестовом компьютере выполнить bcdedit -debug on и перезагрузить, то отладчик подключится, а устройство также пропадёт. После очередной перезагрузки устройство появляется, а подключение не выполняется. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 13 января, 2015 Опубликовано 13 января, 2015 · Жалоба и перезагрузить, то отладчик подключится, а устройство также пропадёт. Так, не отключая отладчика, поставьте/подключите свое устройство. Оно и появится. Для этого перезагрузка не нужна, оно же PnP. А чтобы при следующей перезагрузке коннект опять был, надо в отладчике отключиться, затем перегрузить отлаживаемую, и пока комп всякие там биосы проходит, в отладчике инициировать ожидание подключения (опять, File->Kernel Debug, OK). Или, прижать его резетом на это время, если не успеваете. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 14 января, 2015 Опубликовано 14 января, 2015 (изменено) · Жалоба В том-то и странность. Когда соединение устанавливается, устройство не определяется в системе :) (неужто это клятый kmdf) Включаю-выключаю его, диспетчер устройств молчит, в консоли отладчика тишина. Стоит перезагрузиться так, чтобы соединение пропало, устройство благополучно подключается и инициализируется. Не уверен насчёт причинно-следственной связью между соединением и инициализацией. Но корреляция очевидна. UPD: Когда соединение происходит, а устройство, соответственно, не цепляется -- драйвер, естественно, не устанавливается Когда устройство находится в системе, к системе не получается подключиться отладчиком. Изменено 14 января, 2015 пользователем spbroma Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Включаю-выключаю его, диспетчер устройств молчит, в консоли отладчика тишина. Если я правильно помню, у Вас же PCIe устройство. Как его можно включать-выключать во время работы винды? Оно должно быть включено во время инициализации BIOS, так как именно BIOS его инициализирует, а Windows потом только обнаруживает. Хотите сказать, что в диспетчере устройств его при этом ни в каком виде нет? А драйвер-визард что говорит? Видит его? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Если я правильно помню, у Вас же PCIe устройство. Как его можно включать-выключать во время работы винды? Оно должно быть включено во время инициализации BIOS, так как именно BIOS его инициализирует, а Windows потом только обнаруживает. Хотите сказать, что в диспетчере устройств его при этом ни в каком виде нет? А драйвер-визард что говорит? Видит его? Я сам удивился этому,но при включении устройства при запущенной винде она прекрасно его находит и при обновлении устройств в диспетчере задач появляется либо как прописано в драйвере, либо как неизвестное устройство - PCI-контроллер памяти, как и указано в корке на ПЛИС. Но не всегда. Иногда не появляется даже если включено до запуска винды. (И именно тогда срабатывает подключение отладчика к тестовому компу) Да, выглядит как-то бредово :) А о каком драйвер-визарде вы говорите? Кстати, если в inf-е прописать id оборудования как Root\Test, то наличие/отсутствие соединения всё равно каким-то образом связано с тем, определяется устройство на тестовом компьютере (в данном случае как раз как неопознанный контроллер памяти) или нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба А о каком драйвер-визарде вы говорите? О Jungo - им удобно смотреть по ходу событий, что там в девайсе, есть ли он в системе, и что в его регистрах. Кстати, если в inf-е прописать id оборудования как Root\Test, А зачем это надо? Я сразу прописываю VID/PID, как положено. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Хотите сказать, что в диспетчере устройств его при этом ни в каком виде нет? А драйвер-визард что говорит? Видит его? Да, если нет в диспетчере устройств, виндрайвер тоже не видит. А зачем это надо? Я сразу прописываю VID/PID, как положено. Да я тоже, это в рамках поиска и проб. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Да, если нет в диспетчере устройств, виндрайвер тоже не видит. А биос-то видит? В списке устройств, который "пролетает" в процессе загрузки? Если его никто не видит, то это проблема железки. И вообще, это очень похоже на проблему железки. И смените ее тип, тоже мне, контроллер памяти. Возможно, БИОС его замапливает куда-то в общую память компа. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба А биос-то видит? В списке устройств, который "пролетает" в процессе загрузки? Во время загрузки не успеваю за списком уследить :) Есть ли более гуманные методы? И смените ее тип, тоже мне, контроллер памяти. Возможно, БИОС его замапливает куда-то в общую память компа. Хм. Сейчас попробую сконфигурить его как мультимедийное устройство. Просто "контроллер памяти" предлагался коркой по умолчанию и я решил не трогать это. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Есть ли более гуманные методы? Я ничего лучше не придумал, чем его сфоткать :) :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Изменил тип на мультимедийное устройство, пока что ведет себя так же: устройство определяется, драйвер устанавливается, отладчик не подключается Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 14 января, 2015 Опубликовано 14 января, 2015 · Жалоба Изменил тип на мультимедийное устройство, пока что ведет себя так же: устройство определяется, драйвер устанавливается, отладчик не подключается Еще раз. Должно быть все наоборот - сначала подключается отладчик (к ядру), в процессе загрузки, а потом уже определяется устройство и ставится драйвер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
spbroma 0 15 января, 2015 Опубликовано 15 января, 2015 · Жалоба То есть, сценарий следующий? 0. Тестовый компьютер выключен. Рабочий пытается подключиться отладчиком. 1. Включение тестового компьютера. 2. На каком-то этапе отладчик подключается. 3. После того как устройство инициализировано в системе, можно запускать установку драйвера. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться