@AlexChamberlain: Właśnie to miałem na myśli, kiedy zadałem pytanie.
John Smith,
@JohnSmith Sugeruję wycofanie i zadanie tego jako osobnego pytania, ponieważ AlexChamberlain powiedział, że zmieniłeś znaczenie pytania, a to pytanie nie jest już zsynchronizowane z jego odpowiedziami.
Steve Robillard
Cześć John Smith. Nie edytuj pytania na nowe. Zamiast tego użyj przycisku Zadaj pytanie , aby zadać nowe pytanie. W międzyczasie cofnę to pytanie. Dzięki!
Dokumentuje to zarówno starszy (przyrostowy) kod wersji (wartości od 0x0001 do 0x0015, stosowany w oryginalnych modelach Rpi 1), jak i nowszy format (wprowadzony z Rpi 2), w którym bity kodu faktycznie kodują parametry takie jak producent, rozmiar pamięci i typ planszy. Zawiera także listę wszystkich obecnie używanych kodów wersji.
Ta strona nie dokumentuje tego, że wersja (w starym stylu) może mieć prefiks „1000”, który wskazuje, że na płytce zastosowano przepięcie. Podejrzewam, że w przypadku wersji w nowym stylu stosuje się podobny (ale krótszy, ponieważ wersja jest dłuższa) przedrostek. Informacje na temat tego prefiksu, a także listę modeli z pewnymi szczegółami na temat znaczących różnic można znaleźć na stronie https://elinux.org/RPi_HardwareHistory
Na tej stronie na raspberrypi.org udokumentowano również , że można znaleźć czytelny dla człowieka deskryptor obecnego modelu w /sys:
$ cat /sys/firmware/devicetree/base/model
Raspberry Pi Model B Plus Rev 1.2
Podczas uruchamiania bootloader (lub może jądro) automatycznie wykrywa na jakiej płycie jest uruchomiony, a następnie ładuje odpowiedni plik „devicetree” dla tej płyty. To urządzenie opisuje sposób podłączenia całego sprzętu i służy do ładowania odpowiednich sterowników. Dodatkowo to urządzenie zawiera także właściwość „model”. Chciałem powiedzieć, że jest to właściwość, którą faktycznie czytasz za pomocą powyższego polecenia, z tym wyjątkiem, że ciągi modelu zdefiniowane w drzewie urządzeń są w rzeczywistości nieco inne (używając „+” zamiast „Plus” i bez ciągu rewizji). Na przykład plik devicetree, który moim zdaniem należy do powyższego wyniku, to bcm2708-rpi-b-plus.dts . Istnieją również wersje bcm2835, ale nie są one obecne w moim/boota bcm2708 dts twierdzi, że jest kompatybilny z bcm2835. Próbowałem również dekompilować odpowiedni dtbplik /boot, ale daje to również ciąg za pomocą „+” i bez rewizji, więc nie jestem całkiem pewien, skąd ten ciąg modelu pochodzi dokładnie (a co ważniejsze, jak wyglądają wszystkie możliwe wartości). Więc może bootloader pobiera dowolne urządzenie z innego miejsca lub ma gdzieś wbudowane.
Właśnie zauważyłem, że /proc/cpuinfozawiera również pole „Model”, które, jak podejrzewam, może mieć to samo źródło.
Odpowiedzi:
Zgodnie z informacjami opublikowanymi w ramach ogłoszenia o zbliżającej się rewizji płyty , masz płytę B w wersji 1.0.
Kod jest ostatnią cyfrą numeru zwróconego przez
(przynajmniej dopóki nie będą miały więcej niż 9 wersji).
źródło
źródło
Obecnie na stronie
/proc/cpuinfo
raspberrypi.org znajduje się obszerna dokumentacja dotycząca pola zmian :https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md
Dokumentuje to zarówno starszy (przyrostowy) kod wersji (wartości od 0x0001 do 0x0015, stosowany w oryginalnych modelach Rpi 1), jak i nowszy format (wprowadzony z Rpi 2), w którym bity kodu faktycznie kodują parametry takie jak producent, rozmiar pamięci i typ planszy. Zawiera także listę wszystkich obecnie używanych kodów wersji.
Ta strona nie dokumentuje tego, że wersja (w starym stylu) może mieć prefiks „1000”, który wskazuje, że na płytce zastosowano przepięcie. Podejrzewam, że w przypadku wersji w nowym stylu stosuje się podobny (ale krótszy, ponieważ wersja jest dłuższa) przedrostek. Informacje na temat tego prefiksu, a także listę modeli z pewnymi szczegółami na temat znaczących różnic można znaleźć na stronie https://elinux.org/RPi_HardwareHistory
Na tej stronie na raspberrypi.org udokumentowano również , że można znaleźć czytelny dla człowieka deskryptor obecnego modelu w
/sys
:Podczas uruchamiania bootloader (lub może jądro) automatycznie wykrywa na jakiej płycie jest uruchomiony, a następnie ładuje odpowiedni plik „devicetree” dla tej płyty. To urządzenie opisuje sposób podłączenia całego sprzętu i służy do ładowania odpowiednich sterowników. Dodatkowo to urządzenie zawiera także właściwość „model”. Chciałem powiedzieć, że jest to właściwość, którą faktycznie czytasz za pomocą powyższego polecenia, z tym wyjątkiem, że ciągi modelu zdefiniowane w drzewie urządzeń są w rzeczywistości nieco inne (używając „+” zamiast „Plus” i bez ciągu rewizji). Na przykład plik devicetree, który moim zdaniem należy do powyższego wyniku, to bcm2708-rpi-b-plus.dts . Istnieją również wersje bcm2835, ale nie są one obecne w moim
/boot
a bcm2708 dts twierdzi, że jest kompatybilny z bcm2835. Próbowałem również dekompilować odpowiednidtb
plik/boot
, ale daje to również ciąg za pomocą „+” i bez rewizji, więc nie jestem całkiem pewien, skąd ten ciąg modelu pochodzi dokładnie (a co ważniejsze, jak wyglądają wszystkie możliwe wartości). Więc może bootloader pobiera dowolne urządzenie z innego miejsca lub ma gdzieś wbudowane.Właśnie zauważyłem, że
/proc/cpuinfo
zawiera również pole „Model”, które, jak podejrzewam, może mieć to samo źródło.źródło