Eu apenas corri
cat /proc/cpuinfo
no meu quadro. Recebo "Revisão: 1000002". Não encontrei nenhuma menção de qual versão do fórum é essa.
Qualquer ajuda?
Eu apenas corri
cat /proc/cpuinfo
no meu quadro. Recebo "Revisão: 1000002". Não encontrei nenhuma menção de qual versão do fórum é essa.
Qualquer ajuda?
Respostas:
De acordo com as informações publicadas como parte do anúncio da próxima revisão do quadro , você tem um quadro de revisão 1.0 do Modelo B.
MODELO E CÓDIGO DE REVISÃO Revisão do Modelo B 1.0 2 Revisão do modelo B 1.0 + ECN0001 (sem fusíveis, D14 removido) 3 Revisão do Modelo B 2.0 4, 5, 6
O código é o último dígito do número retornado por
cat /proc/cpuinfo
(pelo menos até que tenham mais de 9 revisões).
MODEL AND REVISION CODE(S)
Model B Revision 1.0 2
Model B Revision 1.0 + ECN0001 (no fuses, D14 removed) 3
Model B Revision 2.0 4, 5, 6
Atualmente, existe extensa documentação sobre o campo de revisão /proc/cpuinfo
em raspberrypi.org:
https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md
Isso documenta um código de revisão (incremental) mais antigo (valores 0x0001 a 0x0015, usado para os modelos Rpi 1 originais) e um formato mais recente (introduzido no Rpi 2), onde os bits do código realmente codificam parâmetros como fabricante, tamanho da memória e tipo de placa. Ele também possui uma lista de todos os códigos de revisão atualmente em uso.
O que essa página não documenta é que a revisão (no estilo antigo) pode ter um prefixo "1000" que indica que a placa possui sobretensão aplicada. Suspeito que, para revisões de novo estilo, se aplique um prefixo semelhante (mas mais curto, pois a revisão é mais longa). Informações sobre esse prefixo, bem como uma lista de modelos com alguns detalhes sobre diferenças notáveis, podem ser encontradas em https://elinux.org/RPi_HardwareHistory
Também documentado nessa página em raspberrypi.org, você pode encontrar um descritor legível por humanos do modelo atual em /sys
:
$ cat /sys/firmware/devicetree/base/model
Raspberry Pi Model B Plus Rev 1.2
Na inicialização, o carregador de inicialização (ou talvez o kernel) detecta automaticamente em qual placa está sendo executada e carrega o arquivo "devicetree" apropriado para essa placa. Este dispositivo descreve como todo o hardware está conectado e é usado para carregar os drivers apropriados. Além disso, este dispositivo também contém uma propriedade "model". Eu diria que esta é a propriedade que você está realmente lendo com o comando acima, exceto que as seqüências de modelo definidas na árvore de dispositivos são realmente ligeiramente diferentes (usando "+" em vez de "Plus" e sem a sequência de revisão). Por exemplo, o arquivo devicetree que eu acho que pertence à saída do comando acima é bcm2708-rpi-b-plus.dts . Existem também versões do bcm2835, mas elas não estão presentes no meu/boot
e o bcm2708 dts reivindica compatibilidade com o bcm2835. Eu também tentei descompilar o dtb
arquivo correspondente de /boot
, mas isso também fornece a string com "+" e nenhuma revisão, portanto, não tenho muita certeza de onde vem exatamente essa string de modelo (e mais importante, como são todos os valores possíveis). Então, talvez o carregador de inicialização recupere uma árvore de dispositivo de outro lugar ou tenha uma embutida em algum lugar.
Acabei de notar que /proc/cpuinfo
também contém um campo "Modelo", que suspeito que possa ter a mesma fonte.