|
65 | 65 | // | 0012 | A+ | 1 | 256 MB | Sony |
|
66 | 66 | // | 0013 | B+ | 1 | 512 MB | Embest |
|
67 | 67 | // | 0014 | compute | 1 | 512 MB | Sony |
|
68 |
| -// | 0015 | A+ | 1 | 256 MB | Sony | |
| 68 | +// | 0015 | A+ | 1 | 512 MB | Sony | |
69 | 69 | // +----------+---------+---------+--------+-------------+
|
70 | 70 | //
|
71 | 71 | // If the Raspberry Pi has been over-volted (voiding the warranty) the
|
|
96 | 96 | // +---+-------+--------------+--------------------------------------------+
|
97 | 97 | // | A | 00-03 | PCB Revision | (the pcb revision number) |
|
98 | 98 | // | B | 04-11 | Model name | A, B, A+, B+, B Pi2, Alpha, Compute Module |
|
99 |
| -// | | | | unknown, unknown, Zero | |
| 99 | +// | | | | unknown, unknown, Zero, Compute Module 3 | |
| 100 | +// | | | | unknown, Zero W | |
100 | 101 | // | C | 12-15 | Processor | BCM2835, BCM2836, BCM2837 |
|
101 |
| -// | D | 16-19 | Manufacturer | Sony, Egoman, Embest, unknown, Embest | |
| 102 | +// | D | 16-19 | Manufacturer | Sony, Egoman, Embest, Sony Japan, Embest | |
102 | 103 | // | E | 20-22 | Memory size | 256 MB, 512 MB, 1024 MB |
|
103 | 104 | // | F | 23-23 | encoded flag | (if set, revision is a bit field) |
|
104 | 105 | // | G | 24-24 | waranty bit | (if set, warranty void - Pre Pi2) |
|
@@ -171,23 +172,23 @@ static RASPBERRY_PI_MEMORY_T revisionToMemory[] =
|
171 | 172 | RPI_256MB, // 12
|
172 | 173 | RPI_512MB, // 13
|
173 | 174 | RPI_512MB, // 14
|
174 |
| - RPI_256MB // 15 |
| 175 | + RPI_512MB // 15 |
175 | 176 | };
|
176 | 177 |
|
177 | 178 | static RASPBERRY_PI_MEMORY_T bitFieldToMemory[] =
|
178 | 179 | {
|
179 |
| - RPI_256MB, |
180 |
| - RPI_512MB, |
181 |
| - RPI_1024MB |
| 180 | + RPI_256MB, // 0 |
| 181 | + RPI_512MB, // 1 |
| 182 | + RPI_1024MB // 2 |
182 | 183 | };
|
183 | 184 |
|
184 | 185 | //-------------------------------------------------------------------------
|
185 | 186 |
|
186 | 187 | static RASPBERRY_PI_PROCESSOR_T bitFieldToProcessor[] =
|
187 | 188 | {
|
188 |
| - RPI_BROADCOM_2835, |
189 |
| - RPI_BROADCOM_2836, |
190 |
| - RPI_BROADCOM_2837 |
| 189 | + RPI_BROADCOM_2835, // 0 |
| 190 | + RPI_BROADCOM_2836, // 1 |
| 191 | + RPI_BROADCOM_2837 // 2 |
191 | 192 | };
|
192 | 193 |
|
193 | 194 | //-------------------------------------------------------------------------
|
@@ -222,16 +223,19 @@ static RASPBERRY_PI_I2C_DEVICE_T revisionToI2CDevice[] =
|
222 | 223 |
|
223 | 224 | static RASPBERRY_PI_MODEL_T bitFieldToModel[] =
|
224 | 225 | {
|
225 |
| - RPI_MODEL_A, |
226 |
| - RPI_MODEL_B, |
227 |
| - RPI_MODEL_A_PLUS, |
228 |
| - RPI_MODEL_B_PLUS, |
229 |
| - RPI_MODEL_B_PI_2, |
230 |
| - RPI_MODEL_ALPHA, |
231 |
| - RPI_COMPUTE_MODULE, |
232 |
| - RPI_MODEL_UNKNOWN, |
233 |
| - RPI_MODEL_B_PI_3, |
234 |
| - RPI_MODEL_ZERO |
| 226 | + RPI_MODEL_A, // 0 |
| 227 | + RPI_MODEL_B, // 1 |
| 228 | + RPI_MODEL_A_PLUS, // 2 |
| 229 | + RPI_MODEL_B_PLUS, // 3 |
| 230 | + RPI_MODEL_B_PI_2, // 4 |
| 231 | + RPI_MODEL_ALPHA, // 5 |
| 232 | + RPI_COMPUTE_MODULE, // 6 |
| 233 | + RPI_MODEL_UNKNOWN, // 7 |
| 234 | + RPI_MODEL_B_PI_3, // 8 |
| 235 | + RPI_MODEL_ZERO, // 9 |
| 236 | + RPI_COMPUTE_MODULE_3, // A |
| 237 | + RPI_MODEL_UNKNOWN, // B |
| 238 | + RPI_MODEL_ZERO_W // C |
235 | 239 | };
|
236 | 240 |
|
237 | 241 | static RASPBERRY_PI_MODEL_T revisionToModel[] =
|
@@ -264,11 +268,11 @@ static RASPBERRY_PI_MODEL_T revisionToModel[] =
|
264 | 268 |
|
265 | 269 | static RASPBERRY_PI_MANUFACTURER_T bitFieldToManufacturer[] =
|
266 | 270 | {
|
267 |
| - RPI_MANUFACTURER_SONY, |
268 |
| - RPI_MANUFACTURER_EGOMAN, |
269 |
| - RPI_MANUFACTURER_EMBEST, |
270 |
| - RPI_MANUFACTURER_UNKNOWN, |
271 |
| - RPI_MANUFACTURER_EMBEST |
| 271 | + RPI_MANUFACTURER_SONY, // 0 |
| 272 | + RPI_MANUFACTURER_EGOMAN, // 1 |
| 273 | + RPI_MANUFACTURER_EMBEST, // 2 |
| 274 | + RPI_MANUFACTURER_SONY_JAPAN, // 3 |
| 275 | + RPI_MANUFACTURER_EMBEST // 4 |
272 | 276 | };
|
273 | 277 |
|
274 | 278 | static RASPBERRY_PI_MANUFACTURER_T revisionToManufacturer[] =
|
@@ -560,6 +564,11 @@ getRaspberryPiInformationForRevision(
|
560 | 564 |
|
561 | 565 | info->peripheralBase = RPI_BROADCOM_2837_PERIPHERAL_BASE;
|
562 | 566 | break;
|
| 567 | + |
| 568 | + default: |
| 569 | + |
| 570 | + info->peripheralBase = RPI_PERIPHERAL_BASE_UNKNOWN; |
| 571 | + break; |
563 | 572 | }
|
564 | 573 | }
|
565 | 574 |
|
@@ -715,6 +724,16 @@ raspberryPiModelToString(
|
715 | 724 | string = "Model B Pi 3";
|
716 | 725 | break;
|
717 | 726 |
|
| 727 | + case RPI_COMPUTE_MODULE_3: |
| 728 | + |
| 729 | + string = "Compute Module 3"; |
| 730 | + break; |
| 731 | + |
| 732 | + case RPI_MODEL_ZERO_W: |
| 733 | + |
| 734 | + string = "Model Zero W"; |
| 735 | + break; |
| 736 | + |
718 | 737 | default:
|
719 | 738 |
|
720 | 739 | break;
|
@@ -753,6 +772,11 @@ raspberryPiManufacturerToString(
|
753 | 772 | string = "Embest";
|
754 | 773 | break;
|
755 | 774 |
|
| 775 | + case RPI_MANUFACTURER_SONY_JAPAN: |
| 776 | + |
| 777 | + string = "Sony Japan"; |
| 778 | + break; |
| 779 | + |
756 | 780 | default:
|
757 | 781 |
|
758 | 782 | break;
|
|
0 commit comments