aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé <f4bug@amsat.org>2020-02-24 00:30:32 +0100
committerPeter Maydell <peter.maydell@linaro.org>2020-02-28 16:14:57 +0000
commit5df2cfbc8b61e0c5d050a69814f713d2ba045ec5 (patch)
tree339545f74871a2b48ee4cf6e2e08c56218bfd457 /hw
parentdac65ba1d7945c5d58ab63d8769103634adb2b01 (diff)
downloadqemu-5df2cfbc8b61e0c5d050a69814f713d2ba045ec5.zip
qemu-5df2cfbc8b61e0c5d050a69814f713d2ba045ec5.tar.gz
qemu-5df2cfbc8b61e0c5d050a69814f713d2ba045ec5.tar.bz2
hw/arm/integratorcp: Map the audio codec controller
The Linux kernel displays errors why trying to detect the PL041 audio interface: Linux version 4.16.0 (linus@genomnajs) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11)) #142 PREEMPT Wed May 9 13:24:55 CEST 2018 CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00093177 CPU: VIVT data cache, VIVT instruction cache OF: fdt: Machine model: ARM Integrator/CP ... OF: amba_device_add() failed (-19) for /fpga/aaci@1d000000 Since we have it already modelled, simply plug it. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-id: 20200223233033.15371-2-f4bug@amsat.org Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r--hw/arm/Kconfig1
-rw-r--r--hw/arm/integratorcp.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 3d86691..61635f5 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -69,6 +69,7 @@ config INTEGRATOR
select INTEGRATOR_DEBUG
select PL011 # UART
select PL031 # RTC
+ select PL041 # audio
select PL050 # keyboard/mouse
select PL110 # pl111 LCD controller
select PL181 # display
diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
index cc845b8..6d69010 100644
--- a/hw/arm/integratorcp.c
+++ b/hw/arm/integratorcp.c
@@ -642,6 +642,7 @@ static void integratorcp_init(MachineState *machine)
qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_WPROT, 0));
qdev_connect_gpio_out(dev, 1,
qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_CARDIN, 0));
+ sysbus_create_varargs("pl041", 0x1d000000, pic[25], NULL);
if (nd_table[0].used)
smc91c111_init(&nd_table[0], 0xc8000000, pic[27]);