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

Читать нужно: PCI Standard Hot-Plug Controller and Subsystem Specification 1.0

Только не знаю где взять.

Я у себя не нашёл.

 

Спецификация говорит что да. Все зависит от настроек root port. А какие настройки у него в PC, ХЕЗ.
Какая спецификация PCIe? Есть у меня исходники линуксячего драйвера, где я что-то подобное видел - сохраняется всё конфигурационное пространство, потом ребуут карточки, потом почти всё это пространство восстанавливается. Только я тогда не понял, что за ребуут такой... А похоже это то, что нам надо :)

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


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

Какая спецификация PCIe? Есть у меня исходники линуксячего драйвера, где я что-то подобное видел - сохраняется всё конфигурационное пространство, потом ребуут карточки, потом почти всё это пространство восстанавливается. Только я тогда не понял, что за ребуут такой... А похоже это то, что нам надо :)

Какого именно драйвера? Ядро сейчас это 374 мегабайта.

В типовом ядре, есть каллбэки которые вызываются при инициализации PCI устройства, уходе его в слип, повердаун итд. Но чтобы сохранялось и восстанавливалось я не помню.

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


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

drivers/net/mlx4/reset.c

ХЕЗ. По идее после ресета, base адресса могут и другие быть. То похоже ресестится не PCI а что-то на PCI карточке.

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


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

Читать нужно: PCI Standard Hot-Plug Controller and Subsystem Specification 1.0

Только не знаю где взять.

Тут - http://rapidshare.com/files/369941890/shpc1_0.pdf

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


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

Так это же не PCIe. С линком-то что делать?

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


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

Так это же не PCIe.
Это то, что рекомендовал disel, так что вопросы к нему :)

Видимо нужен какой то из PCIe стандартов, только скажите какой (www.pcisig.com) Возможно PCIe Base подойдет

Немного написано в CEM спецификации:

In the following text, all references to mechanical elements should be interpreted in the context of

the PCI Express card form factor definition, unless otherwise stated.

3.1. Scope

5 The PCI Express specification natively supports Hot-Plug/Hot Removal of PCI Express add-in

cards. However, hardware support of Hot-Plug/Hot-Removal on the system board is optional.

Since the PCI Express evolutionary form factor is designed as a direct PCI connector replacement

and utilizes an edge card connector, the PCI Express Native Hot-Plug model is based on the

standard usage model defined in the PCI Standard Hot-Plug Controller and Subsystem Specification,

10 Revision 1.0.

The following section describes the add-in card presence detect and PCI Express Native Hot-Plug

signals. For a detailed explanation of the register requirements and standard usage model, see

Chapter 7 of the PCI Express Base Specification, Revision 1.1.

3.2. Presence Detect

15 The PCI Express Hot-Plug controller detects the presence of an add-in card using the PRSNT2#

signal as shown in Figure 3-1. It is the responsibility of the Root Complex or the switch to

determine the presence of the add-in card and set the present bits in the appropriate register as

described in Chapter 7 of the PCI Express Base Specification, Revision 1.1. In addition to the Hot-Plug

controller, the PRSNT2# signal is used by the system board to recognize the presence of the add-in

20 card in order to enable the auxiliary signals: CLK, PERST#, SMBus, and JTAG. The two signals,

PRSNT1# and PRSNT2#, described in Figure 3-1, are required on the PCI Express connector and

must be supported by all PCI Express add-in cards.

Both PRSNT1# and PRSNT2# signals are required in order to detect the presence of the add-in

card and to ensure that it is fully inserted in the connector. Note that the pads on the add-in card

25 for the PRSNT1# and PRSNT2# signals are shorter than the rest of the pads in order to have about

1 ms difference of insertion time. Unused PRSNT2# pads on x4, x8, and x16 add-in cards can be

either standard length or the pad can be eliminated. This scheme is used to allow the power

switches to isolate the power to the card during surprise removal. The mechanical details are

provided in Chapter 5.

It is required that all PCI Express add-in cards implement variable-length edge finger pads and tie

the PRSNT1# and PRSNT2# signals together on the add-in card. There is more than one

PRSNT2# pin defined in the x4, x8, and x16 PCI Express connectors; these are needed to support

up-plugging. All add-in cards shall connect the PRSNT1# signal to the farthest-apart PRSNT2#

5 signal with a single trace in between them as illustrated in Figure 3-1. For example, a x4 add-in card

would connect PRSNT1# with PRSNT2# on pin B31, and a x8 add-in card would connect

PRSNT1# with PRSNT2# on pin B48. Refer to Table 5-1 for connector pin numbering and

definition. If the system board designer chooses to implement hot-plug support, the system board

must connect PRSNT1# to GND and separately connect all the PRSNT2# pins together to a single

10 pull-up resistor, as shown in Figure 3-1. The system board designer determines the pull-up resistor

voltage and associated use of applicable hot-plug control logic. If the system board designer

chooses not to implement hot-plug support, PRSNT1# and PRSNT2# connector pins may either

be left un-connected or may be grounded on the system board.

Since the x8 add-in card may plug into a x8 connector with a x4 Link only, the system board shall

15 have the two PRSNT2# pins (B31 and B48) connected together. This is required in order to sense

the presence of the x8 add-in card in a x8 connector that supports a x4 Link only. See Section 6.3

for card interoperability discussions.

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


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

Это то, что рекомендовал disel, так что вопросы к нему :)

Видимо нужен какой то из PCIe стандартов, только скажите какой (www.pcisig.com) Возможно PCIe Base подойдет

Немного написано в CEM спецификации:

Ну возьму я завтра тестер, и прозвоню PRSNT сигналы. Что дальше?

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


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

Ну возьму я завтра тестер, и прозвоню PRSNT сигналы. Что дальше?
Их не надо прозванивать, их надо имплементировать на своей плате (хоть с помощью реле). Если ядро ОС вообще в курсе, что hot-plug бывает, то их размыкание/замыкание заставит ядро (драйвер) заново инициализировать этот слот.

Немного криво, зато железно (в смысле в РЕАЛЬНОМ железе) :rolleyes:

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


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

Их не надо прозванивать, их надо имплементировать на своей плате (хоть с помощью реле). Если ядро ОС вообще в курсе, что hot-plug бывает, то их размыкание/замыкание заставит ядро (драйвер) заново инициализировать этот слот.

Немного криво, зато железно (в смысле в РЕАЛЬНОМ железе) :rolleyes:

Это надо только пробовать.

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


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

Так это же не PCIe. С линком-то что делать?

 

У Петрова в "Шины PCI, PCI Express" написано что пользовательская модель PCI Express Hot Plug выведена из пользовательской модели "PCI Standard Hot-Plug Controller and Subsystem Specification 1.0". И они идентичны с точки зрения пользователя. Изменения коснулись некоторых регистров, которые описаны в стандарте PCIe.

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


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

У Петрова в "Шины PCI, PCI Express"

А что за книга? "сферический PCIe в вакууме" или применительно к PC?

 

написано что пользовательская модель PCI Express Hot Plug выведена из пользовательской модели "PCI Standard Hot-Plug Controller and Subsystem Specification 1.0". И они идентичны с точки зрения пользователя. Изменения коснулись некоторых регистров, которые описаны в стандарте PCIe.

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

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


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

А что за книга? "сферический PCIe в вакууме" или применительно к PC?

Скорее "сферический PCI в вакууме". Про PCIe немного.

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


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

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

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


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

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

А если загрузить систему, а потом прошить? Я сейчас пользуюсь рекомендациями альтеры - через jtag прошиваю, потом контрл-альт-дел. Тогда работает.

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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