Private
Public Access
2
0

Added Raspberry Pi 400 to platforms

Signed-off-by: Chuckduey <cduey@msn.com>
This commit is contained in:
Chuckduey
2020-12-28 14:49:09 -07:00
committed by Tom Ingleby
parent 7786c7ded5
commit bb1c6df16b
2 changed files with 15 additions and 1 deletions

View File

@@ -25,6 +25,7 @@ extern "C" {
#define MRAA_RASPBERRY_PI3_B_PLUS_PINCOUNT 41
#define MRAA_RASPBERRY_PI3_A_PLUS_PINCOUNT 41
#define MRAA_RASPBERRY_PI4_B_PINCOUNT 41
#define MRAA_RASPBERRY_PI_400_PINCOUNT 41
mraa_board_t *
mraa_raspberry_pi();

View File

@@ -29,6 +29,7 @@
#define PLATFORM_NAME_RASPBERRY_PI3_B_PLUS "Raspberry Pi 3 Model B+"
#define PLATFORM_NAME_RASPBERRY_PI3_A_PLUS "Raspberry Pi 3 Model A+"
#define PLATFORM_NAME_RASPBERRY_PI4_B "Raspberry Pi 4 Model B"
#define PLATFORM_NAME_RASPBERRY_PI_400 "Raspberry Pi 400"
#define PLATFORM_RASPBERRY_PI_B_REV_1 1
#define PLATFORM_RASPBERRY_PI_A_REV_2 2
#define PLATFORM_RASPBERRY_PI_B_REV_2 3
@@ -42,6 +43,7 @@
#define PLATFORM_RASPBERRY_PI3_B_PLUS 11
#define PLATFORM_RASPBERRY_PI3_A_PLUS 12
#define PLATFORM_RASPBERRY_PI4_B 13
#define PLATFORM_RASPBERRY_PI_400 14
#define MMAP_PATH "/dev/mem"
#define BCM2835_PERI_BASE 0x20000000
#define BCM2836_PERI_BASE 0x3f000000
@@ -513,6 +515,12 @@ mraa_raspberry_pi()
b->phy_pin_count = MRAA_RASPBERRY_PI4_B_PINCOUNT;
peripheral_base = BCM2837_PERI_BASE;
block_size = BCM2837_BLOCK_SIZE;
} else if (strstr(line, "c03130")) {
b->platform_name = PLATFORM_NAME_RASPBERRY_PI_400;
platform_detected = PLATFORM_RASPBERRY_PI_400;
b->phy_pin_count = MRAA_RASPBERRY_PI_400_PINCOUNT;
peripheral_base = BCM2837_PERI_BASE;
block_size = BCM2837_BLOCK_SIZE;
} else {
b->platform_name = PLATFORM_NAME_RASPBERRY_PI_B_REV_1;
platform_detected = PLATFORM_RASPBERRY_PI_B_REV_1;
@@ -587,6 +595,10 @@ mraa_raspberry_pi()
b->platform_name = PLATFORM_NAME_RASPBERRY_PI4_B;
platform_detected = PLATFORM_RASPBERRY_PI4_B;
b->phy_pin_count = MRAA_RASPBERRY_PI4_B_PINCOUNT;
} else if (mraa_file_contains(compatible_path, "raspberrypi,4-model-bbrcm")) {
b->platform_name = PLATFORM_NAME_RASPBERRY_PI_400;
platform_detected = PLATFORM_RASPBERRY_PI_400;
b->phy_pin_count = MRAA_RASPBERRY_PI_400_PINCOUNT;
}
}
@@ -856,7 +868,8 @@ mraa_raspberry_pi()
(platform_detected == PLATFORM_RASPBERRY_PI_ZERO_W) ||
(platform_detected == PLATFORM_RASPBERRY_PI3_B_PLUS) ||
(platform_detected == PLATFORM_RASPBERRY_PI3_A_PLUS) ||
(platform_detected == PLATFORM_RASPBERRY_PI4_B)) {
(platform_detected == PLATFORM_RASPBERRY_PI4_B) ||
(platform_detected == PLATFORM_RASPBERRY_PI_400)) {
strncpy(b->pins[27].name, "ID_SD", MRAA_PIN_NAME_SIZE);
b->pins[27].capabilities = (mraa_pincapabilities_t){ 1, 0, 0, 0, 0, 0, 0, 0 };