[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3 01/20] arm: add Faraday a360 SoC platform sup
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH v3 01/20] arm: add Faraday a360 SoC platform support |
Date: |
Sun, 17 Feb 2013 19:01:34 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130105 Thunderbird/17.0.2 |
Am 06.02.2013 10:45, schrieb Kuo-Jung Su:
> +typedef struct FaradayMachState {
> + ARMCPU *cpu;
> + DeviceState *scu;
> + DeviceState *ahbc;
> + DeviceState *ddrc;
> + DeviceState *hdma[2]; /* AHB DMA */
> + DeviceState *pdma[2]; /* APB DMA */
> + i2c_bus *i2c[2];
> +
> + MemoryRegion *as;
> + MemoryRegion *ram;
> + MemoryRegion *ram_alias;
> + pflash_t *rom;
> + MemoryRegion *sram;
> +
> + uint32_t ahb_slave4; /* AHB slave 4 default value */
> + uint32_t ahb_slave6; /* AHB slave 6 default value */
> + uint32_t ahb_remapped:1;
> + uint32_t ddr_inited:1;
> +} FaradayMachState;
I think you need to distinguish what's on the SoC and what's on the
evaluation board there...
For the SoC you can have a QOM type with DeviceState parent, but the
stuff on the board should stay separate. Instead of pointers you should
use the actual types (i.e., add field when you introduce the device
model). This will work out-of-the box for your own devices and will work
for ARMCPU once my pull is applied. The purpose would be container-like
grouping of devices and sharing across boards.
However, as Peter pointed out, devices should avoid fiddling with each
other's internals even if they have access to a pointer/field.
Regards,
Andreas
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
- [Qemu-devel] [PATCH v3 02/20] arm: add Faraday a369 SoC platform support, (continued)
- [Qemu-devel] [PATCH v3 06/20] arm: add Faraday FTWDT010 watchdog timer support, Kuo-Jung Su, 2013/02/06
- [Qemu-devel] [PATCH v3 09/20] arm: add Faraday FTRTC011 RTC timer support, Kuo-Jung Su, 2013/02/06
- [Qemu-devel] [PATCH v3 12/20] arm: add Faraday FTI2C010 I2C controller support, Kuo-Jung Su, 2013/02/06
- [Qemu-devel] [PATCH v3 13/20] arm: add Faraday FTNANDC021 nand flash controller support, Kuo-Jung Su, 2013/02/06
- [Qemu-devel] [PATCH v3 01/20] arm: add Faraday a360 SoC platform support, Kuo-Jung Su, 2013/02/06
- Re: [Qemu-devel] [PATCH v3 01/20] arm: add Faraday a360 SoC platform support,
Andreas Färber <=
[Qemu-devel] [PATCH v3 14/20] arm: add Faraday FTSSP010 multi-function controller support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 05/20] arm: add Faraday FTINTC020 interrupt controller support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 17/20] arm: add Faraday FTLCDC200 LCD controller support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 16/20] arm: add Faraday FTGMAC100 1Gbps ethernet support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 18/20] arm: add Faraday FTTSC010 touchscreen controller support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 03/20] arm: add Faraday FTAHBC020 support, Kuo-Jung Su, 2013/02/06
[Qemu-devel] [PATCH v3 04/20] arm: add Faraday FTDDRII030 support, Kuo-Jung Su, 2013/02/06