xqemu/include/hw
Cédric Le Goater 7c1c69bca4 ast2400: add SMC controllers (FMC and SPI)
The Aspeed AST2400 soc includes a static memory controller for the BMC
which supports NOR, NAND and SPI flash memory modules. This controller
has two modes : the SMC for the legacy interface which supports only
one module and the FMC for the new interface which supports up to five
modules. The AST2400 also includes a SPI only controller used for the
host firmware, commonly called BIOS on Intel. It can be used in three
mode : a SPI master, SPI slave and SPI pass-through

Below is the initial framework for the SMC controller (FMC mode only)
and the SPI controller: the sysbus object, MMIO for registers
configuration and controls. Each controller has a SPI bus and a
configurable number of CS lines for SPI flash slaves.

The differences between the controllers are small, so they are
abstracted using indirections on the register numbers.

Only SPI flash modules are supported.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Message-id: 1467138270-32481-7-git-send-email-clg@kaod.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
[PMM: added one missing error_propagate]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2016-07-04 13:15:22 +01:00
..
acpi pc: use new CPU hotplug interface since 2.7 machine type 2016-06-24 05:21:38 +03:00
arm ast2400: add SMC controllers (FMC and SPI) 2016-07-04 13:15:22 +01:00
audio pcspk: convert "pit" property type from ptr to link 2016-06-29 14:03:45 +02:00
block pflash: make TYPE_CFI_PFLASH0{1,2} macros public 2016-06-29 14:03:46 +02:00
char serial: remove watch on reset 2016-06-29 14:03:47 +02:00
cpu qapi: keep names in 'CpuInstanceProperties' in sync with struct CPUCore 2016-06-27 13:15:06 +10:00
cris hw/char: QOM'ify etraxfs_ser.c 2016-05-29 09:11:10 +02:00
display introduce xlnx-dp 2016-06-14 16:01:03 +01:00
dma dma: Add Xilinx Zynq devcfg device model 2016-07-04 13:15:22 +01:00
gpio i.MX: add support for lower and upper interrupt in GPIO. 2015-12-17 13:37:13 +00:00
i2c hw/i2c-ddc.c: Implement DDC I2C slave 2016-06-14 15:59:15 +01:00
i386 ich9: implement SCI_IRQ_SEL register 2016-06-29 14:03:48 +02:00
ide ide: move headers to include folder 2016-06-29 14:03:45 +02:00
input cuda: port SET_DEVICE_LIST command to new framework 2016-02-17 09:59:30 +11:00
intc hw/intc/arm_gicv3: Implement functions to identify next pending irq 2016-06-17 15:23:51 +01:00
ipack ipack: Update e-mail address 2016-05-18 15:04:27 +03:00
ipmi ipmi: rework the fwinfo to be fetched from the interface 2016-06-07 15:36:54 +03:00
isa isa: introduce wrapper isa_connect_gpio_out 2016-06-29 14:03:46 +02:00
kvm hw: move headers to include/ 2013-04-08 18:13:10 +02:00
lm32 hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() 2015-02-18 11:58:50 +01:00
m68k m68k: include cpu-qom.h in files that require M68KCPU 2016-05-19 16:42:27 +02:00
mem nvdimm: support nvdimm label 2016-06-24 05:13:57 +03:00
mips mips: use MIPSCPU instead of CPUMIPSState 2016-05-19 16:42:27 +02:00
misc hw/misc: Add a model for the ASPEED System Control Unit 2016-06-27 15:37:33 +01:00
net Add ENET/Gbps Ethernet support to FEC device 2016-06-02 10:42:46 +08:00
nvram Sort the fw_cfg file list 2016-04-07 19:57:33 +03:00
pci pci: fix pci_requester_id() 2016-06-17 03:28:02 +03:00
pci-host ppc/xics: Replace "icp" with "xics" in most places 2016-07-01 13:41:47 +10:00
ppc ppc/xics: Replace "icp" with "xics" in most places 2016-07-01 13:41:47 +10:00
s390x s390x/css: introduce property type for device ids 2016-06-14 13:34:50 +02:00
scsi scsi: esp: make cmdbuf big enough for maximum CDB size 2016-06-16 18:39:05 +02:00
sd qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
sh4 sh4: include cpu-qom.h in files that require SuperHCPU 2016-05-19 16:42:27 +02:00
smbios ipmi: Add SMBIOS table entry 2016-06-24 05:13:57 +03:00
sparc QOM infrastructure fixes and device conversions 2015-03-02 13:20:43 +00:00
ssi ast2400: add SMC controllers (FMC and SPI) 2016-07-04 13:15:22 +01:00
timer pcspk: fix KVM 2016-06-30 19:00:02 +01:00
tricore target-tricore: Add board for systemmode 2014-09-01 14:49:20 +01:00
unicore32 hw: move headers to include/ 2013-04-08 18:13:10 +02:00
usb usb: move ehci register defines to header file 2014-06-02 16:28:59 +02:00
vfio memory: Fix IOMMU replay base address 2016-05-26 11:12:08 -06:00
virtio virtio-blk: add num-queues device property 2016-06-28 13:08:32 +01:00
watchdog s390x/watchdog: introduce diag288 watchdog device 2015-06-11 17:45:49 +02:00
xen xen: Clean up includes 2016-06-14 15:37:43 +01:00
boards.h QMP: Add query-hotpluggable-cpus 2016-06-17 16:33:49 +10:00
bt.h bt: check struct sizes 2015-12-04 09:39:55 +03:00
compat.h s390x: add compat machine for 2.7 2016-05-17 15:50:29 +02:00
devices.h arm: fix location of some include files 2013-04-15 15:16:01 +02:00
elf_ops.h loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
empty_slot.h hw: move headers to include/ 2013-04-08 18:13:10 +02:00
fw-path-provider.h fw-path-provider: Change GPL version to 2+ 2014-04-07 15:36:07 +02:00
hotplug.h qdev: hotplug: Introduce HotplugHandler.pre_plug() callback 2016-06-17 16:33:48 +10:00
hw.h hw: clean up hw/hw.h includes 2016-05-19 16:42:30 +02:00
ide.h Call pci_piix3_xen_ide_unplug from unplug_disks 2014-02-20 17:28:08 +00:00
irq.h irq: Remove qemu_irq_intercept_out 2014-10-23 16:41:25 +02:00
loader.h Sort the fw_cfg file list 2016-04-07 19:57:33 +03:00
nmi.h nmi: remove x86 specific nmi handling 2016-05-23 16:53:46 +02:00
pcmcia.h hmp: Remove "info pcmcia" 2014-10-24 12:19:11 +01:00
platform-bus.h sysbus: Add new platform bus helper device 2014-11-04 23:26:14 +01:00
ptimer.h hw/ptimer: Introduce ptimer_get_limit 2016-06-06 16:59:31 +01:00
qdev-core.h qdev: Use GList for global properties 2016-06-17 10:42:21 -03:00
qdev-dma.h qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
qdev-properties.h qdev: Clean up around properties 2016-06-07 18:19:23 +03:00
qdev.h hw: move headers to include/ 2013-04-08 18:13:10 +02:00
register.h register: Add block initialise helper 2016-07-04 13:15:22 +01:00
stream.h Trivial grammar and spelling fixes 2013-05-01 20:55:21 +04:00
sysbus.h hw: remove pio_addr_t 2016-05-19 16:42:30 +02:00
usb.h usb: Add QOM property "attached". 2016-06-22 12:53:26 +02:00