[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [PATCH] bcm2835_property: implement "get board revision"
From: |
Stephen Warren |
Subject: |
Re: [Qemu-arm] [PATCH] bcm2835_property: implement "get board revision" query |
Date: |
Mon, 8 Feb 2016 21:28:07 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 |
On 02/07/2016 03:37 PM, Andrew Baumann wrote:
> Hi Stephen,
>
> Thanks for the patch!
>
>> From: Stephen Warren [mailto:address@hidden
>> Sent: Sunday, 7 February 2016 4:09 PM
>>
>> Return a valid value from the BCM2835 property mailbox query "get board
>> revision". This query is used by U-Boot. Implementing it fixes the first
>> obvious difference between qemu and real HW.
...
> * Do you know where we can find the appropriate values for Pi1 boards?
Sure. There are two encoding schemes. For most boards, the revision
number is a simple integer that indicates the board type. A list can be
found at:
> https://github.com/AndrewFromMelbourne/raspberry_pi_revision/blob/master/README.md#prior-to-raspberry-pi-2
(There's also a bit that indicates the Pi has been over-volted in there,
so you need to mask off 0x1000000 or just use the LS byte when
extracting the revision.)
The RPi2 and RPi0 introduce a more complex multi-field encoding scheme
described at:
> https://github.com/AndrewFromMelbourne/raspberry_pi_revision/blob/master/README.md#raspberry-pi-2--model-zero
You can find how U-Boot interprets the revision fields at:
> https://github.com/swarren/u-boot/blob/rpi_dev/board/raspberrypi/rpi/rpi.c#L335
Also see the various xx_models[] arrays, and some more links at:
> https://github.com/swarren/u-boot/blob/rpi_dev/board/raspberrypi/rpi/rpi.c#L77