Commit 47705eff7a822105dfddaa03aadfe95f05849892

Authored by Stephen Warren
Committed by Tom Rini
1 parent 3207d8fc9c

ARM: rpi: support model A+

Add a board rev entry for the new model A+, and augment the board
rev error handling code to be a bit more verbose.

Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>

Showing 2 changed files with 13 additions and 2 deletions Side-by-side Diff

arch/arm/include/asm/arch-bcm2835/mbox.h
... ... @@ -140,6 +140,7 @@
140 140 #define BCM2835_BOARD_REV_B_REV2_f 0xf
141 141 #define BCM2835_BOARD_REV_B_PLUS 0x10
142 142 #define BCM2835_BOARD_REV_CM 0x11
  143 +#define BCM2835_BOARD_REV_A_PLUS 0x12
143 144  
144 145 struct bcm2835_mbox_tag_get_board_rev {
145 146 struct bcm2835_mbox_tag_hdr tag_hdr;
board/raspberrypi/rpi/rpi.c
... ... @@ -149,6 +149,11 @@
149 149 "bcm2835-rpi-cm.dtb",
150 150 false,
151 151 },
  152 + [BCM2835_BOARD_REV_A_PLUS] = {
  153 + "Model A+",
  154 + "bcm2835-rpi-a-plus.dtb",
  155 + false,
  156 + },
152 157 };
153 158  
154 159 u32 rpi_board_rev = 0;
155 160  
156 161  
157 162  
... ... @@ -260,12 +265,17 @@
260 265 }
261 266  
262 267 rpi_board_rev = msg->get_board_rev.body.resp.rev;
263   - if (rpi_board_rev >= ARRAY_SIZE(models))
  268 + if (rpi_board_rev >= ARRAY_SIZE(models)) {
  269 + printf("RPI: Board rev %u outside known range\n",
  270 + rpi_board_rev);
264 271 rpi_board_rev = 0;
  272 + }
265 273  
266 274 name = models[rpi_board_rev].name;
267   - if (!name)
  275 + if (!name) {
  276 + printf("RPI: Board rev %u unknown\n", rpi_board_rev);
268 277 name = "Unknown model";
  278 + }
269 279 printf("RPI model: %s\n", name);
270 280 }
271 281