8000 Merge pull request #702 from raspberrypi/revision-codes · macmpi/documentation@e48ae2d · GitHub
[go: up one dir, main page]

Skip to content

Commit e48ae2d

Browse files
authored
Merge pull request raspberrypi#702 from raspberrypi/revision-codes
Add revision codes page
2 parents fc6b471 + 4c962b7 commit e48ae2d

File tree

2 files changed

+98
-0
lines changed

2 files changed

+98
-0
lines changed

hardware/raspberrypi/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,7 @@ The hardware in the Raspberry Pi
2828
- How to access peripheral addresses using the bcm_host helpers
2929
- [Standard Conformity Documentation](conformity.md)
3030
- Conformance documentation for the various standards bodies
31+
- [Revision codes](revision-codes/README.md)
32+
- Raspberry Pi revision code reference
3133

3234

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# Raspberry Pi revision codes
2+
3+
Each distinct Raspberry Pi model revision has a unique revision code. You can look up a Raspberry Pi's revision code by running:
4+
5+
```bash
6+
cat /proc/cpuinfo
7+
```
8+
9+
The last three lines show the hardware type, the revision code, and the Pi's unique serial number. For example:
10+
11+
```
12+
Hardware : BCM2835
13+
Revision : a02082
14+
Serial : 00000000765fc593
15+
```
16+
17+
*Note: As of the 4.9 kernel, all Pis report `BCM2835`, even those with BCM2836 and BCM2837 processors. You should not use this string to detect the processor.*
18+
19+
## Old-style revision codes
20+
21+
The first set of Raspberry Pi revisions were given sequential hex revision codes from `0002` to `0015`:
22+
23+
| Code | Model | Revision | RAM | Manufacturer |
24+
| ---- | ----- | -------- | --------------- | ------------ |
25+
| 0002 | B | 1.0 | 256 MB | Egoman |
26+
| 0003 | B | 1.0 | 256 MB | Egoman |
27+
| 0004 | B | 2.0 | 256 MB | Sony UK |
28+
| 0005 | B | 2.0 | 256 MB | Qisda |
29+
| 0006 | B | 2.0 | 256 MB | Egoman |
30+
| 0007 | A | 2.0 | 256 MB | Egoman |
31+
| 0008 | A | 2.0 | 256 MB | Sony UK |
32+
| 0009 | A | 2.0 | 256 MB | Qisda |
33+
| 000d | B | 2.0 | 512 MB | Egoman |
34+
| 000e | B | 2.0 | 512 MB | Sony UK |
35+
| 000f | B | 2.0 | 512 MB | Egoman |
36+
| 0010 | B+ | 1.0 | 512 MB | Sony UK |
37+
| 0011 | CM1 | 1.0 | 512 MB | Sony UK |
38+
| 0012 | A+ | 1.1 | 256 MB | Sony UK |
39+
| 0013 | B+ | 1.2 | 512 MB | Embest |
40+
| 0014 | CM1 | 1.0 | 512 MB | Embest |
41+
| 0015 | A+ | 1.1 | 256 MB / 512 MB | Embest |
42+
43+
## New-style revision codes
44+
45+
With the launch of the Raspberry Pi 2, new-style revision codes were introduced. Rather than being sequential, each bit of the hex code represents a piece of information about the revision:
46+
47+
```
48+
uuuuuuuuFMMMCCCCPPPPTTTTTTTTRRRR
49+
```
50+
51+
| Part | Represents | Options |
52+
| -------- | ------------ | -------------------------- |
53+
| uuuuuuuu | Unused | Unused |
54+
| F | New flag | 1: new-style revision |
55+
| | | 0: old-style revision |
56+
| MMM | Memory size | 0: 256 MB |
57+
| | | 1: 512 MB |
58+
| | | 2: 1 GB |
59+
| CCCC | Manufacturer | 0: Sony UK |
60+
| | | 1: Egoman |
61+
| | | 2: Embest |
62+
| | | 3: Sony Japan |
63+
| PPPP | Processor | 0: BCM2835 |
64+
| | | 1: BCM2836 |
65+
| | | 2: BCM2837 |
66+
| TTTTTTTT | Type | 0: A |
67+
| | | 1: B |
68+
| | | 2: A+ |
69+
| | | 3: B+ |
70+
| | | 4: 2B |
71+
| | | 5: Alpha (early prototype) |
72+
| | | 6: CM1 |
73+
| | | 8: 3B |
74+
| | | 9: Zero |
75+
| | | a: CM3 |
76+
| | | c: Zero W |
77+
| RRRR | Revision | 0, 1, 2, etc. |
78+
79+
New-style revision codes in use:
80+
81+
| Code | Model | Revision | RAM | Manufacturer |
82+
| ------ | ----------------- | -------- | -------| ------------ |
83+
| 900021 | A+ | 1.1 | 512 MB | Sony UK |
84+
| 900032 | B+ | 1.2 | 512 MB | Sony UK |
85+
| 900092 | Zero | 1.2 | 512 MB | Sony UK |
86+
| 900093 | Zero | 1.3 | 512 MB | Sony UK |
87+
| 9000c1 | Zero W | 1.1 | 512 MB | Sony UK |
88+
| 920093 | Zero | 1.3 | 512 MB | Embest |
89+
| a01040 | 2B | 1.0 | 1 GB | Sony UK |
90+
| a01041 | 2B | 1.1 | 1 GB | Sony UK |
91+
| a02082 | 3B | 1.2 | 1 GB | Sony UK |
92+
| a020a0 | CM3 | 1.0 | 1 GB | Sony UK |
93+
| a21041 | 2B | 1.1 | 1 GB | Embest |
94+
| a22042 | 2B (with BCM2837) | 1.2 | 1 GB | Embest |
95+
| a22082 | 3B | 1.2 | 1 GB | Embest |
96+
| a32082 | 3B | 1.2 | 1 GB | Sony Japan |

0 commit comments

Comments
 (0)
0