All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH qemu 00/38] aspeed: going mainline
@ 2016-11-18 14:21 Cédric Le Goater
  2016-11-18 14:21 ` [PATCH qemu 01/38] m25p80: add support for the mx66l1g45g Cédric Le Goater
                   ` (37 more replies)
  0 siblings, 38 replies; 142+ messages in thread
From: Cédric Le Goater @ 2016-11-18 14:21 UTC (permalink / raw)
  To: openbmc

Hello,

This is rather large patchset which I intend to send to mainline qemu
in a couple of weeks when time permits. In there, you will find a lot
of littles fixes, some improvements on existing models and a couple of
new models which were never exposed to mainline yet. Feel free to scan
through the patches or just read the summary below and ask questions.

* SoC level 
  - an AST2400 A1 SoC for the Palmetto machine
  - a Romulus machine  
  - a SRAM region (which is used at early boot in U-Boot, serves as a
    stack, and by DRAM calibration)

* SMC (Flash controller) 
  - Command mode support. Flash contents is accessed directly on the
    AHB bus   
  - DMA support
  - dummy bytes
  - auto strapping of configuration for boot flash
  - use CS0 as a boot ROM. Today, qemu can not boot from a MMIO region.
    As this is complex to do (TCG layer modification), we use a ROM
    region in which we copy the flash contents. Hopefully, I got it 
    right this time.

* SDMC (DRAM controller) 
  - support for new registers to fake DRAM calibration (AST2400). This
    is a good start to understand what these 3000 lines of ARM
    assembly do in the lowlevel_init routine of U-Boot. What a mess ...
  
* I2C
  - a couple more devices 
  - the current model does not support the Linux driver sent to
    mailine. This is because the irq status handling is way too
    simplistic, or even broken. Anyone has some spare cycles for it ?
  
* Watchdog 
  - new model.  
  - not complete but reset under U-Boot and reboot under Linux now
    work so I think it is time to send the model upstream.
  - needs an upstream sponsor 
  
* Network 
  - new model of the ftgmac100 device
  - the ring buffer handling is imperfect and it does not support
    U-Boot (a pity) but we need feedback else this is going to bit rot
    for another 6 months
  - NSCI fake backend

For future work, please see the wiki : 

   https://github.com/openbmc/qemu/wiki

Cheers,

C.


Andrew Jeffery (1):
  wdt: aspeed: Fix failed reboot due to timer miscalculation

Cédric Le Goater (36):
  m25p80: add support for the mx66l1g45g
  aspeed: QOMify the CPU object and attach it to the SoC
  aspeed: attach the second SPI controller object to the SoC
  aspeed: extend the board configuration with flash models
  aspeed: add support for the romulus-bmc board
  aspeed: add a memory region for SRAM
  aspeed: add the definitions for the AST2400 A1 SoC
  aspeed: change SoC revision of the palmetto-bmc machine
  aspeed/scu: fix SCU region size
  aspeed/smc: improve segment register support
  aspeed/smc: get the number of flash modules from hw strapping
  aspeed/smc: rework the prototype of the AspeedSMCFlash helper routines
  aspeed/smc: introduce a aspeed_smc_flash_update_cs() helper
  aspeed/smc: autostrap CE0/1 configuration
  aspeed/smc: handle SPI flash Command mode
  aspeed/smc: add tests for Command mode
  aspeed/smc: unfold the AspeedSMCController array
  aspeed/smc: add a 'sdram_base' property
  aspeed/smc: add support for DMAs
  aspeed/smc: handle dummy bytes when doing fast reads
  aspeed/smc: adjust the size of the register region
  aspeed: use first SPI flash as a boot ROM
  block: add a model option for MTD devices
  aspeed/smc: use flash model option
  aspeed/sdmc: rework the locking register of the memory controller
  aspeed/sdmc: fake a few more registers to let DRAM calibration run
  hw/misc: add a TMP42{1,2,3} device model
  aspeed: add a temp sensor device on I2C bus 3
  aspeed: add a rtc device on I2C bus 0
  aspeed: add a watchdog controller
  wdt: aspeed: use scu to get clock freq
  net: add FTGMAC100 support
  net/ftgmac100: add a 'aspeed' property
  ast2400: add a FTGMAC100 nic
  slirp: add a fake NCSI backend
  target-arm: Add VBAR support to ARM1176 CPUs

Joel Stanley (1):
  wdt: Add Aspeed watchdog device model

 blockdev.c                       |  13 +
 default-configs/arm-softmmu.mak  |   2 +
 hw/arm/aspeed.c                  | 108 ++++-
 hw/arm/aspeed_soc.c              | 162 ++++++-
 hw/block/m25p80.c                |   1 +
 hw/misc/Makefile.objs            |   1 +
 hw/misc/aspeed_scu.c             |  18 +-
 hw/misc/aspeed_sdmc.c            | 219 +++++++++-
 hw/misc/tmp421.c                 | 400 +++++++++++++++++
 hw/net/Makefile.objs             |   1 +
 hw/net/ftgmac100.c               | 916 +++++++++++++++++++++++++++++++++++++++
 hw/ssi/aspeed_smc.c              | 660 ++++++++++++++++++++++++----
 hw/watchdog/Makefile.objs        |   1 +
 hw/watchdog/wdt_aspeed.c         | 223 ++++++++++
 include/hw/arm/aspeed_soc.h      |   8 +-
 include/hw/misc/aspeed_scu.h     |   2 +
 include/hw/misc/aspeed_sdmc.h    |   3 +-
 include/hw/net/ftgmac100.h       |  64 +++
 include/hw/ssi/aspeed_smc.h      |   8 +-
 include/hw/watchdog/wdt_aspeed.h |  43 ++
 include/net/eth.h                |   1 +
 include/sysemu/blockdev.h        |   1 +
 qemu-options.hx                  |   4 +-
 slirp/Makefile.objs              |   2 +-
 slirp/ncsi-pkt.h                 | 394 +++++++++++++++++
 slirp/ncsi.c                     |  95 ++++
 slirp/slirp.c                    |   4 +
 slirp/slirp.h                    |   3 +
 target-arm/cpu.c                 |   2 +
 target-arm/cpu.h                 |   1 +
 target-arm/helper.c              |  18 +-
 tests/m25p80-test.c              |  86 ++++
 32 files changed, 3334 insertions(+), 130 deletions(-)
 create mode 100644 hw/misc/tmp421.c
 create mode 100644 hw/net/ftgmac100.c
 create mode 100644 hw/watchdog/wdt_aspeed.c
 create mode 100644 include/hw/net/ftgmac100.h
 create mode 100644 include/hw/watchdog/wdt_aspeed.h
 create mode 100644 slirp/ncsi-pkt.h
 create mode 100644 slirp/ncsi.c

-- 
2.7.4

^ permalink raw reply	[flat|nested] 142+ messages in thread

end of thread, other threads:[~2016-11-28 12:38 UTC | newest]

Thread overview: 142+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-18 14:21 [PATCH qemu 00/38] aspeed: going mainline Cédric Le Goater
2016-11-18 14:21 ` [PATCH qemu 01/38] m25p80: add support for the mx66l1g45g Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 10:31   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 02/38] aspeed: QOMify the CPU object and attach it to the SoC Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 10:59   ` Andrew Jeffery
2016-11-21 14:14     ` Cédric Le Goater
2016-11-18 14:21 ` [PATCH qemu 03/38] aspeed: attach the second SPI controller object " Cédric Le Goater
2016-11-21 11:03   ` Andrew Jeffery
2016-11-21 11:42     ` Joel Stanley
2016-11-21 11:57       ` Andrew Jeffery
2016-11-21 13:14         ` Cédric Le Goater
2016-11-18 14:21 ` [PATCH qemu 04/38] aspeed: extend the board configuration with flash models Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21 11:07   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 05/38] aspeed: add support for the romulus-bmc board Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 12:18   ` Andrew Jeffery
2016-11-21 14:44     ` Cédric Le Goater
2016-11-22  3:06       ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 06/38] aspeed: add a memory region for SRAM Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 12:21   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 07/38] aspeed: add the definitions for the AST2400 A1 SoC Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21 12:50   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 08/38] aspeed: change SoC revision of the palmetto-bmc machine Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21 13:16   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 09/38] aspeed/scu: fix SCU region size Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21  9:44     ` Cédric Le Goater
2016-11-21 12:54   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 10/38] aspeed/smc: improve segment register support Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-18 14:21 ` [PATCH qemu 11/38] aspeed/smc: get the number of flash modules from hw strapping Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21  9:59     ` Cédric Le Goater
2016-11-21 10:05       ` Joel Stanley
2016-11-21 13:13   ` Andrew Jeffery
2016-11-21 13:29     ` Cédric Le Goater
2016-11-21 13:35       ` Andrew Jeffery
2016-11-21 13:47         ` Cédric Le Goater
2016-11-22  3:10           ` Andrew Jeffery
2016-11-22  7:21             ` Cédric Le Goater
2016-11-23  1:22               ` Andrew Jeffery
2016-11-23  9:33                 ` Cédric Le Goater
2016-11-23 19:08                   ` Cédric Le Goater
2016-11-24  1:00                     ` Andrew Jeffery
2016-11-24  6:31                       ` Cédric Le Goater
2016-11-18 14:21 ` [PATCH qemu 12/38] aspeed/smc: rework the prototype of the AspeedSMCFlash helper routines Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 13:20   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 13/38] aspeed/smc: introduce a aspeed_smc_flash_update_cs() helper Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21 10:02     ` Cédric Le Goater
2016-11-21 13:36   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 14/38] aspeed/smc: autostrap CE0/1 configuration Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-25  3:07   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 15/38] aspeed/smc: handle SPI flash Command mode Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-25  4:23   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 16/38] aspeed/smc: add tests for " Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 10:32     ` Cédric Le Goater
2016-11-25  4:30   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 17/38] aspeed/smc: unfold the AspeedSMCController array Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-25  4:31   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 18/38] aspeed/smc: add a 'sdram_base' property Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-25  4:35   ` Andrew Jeffery
2016-11-18 14:21 ` [PATCH qemu 19/38] aspeed/smc: add support for DMAs Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 11:07     ` Cédric Le Goater
2016-11-21 11:24       ` Joel Stanley
2016-11-18 14:22 ` [PATCH qemu 20/38] aspeed/smc: handle dummy bytes when doing fast reads Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-21 12:50     ` Cédric Le Goater
2016-11-28  1:35   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 21/38] aspeed/smc: adjust the size of the register region Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-28  1:44   ` Andrew Jeffery
2016-11-28  7:24     ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 22/38] aspeed: use first SPI flash as a boot ROM Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-28  1:47   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 23/38] block: add a model option for MTD devices Cédric Le Goater
2016-11-21  7:27   ` Joel Stanley
2016-11-21 10:31     ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 24/38] aspeed/smc: use flash model option Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-18 14:22 ` [PATCH qemu 25/38] aspeed/sdmc: rework the locking register of the memory controller Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-28  1:55   ` Andrew Jeffery
2016-11-28 12:34     ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 26/38] aspeed/sdmc: fake a few more registers to let DRAM calibration run Cédric Le Goater
2016-11-21  7:25   ` Joel Stanley
2016-11-28  2:02   ` Andrew Jeffery
2016-11-28 12:38     ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 27/38] hw/misc: add a TMP42{1,2,3} device model Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-18 14:22 ` [PATCH qemu 28/38] aspeed: add a temp sensor device on I2C bus 3 Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-22 16:57   ` Cédric Le Goater
2016-11-28  2:04     ` Andrew Jeffery
2016-11-28  9:51       ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 29/38] aspeed: add a rtc device on I2C bus 0 Cédric Le Goater
2016-11-21  7:27   ` Joel Stanley
2016-11-22 17:00   ` Cédric Le Goater
2016-11-28  2:05   ` Andrew Jeffery
2016-11-28  2:09     ` Andrew Jeffery
2016-11-28  9:52       ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 30/38] wdt: Add Aspeed watchdog device model Cédric Le Goater
2016-11-21 13:03   ` Cédric Le Goater
2016-11-21 13:23     ` Joel Stanley
2016-11-28  2:11     ` Andrew Jeffery
2016-11-28  9:58       ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 31/38] aspeed: add a watchdog controller Cédric Le Goater
2016-11-21  7:27   ` Joel Stanley
2016-11-21 12:53     ` Cédric Le Goater
2016-11-28  2:12   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 32/38] wdt: aspeed: Fix failed reboot due to timer miscalculation Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-18 14:22 ` [PATCH qemu 33/38] wdt: aspeed: use scu to get clock freq Cédric Le Goater
2016-11-21  7:27   ` Joel Stanley
2016-11-18 14:22 ` [PATCH qemu 34/38] net: add FTGMAC100 support Cédric Le Goater
2016-11-28  2:13   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 35/38] net/ftgmac100: add a 'aspeed' property Cédric Le Goater
2016-11-28  2:22   ` Andrew Jeffery
2016-11-28 11:20     ` Cédric Le Goater
2016-11-18 14:22 ` [PATCH qemu 36/38] ast2400: add a FTGMAC100 nic Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-28  2:25   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 37/38] slirp: add a fake NCSI backend Cédric Le Goater
2016-11-21  7:26   ` Joel Stanley
2016-11-21 13:04     ` Cédric Le Goater
2016-11-28  2:26   ` Andrew Jeffery
2016-11-18 14:22 ` [PATCH qemu 38/38] target-arm: Add VBAR support to ARM1176 CPUs Cédric Le Goater
2016-11-21  7:27   ` Joel Stanley

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.