[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 12/41] Add memory region for BCM2837 RPiVid ASB
From: |
Sergey Kambalin |
Subject: |
[PATCH v6 12/41] Add memory region for BCM2837 RPiVid ASB |
Date: |
Sun, 25 Feb 2024 18:02:30 -0600 |
Signed-off-by: Sergey Kambalin <sergey.kambalin@auriga.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
---
hw/arm/bcm2838_peripherals.c | 3 +++
include/hw/arm/bcm2838_peripherals.h | 2 ++
include/hw/arm/raspi_platform.h | 2 +-
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/hw/arm/bcm2838_peripherals.c b/hw/arm/bcm2838_peripherals.c
index 55ae56733f..ca2f37b260 100644
--- a/hw/arm/bcm2838_peripherals.c
+++ b/hw/arm/bcm2838_peripherals.c
@@ -185,6 +185,9 @@ static void bcm2838_peripherals_realize(DeviceState *dev,
Error **errp)
sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->gpio), 0));
object_property_add_alias(OBJECT(s), "sd-bus", OBJECT(&s->gpio), "sd-bus");
+
+ /* BCM2838 RPiVid ASB must be mapped to prevent kernel crash */
+ create_unimp(s_base, &s->asb, "bcm2838-asb", BRDG_OFFSET, 0x24);
}
static void bcm2838_peripherals_class_init(ObjectClass *oc, void *data)
diff --git a/include/hw/arm/bcm2838_peripherals.h
b/include/hw/arm/bcm2838_peripherals.h
index 86b0d96944..af085934c9 100644
--- a/include/hw/arm/bcm2838_peripherals.h
+++ b/include/hw/arm/bcm2838_peripherals.h
@@ -69,6 +69,8 @@ struct BCM2838PeripheralState {
OrIRQState mmc_irq_orgate;
OrIRQState dma_7_8_irq_orgate;
OrIRQState dma_9_10_irq_orgate;
+
+ UnimplementedDeviceState asb;
};
struct BCM2838PeripheralClass {
diff --git a/include/hw/arm/raspi_platform.h b/include/hw/arm/raspi_platform.h
index 0db146e592..7bc4807fa5 100644
--- a/include/hw/arm/raspi_platform.h
+++ b/include/hw/arm/raspi_platform.h
@@ -73,7 +73,7 @@ uint64_t board_ram_size(uint32_t board_rev);
#define MPHI_OFFSET 0x6000 /* Message-based Parallel Host Intf.
*/
#define DMA_OFFSET 0x7000 /* DMA controller, channels 0-14 */
#define ARBA_OFFSET 0x9000
-#define BRDG_OFFSET 0xa000
+#define BRDG_OFFSET 0xa000 /* RPiVid ASB for BCM2838 (BCM2711) */
#define ARM_OFFSET 0xB000 /* ARM control block */
#define ARMCTRL_OFFSET (ARM_OFFSET + 0x000)
#define ARMCTRL_IC_OFFSET (ARM_OFFSET + 0x200) /* Interrupt controller */
--
2.34.1
- [PATCH v6 01/41] Split out common part of BCM283X classes, (continued)
- [PATCH v6 08/41] Connect SD controller to BCM2838 GPIO, Sergey Kambalin, 2024/02/25
- [PATCH v6 02/41] Split out common part of peripherals, Sergey Kambalin, 2024/02/25
- [PATCH v6 04/41] Introduce BCM2838 SoC, Sergey Kambalin, 2024/02/25
- [PATCH v6 06/41] Add BCM2838 GPIO stub, Sergey Kambalin, 2024/02/25
- [PATCH v6 09/41] Add GPIO and SD to BCM2838 periph, Sergey Kambalin, 2024/02/25
- [PATCH v6 12/41] Add memory region for BCM2837 RPiVid ASB,
Sergey Kambalin <=
- [PATCH v6 14/41] Add BCM2838 PCIE host, Sergey Kambalin, 2024/02/25
- [PATCH v6 10/41] Introduce Raspberry PI 4 machine, Sergey Kambalin, 2024/02/25
- [PATCH v6 13/41] Add BCM2838 PCIE Root Complex, Sergey Kambalin, 2024/02/25
- [PATCH v6 15/41] Enable BCM2838 PCIE, Sergey Kambalin, 2024/02/25
- [PATCH v6 16/41] Add RPi4 RNG200, Sergey Kambalin, 2024/02/25
- [PATCH v6 05/41] Add GIC-400 to BCM2838 SoC, Sergey Kambalin, 2024/02/25
- [PATCH v6 17/41] Implement BCM2838 thermal sensor, Sergey Kambalin, 2024/02/25
- [PATCH v6 03/41] Split out raspi machine common part, Sergey Kambalin, 2024/02/25