Я пытаюсь построить большую систему, используя несколько плат pcie. Системный BIOS имеет ограничение на количество перечисляемых устройств. Можно ли заставить ядро Linux управлять устройствами pcie и игнорировать пространство конфигурации, предоставленное ему биосом?
1 ответ
Немного поздно, но, возможно, полезно для других людей, заканчивающих здесь с подобным вопросом:
В соответствии со спецификацией шина PCI(e) должна сначала перечисляться по глубине. Это означает, что когда обнаружен коммутатор или прозрачный мост, он должен быть настроен, и перечисление должно продолжаться для устройств за этим вновь найденным коммутатором / мостом. После этого он может продолжить перечисление устройств на том же уровне, на котором был найден коммутатор / мост. Чтобы уменьшить сложность и использование памяти, некоторые BIOS ограничены максимальной глубиной сканирования. Поскольку вы упоминаете несколько объединительных плат, я предполагаю, что это так.
Ядро Linux не имеет этого ограничения. И вы можете стимулировать его к повторному сканированию шины, набрав на своем терминале:
echo "1" > /sys/bus/pci/rescan