@AlexChamberlain: Вот что я имел в виду, когда задавал вопрос.
Джон Смит
@JohnSmith Я бы предложил откат и задавать это как отдельный вопрос, так как AlexChamberlain сказал, что вы изменили значение вопроса, и этот вопрос больше не совпадает с его ответами.
Стив Робиллард
Привет Джон Смит. Пожалуйста, не редактируйте свой вопрос на новый. Вместо этого используйте кнопку Задать вопрос , чтобы задать новый вопрос. А пока я собираюсь откатить этот вопрос обратно. Благодарность!
Это документирует как более старый (инкрементный) код ревизии (значения от 0x0001 до 0x0015, используемый для исходных моделей Rpi 1), так и более новый формат (введенный с Rpi 2), где биты кода фактически кодируют параметры, такие как производитель, объем памяти и тип платы. Он также имеет список всех кодов ревизий, которые используются в настоящее время.
Что эта страница не документирует, так это то, что ревизия (старого стиля) может иметь префикс «1000», который указывает на то, что к плате применено перенапряжение. Я подозреваю, что для ревизий нового стиля применяется аналогичный (но более короткий, так как ревизия длиннее) префикс. Информацию об этом префиксе, а также список моделей с некоторыми подробностями о заметных различиях можно найти по адресу https://elinux.org/RPi_HardwareHistory.
$ cat /sys/firmware/devicetree/base/model
Raspberry Pi Model B Plus Rev 1.2
При запуске загрузчик (или, возможно, ядро) автоматически определяет, на какой плате он работает, и затем загружает соответствующий файл "devicetree" для этой платы. Это devicetree описывает, как все оборудование подключено и используется для загрузки соответствующих драйверов. Кроме того, это devicetree также содержит свойство "модель". Я собирался сказать, что это свойство, которое вы на самом деле читаете с помощью вышеуказанной команды, за исключением того, что строки модели, определенные в devicetree, на самом деле немного отличаются (используя «+» вместо «Plus» и без строки ревизии). Например, файл devicetree, который, я думаю, принадлежит к вышеприведенному выводу команды, представляет собой bcm2708-rpi-b-plus.dts . Есть также версии bcm2835, но их нет в моем/bootи bcm2708 dts заявляет о совместимости с bcm2835. Я также попытался декомпилировать соответствующий dtbфайл из /boot, но это также дает строку с «+» и без ревизии, поэтому я не совсем уверен, откуда эта модель строки в точности (и что более важно, как выглядят все возможные значения). Так что, может быть, загрузчик извлекает devicetree из другого места или где-то встроен.
Я только что заметил, что /proc/cpuinfoтакже содержит поле «Модель», которое, как я подозреваю, может иметь тот же источник.
Ответы:
Согласно информации, опубликованной в рамках объявления о предстоящей ревизии платы , у вас есть плата версии B версии 1.0.
Код является последней цифрой числа, возвращенного
(по крайней мере, пока они не имеют более 9 ревизий).
источник
источник
В настоящее время существует обширная документация по полю редакции
/proc/cpuinfo
на raspberrypi.org:https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md
Это документирует как более старый (инкрементный) код ревизии (значения от 0x0001 до 0x0015, используемый для исходных моделей Rpi 1), так и более новый формат (введенный с Rpi 2), где биты кода фактически кодируют параметры, такие как производитель, объем памяти и тип платы. Он также имеет список всех кодов ревизий, которые используются в настоящее время.
Что эта страница не документирует, так это то, что ревизия (старого стиля) может иметь префикс «1000», который указывает на то, что к плате применено перенапряжение. Я подозреваю, что для ревизий нового стиля применяется аналогичный (но более короткий, так как ревизия длиннее) префикс. Информацию об этом префиксе, а также список моделей с некоторыми подробностями о заметных различиях можно найти по адресу https://elinux.org/RPi_HardwareHistory.
На этой странице на raspberrypi.org также задокументировано , что вы можете найти читабельный дескриптор текущей модели в
/sys
:При запуске загрузчик (или, возможно, ядро) автоматически определяет, на какой плате он работает, и затем загружает соответствующий файл "devicetree" для этой платы. Это devicetree описывает, как все оборудование подключено и используется для загрузки соответствующих драйверов. Кроме того, это devicetree также содержит свойство "модель". Я собирался сказать, что это свойство, которое вы на самом деле читаете с помощью вышеуказанной команды, за исключением того, что строки модели, определенные в devicetree, на самом деле немного отличаются (используя «+» вместо «Plus» и без строки ревизии). Например, файл devicetree, который, я думаю, принадлежит к вышеприведенному выводу команды, представляет собой bcm2708-rpi-b-plus.dts . Есть также версии bcm2835, но их нет в моем
/boot
и bcm2708 dts заявляет о совместимости с bcm2835. Я также попытался декомпилировать соответствующийdtb
файл из/boot
, но это также дает строку с «+» и без ревизии, поэтому я не совсем уверен, откуда эта модель строки в точности (и что более важно, как выглядят все возможные значения). Так что, может быть, загрузчик извлекает devicetree из другого места или где-то встроен.Я только что заметил, что
/proc/cpuinfo
также содержит поле «Модель», которое, как я подозреваю, может иметь тот же источник.источник