[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 13/14] hw/arm/bcm2838: Map the PCIe memory space
From: |
Philippe Mathieu-Daudé |
Subject: |
[Qemu-devel] [RFC PATCH 13/14] hw/arm/bcm2838: Map the PCIe memory space |
Date: |
Wed, 4 Sep 2019 19:13:14 +0200 |
The BCM2711 has a BCM54213 Gigabit Ethernet block mapped
in the PCIe range.
Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
FIXME: create the bcm54213-geth in raspi.c?
---
hw/arm/bcm2836.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/hw/arm/bcm2836.c b/hw/arm/bcm2836.c
index d89d7cd71d..39190a108f 100644
--- a/hw/arm/bcm2836.c
+++ b/hw/arm/bcm2836.c
@@ -15,6 +15,7 @@
#include "hw/arm/bcm2836.h"
#include "hw/arm/raspi_platform.h"
#include "hw/sysbus.h"
+#include "hw/misc/unimp.h"
struct BCM283XInfo {
const char *name;
@@ -60,6 +61,8 @@ static const BCM283XInfo bcm283x_socs[] = {
#define GIC_VIFACE_OTHER_OFS(cpu) (0x5000 + (cpu) * 0x200)
#define GIC_VCPU_OFS 0x6000
+#define PCIE_BASE 0x7d500000
+
static void bcm2836_init(Object *obj)
{
BCM283XState *s = BCM283X(obj);
@@ -238,6 +241,13 @@ static void bcm2836_realize(DeviceState *dev, Error **errp)
qdev_connect_gpio_out(DEVICE(&s->cpus[n]), GTIMER_SEC,
qdev_get_gpio_in_named(DEVICE(&s->control), "cntpsirq", n));
}
+
+ /* bcm2838 kludge to easily create PCIe */
+ if (info->gic_base) {
+ create_unimplemented_device("bcm2838-pcie", PCIE_BASE, 0x100000);
+ create_unimplemented_device("bcm54213-geth",
+ PCIE_BASE + 0x80000, 0x10000);
+ }
}
static Property bcm2836_props[] = {
--
2.20.1
- [Qemu-devel] [PATCH 08/14] hw/arm/bcm2836: Make the SoC code modular, (continued)
- [Qemu-devel] [PATCH 08/14] hw/arm/bcm2836: Make the SoC code modular, Philippe Mathieu-Daudé, 2019/09/04
- [Qemu-devel] [PATCH 09/14] hw/arm/raspi: Make the board code modular, Philippe Mathieu-Daudé, 2019/09/04
- [Qemu-devel] [PATCH 10/14] hw/arm/raspi: Define various blocks base addresses, Philippe Mathieu-Daudé, 2019/09/04
- [Qemu-devel] [RFC PATCH 14/14] hw/arm/raspi: Add the Raspberry Pi 4B board, Philippe Mathieu-Daudé, 2019/09/04
- [Qemu-devel] [PATCH 11/14] hw/arm/bcm2835_peripherals: Map various BCM2838 blocks, Philippe Mathieu-Daudé, 2019/09/04
- [Qemu-devel] [RFC PATCH 13/14] hw/arm/bcm2838: Map the PCIe memory space,
Philippe Mathieu-Daudé <=
- [Qemu-devel] [RFC PATCH 12/14] hw/arm/bcm2836: Add the BCM2838 which uses a GICv2, Philippe Mathieu-Daudé, 2019/09/04
- RE: [Qemu-arm] [RFC PATCH 00/14] hw/arm: Add the Raspberry Pi 4B, Stewart Hildebrand, 2019/09/21