All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Maydell <peter.maydell@linaro.org>
To: qemu-devel@nongnu.org
Subject: [PULL 45/51] hw/arm/bcm2835_peripherals: Use the thermal sensor block
Date: Thu, 24 Oct 2019 17:27:18 +0100	[thread overview]
Message-ID: <20191024162724.31675-46-peter.maydell@linaro.org> (raw)
In-Reply-To: <20191024162724.31675-1-peter.maydell@linaro.org>

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

Map the thermal sensor in the BCM2835 block.

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id: 20191019234715.25750-3-f4bug@amsat.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 include/hw/arm/bcm2835_peripherals.h |  2 ++
 include/hw/arm/raspi_platform.h      |  1 +
 hw/arm/bcm2835_peripherals.c         | 13 +++++++++++++
 3 files changed, 16 insertions(+)

diff --git a/include/hw/arm/bcm2835_peripherals.h b/include/hw/arm/bcm2835_peripherals.h
index 62a4c7b559d..be7ad9b4991 100644
--- a/include/hw/arm/bcm2835_peripherals.h
+++ b/include/hw/arm/bcm2835_peripherals.h
@@ -20,6 +20,7 @@
 #include "hw/misc/bcm2835_property.h"
 #include "hw/misc/bcm2835_rng.h"
 #include "hw/misc/bcm2835_mbox.h"
+#include "hw/misc/bcm2835_thermal.h"
 #include "hw/sd/sdhci.h"
 #include "hw/sd/bcm2835_sdhost.h"
 #include "hw/gpio/bcm2835_gpio.h"
@@ -53,6 +54,7 @@ typedef struct BCM2835PeripheralState {
     SDHCIState sdhci;
     BCM2835SDHostState sdhost;
     BCM2835GpioState gpio;
+    Bcm2835ThermalState thermal;
     UnimplementedDeviceState i2s;
     UnimplementedDeviceState spi[1];
     UnimplementedDeviceState i2c[3];
diff --git a/include/hw/arm/raspi_platform.h b/include/hw/arm/raspi_platform.h
index cdcbca943fb..61b04a1bd4a 100644
--- a/include/hw/arm/raspi_platform.h
+++ b/include/hw/arm/raspi_platform.h
@@ -48,6 +48,7 @@
 #define SPI0_OFFSET             0x204000
 #define BSC0_OFFSET             0x205000 /* BSC0 I2C/TWI */
 #define OTP_OFFSET              0x20f000
+#define THERMAL_OFFSET          0x212000
 #define BSC_SL_OFFSET           0x214000 /* SPI slave */
 #define AUX_OFFSET              0x215000 /* AUX: UART1/SPI1/SPI2 */
 #define EMMC1_OFFSET            0x300000
diff --git a/hw/arm/bcm2835_peripherals.c b/hw/arm/bcm2835_peripherals.c
index fdcf616c56a..70bf927a025 100644
--- a/hw/arm/bcm2835_peripherals.c
+++ b/hw/arm/bcm2835_peripherals.c
@@ -111,6 +111,10 @@ static void bcm2835_peripherals_init(Object *obj)
     object_property_add_const_link(OBJECT(&s->dma), "dma-mr",
                                    OBJECT(&s->gpu_bus_mr), &error_abort);
 
+    /* Thermal */
+    sysbus_init_child_obj(obj, "thermal", &s->thermal, sizeof(s->thermal),
+                          TYPE_BCM2835_THERMAL);
+
     /* GPIO */
     sysbus_init_child_obj(obj, "gpio", &s->gpio, sizeof(s->gpio),
                           TYPE_BCM2835_GPIO);
@@ -321,6 +325,15 @@ static void bcm2835_peripherals_realize(DeviceState *dev, Error **errp)
                                                   INTERRUPT_DMA0 + n));
     }
 
+    /* THERMAL */
+    object_property_set_bool(OBJECT(&s->thermal), true, "realized", &err);
+    if (err) {
+        error_propagate(errp, err);
+        return;
+    }
+    memory_region_add_subregion(&s->peri_mr, THERMAL_OFFSET,
+                sysbus_mmio_get_region(SYS_BUS_DEVICE(&s->thermal), 0));
+
     /* GPIO */
     object_property_set_bool(OBJECT(&s->gpio), true, "realized", &err);
     if (err) {
-- 
2.20.1



  parent reply	other threads:[~2019-10-24 17:18 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-24 16:26 [PULL 00/51] target-arm queue Peter Maydell
2019-10-24 16:26 ` [PULL 01/51] hw/gpio: Fix property accessors of the AST2600 GPIO 1.8V model Peter Maydell
2019-10-24 16:26 ` [PULL 02/51] aspeed: Add an AST2600 eval board Peter Maydell
2019-10-24 16:26 ` [PULL 03/51] target/arm: Split out rebuild_hflags_common Peter Maydell
2019-10-24 16:26 ` [PULL 04/51] target/arm: Split out rebuild_hflags_a64 Peter Maydell
2019-10-24 16:26 ` [PULL 05/51] target/arm: Split out rebuild_hflags_common_32 Peter Maydell
2019-10-24 16:26 ` [PULL 06/51] target/arm: Split arm_cpu_data_is_big_endian Peter Maydell
2019-10-24 16:26 ` [PULL 07/51] target/arm: Split out rebuild_hflags_m32 Peter Maydell
2019-10-24 16:26 ` [PULL 08/51] target/arm: Reduce tests vs M-profile in cpu_get_tb_cpu_state Peter Maydell
2019-10-24 16:26 ` [PULL 09/51] target/arm: Split out rebuild_hflags_a32 Peter Maydell
2019-10-24 16:26 ` [PULL 10/51] target/arm: Split out rebuild_hflags_aprofile Peter Maydell
2019-10-24 16:26 ` [PULL 11/51] target/arm: Hoist XSCALE_CPAR, VECLEN, VECSTRIDE in cpu_get_tb_cpu_state Peter Maydell
2019-10-24 16:26 ` [PULL 12/51] target/arm: Simplify set of PSTATE_SS " Peter Maydell
2019-10-24 16:26 ` [PULL 13/51] target/arm: Hoist computation of TBFLAG_A32.VFPEN Peter Maydell
2019-10-24 16:26 ` [PULL 14/51] target/arm: Add arm_rebuild_hflags Peter Maydell
2019-10-24 16:26 ` [PULL 15/51] target/arm: Split out arm_mmu_idx_el Peter Maydell
2019-10-24 16:26 ` [PULL 16/51] target/arm: Hoist store to cs_base in cpu_get_tb_cpu_state Peter Maydell
2019-10-24 16:26 ` [PULL 17/51] target/arm: Add HELPER(rebuild_hflags_{a32, a64, m32}) Peter Maydell
2019-10-24 16:26 ` [PULL 18/51] target/arm: Rebuild hflags at EL changes Peter Maydell
2019-10-24 16:26 ` [PULL 19/51] target/arm: Rebuild hflags at MSR writes Peter Maydell
2019-10-24 16:26 ` [PULL 20/51] target/arm: Rebuild hflags at CPSR writes Peter Maydell
2019-10-24 16:26 ` [PULL 21/51] target/arm: Rebuild hflags at Xscale SCTLR writes Peter Maydell
2019-10-24 16:26 ` [PULL 22/51] target/arm: Rebuild hflags for M-profile Peter Maydell
2019-10-24 16:26 ` [PULL 23/51] target/arm: Rebuild hflags for M-profile NVIC Peter Maydell
2019-10-24 16:26 ` [PULL 24/51] linux-user/aarch64: Rebuild hflags for TARGET_WORDS_BIGENDIAN Peter Maydell
2019-10-24 16:26 ` [PULL 25/51] linux-user/arm: " Peter Maydell
2019-10-24 16:26 ` [PULL 26/51] target/arm: Rely on hflags correct in cpu_get_tb_cpu_state Peter Maydell
2019-10-24 16:27 ` [PULL 27/51] hw/net/fsl_etsec/etsec.c: Switch to transaction-based ptimer API Peter Maydell
2019-10-24 16:27 ` [PULL 28/51] hw/timer/xilinx_timer.c: " Peter Maydell
2019-10-24 16:27 ` [PULL 29/51] hw/dma/xilinx_axidma.c: " Peter Maydell
2019-10-24 16:27 ` [PULL 30/51] hw/timer/slavio_timer: Remove useless check for NULL t->timer Peter Maydell
2019-10-24 16:27 ` [PULL 31/51] hw/timer/slavio_timer.c: Switch to transaction-based ptimer API Peter Maydell
2019-10-24 16:27 ` [PULL 32/51] hw/timer/grlib_gptimer.c: " Peter Maydell
2019-10-24 16:27 ` [PULL 33/51] hw/m68k/mcf5206.c: " Peter Maydell
2019-10-24 16:27 ` [PULL 34/51] hw/watchdog/milkymist-sysctl.c: " Peter Maydell
2019-10-24 16:27 ` [PULL 35/51] target/arm/monitor: Introduce qmp_query_cpu_model_expansion Peter Maydell
2019-10-24 16:27 ` [PULL 36/51] tests: arm: Introduce cpu feature tests Peter Maydell
2019-10-24 16:27 ` [PULL 37/51] target/arm: Allow SVE to be disabled via a CPU property Peter Maydell
2019-10-24 16:27 ` [PULL 38/51] target/arm/cpu64: max cpu: Introduce sve<N> properties Peter Maydell
2019-10-24 16:27 ` [PULL 39/51] target/arm/kvm64: Add kvm_arch_get/put_sve Peter Maydell
2019-10-24 16:27 ` [PULL 40/51] target/arm/kvm64: max cpu: Enable SVE when available Peter Maydell
2019-10-24 16:27 ` [PULL 41/51] target/arm/kvm: scratch vcpu: Preserve input kvm_vcpu_init features Peter Maydell
2019-10-24 16:27 ` [PULL 42/51] target/arm/cpu64: max cpu: Support sve properties with KVM Peter Maydell
2019-10-24 16:27 ` [PULL 43/51] target/arm/kvm: host cpu: Add support for sve<N> properties Peter Maydell
2019-10-24 16:27 ` [PULL 44/51] hw/misc/bcm2835_thermal: Add a dummy BCM2835 thermal sensor Peter Maydell
2019-10-24 16:27 ` Peter Maydell [this message]
2019-10-24 16:27 ` [PULL 46/51] hw/timer/bcm2835: Add the BCM2835 SYS_timer Peter Maydell
2019-10-24 16:27 ` [PULL 47/51] hw/arm/bcm2835_peripherals: Use the SYS_timer Peter Maydell
2019-10-24 16:27 ` [PULL 48/51] hw/arm/bcm2836: Make the SoC code modular Peter Maydell
2019-10-24 16:27 ` [PULL 49/51] hw/arm/bcm2836: Rename cpus[] as cpu[].core Peter Maydell
2019-10-24 16:27 ` [PULL 50/51] hw/arm/raspi: Use AddressSpace when using arm_boot::write_secondary_boot Peter Maydell
2019-10-24 16:27 ` [PULL 51/51] hw/arm/highbank: Use AddressSpace when using write_secondary_boot() Peter Maydell
2019-10-24 18:18 ` [PULL 00/51] target-arm queue Philippe Mathieu-Daudé
2019-10-24 19:29   ` Mark Cave-Ayland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191024162724.31675-46-peter.maydell@linaro.org \
    --to=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.