tree af534de205fb8d483bc4828b20bc7615155f62d5
parent a7bbd475453768037877c820caed02f39055eb6e
author Joel Stanley <joel@jms.id.au> 1596527744 +0930
committer Joel Stanley <joel@jms.id.au> 1597273170 +0930

linux-aspeed: Move to Linux 5.8

This updates the OpenBMC kernel tree to a 5.8 base. It has beent two
weeks since the kernel was last updated, making it the quickest bump in
OpenBMC history.

There are 93 out of tree kernel patches carried in the OpenBMC tree.

The defconfigs were updated to fix selection of video device. An
upstream reorganisation of the V4L kconfig resulted in a large number of
extra drivers enabled when all we required was VIDEO_ASPEED.

Alexander Amelkin (1):
      mtd: spi-nor: fix options for mx66l51235f

Andrew Geissler (1):
      ARM: dts: tacoma: Add KCS node for LPC MCTP

Andrew Jeffery (13):
      dt-bindings: hwmon: pmbus: Add Maxim MAX31785 documentation
      pmbus (max31785): Add support for devicetree configuration
      pmbus (core): Use driver callbacks in pmbus_get_fan_rate()
      pmbus (core): One-shot retries for failure to set page
      pmbus (max31785): Wrap all I2C accessors in one-shot failure handlers
      soc: aspeed: Miscellaneous control interfaces
      ARM: dts: aspeed: witherspoon: Update max31785 node
      ARM: dts: aspeed-g5: Expose VGA and SuperIO scratch registers
      pinctrl: aspeed: Improve debug output
      soc: aspeed: Fail probe of lpc-ctrl if reserved memory is not aligned
      misc: Add ASPEED KCS driver for MCTP purposes
      ARM: dts: witherspoon: Add KCS node for LPC MCTP
      pinctrl: aspeed: Describe the heartbeat function on ball Y23

Ben Tyner (1):
      ARM: dts: aspeed: witherspoon-128: Remove checkstop GPIO from gpio-keys definitions

Brad Bishop (4):
      ARM: dts: aspeed-g6: Expose SuperIO scratch registers
      soc: aspeed: lpc: Add G6 compatible strings
      ipmi: aspeed-g6: Add compatible strings
      reset: simple: Add AST2600 compatibility string

Cédric Le Goater (22):
      mtd: spi-nor: aspeed: use command mode for reads
      mtd: spi-nor: aspeed: add support for SPI dual IO read mode
      mtd: spi-nor: aspeed: link controller with the ahb clock
      mtd: spi-nor: aspeed: optimize read mode
      mtd: spi-nor: aspeed: limit the maximum SPI frequency
      mtd: spi-nor: aspeed: introduce a aspeed_smc_default_read() helper
      mtd: spi-nor: aspeed: clarify 4BYTE address mode mask
      mtd: spi-nor: aspeed: use memcpy_fromio() to capture the optimization buffer
      mtd: spi-nor: aspeed: add support for the 4B opcodes
      mtd: spi-nor: Add support for w25q512jv
      mtd: spi-nor: aspeed: Introduce a field for the AHB physical address
      mtd: spi-nor: aspeed: Introduce segment operations
      mtd: spi-nor: aspeed: add initial support for ast2600
      mtd: spi-nor: aspeed: Check for disabled segments on the AST2600
      mtd: spi-nor: aspeed: Introduce training operations per platform
      mtd: spi-nor: aspeed: Introduce a HCLK mask for training
      mtd: spi-nor: aspeed: check upper freq limit when doing training
      mtd: spi-nor: aspeed: add support for AST2600 training
      mtd: spi-nor: aspeed: fix training of multiple CS on the AST2600
      mtd: spi-nor: aspeed: Disable zero size segments on the AST2600
      spi-nor: aspeed-smc: Detect 4b opcodes differently
      /dev/mem: add a devmem kernel parameter to activate the device

Eddie James (11):
      ARM: dts: rainier: Add KCS node for LPC MCTP
      ARM: dts: aspeed: Add witherspoon-128 machine
      dt-bindings: fsi: Add P10 OCC device documentation
      fsi: occ: Add support for P10
      hwmon: (occ) Add new temperature sensor type
      i2c: fsi: Prevent adding adapters for ports without dts nodes
      dt-bindings: soc: Add Aspeed XDMA Engine
      soc: aspeed: Add XDMA Engine Driver
      soc: aspeed: xdma: Add user interface
      soc: aspeed: xdma: Add reset ioctl
      leds: pca955x: Add an IBM software implementation of the PCA9552 chip

Fran Hsu (3):
      ARM: dts: nuvoton: Add NPCM730 common device tree
      ARM: dts: nuvoton: Add Quanta GSJ BMC pinctrl
      ARM: dts: nuvoton: Add Quanta GSJ BMC

George Hung (2):
      dt-binding: edac: add NPCM ECC documentation
      edac: npcm: Add Nuvoton NPCM7xx EDAC driver

Jae Hyun Yoo (12):
      clk: ast2600: enable BCLK for PCI/PCIe bus always
      dt-bindings: Add PECI subsystem document
      Documentation: ioctl: Add ioctl numbers for PECI subsystem
      peci: Add support for PECI bus driver core
      dt-bindings: Add bindings document of Aspeed PECI adapter
      ARM: dts: aspeed: Add PECI node
      peci: Add Aspeed PECI adapter driver
      dt-bindings: mfd: Add Intel PECI client bindings document
      mfd: intel-peci-client: Add Intel PECI client driver
      Documentation: hwmon: Add documents for PECI hwmon drivers
      hwmon: Add PECI cputemp driver
      hwmon: Add PECI dimmtemp driver

Joel Stanley (10):
      ARM: dts: aspeed-g4: Expose SuperIO scratch registers
      ARM: dts: nuvoton: Fix warnings in NPCM7xx common device tree
      ARM: dts: nuvoton: Update EVB for new PECI layout
      ARM: dts: nuvoton: evb: Rework enabling of nodes
      soc: aspeed-lpc-ctrl: LPC to AHB mapping on ast2600
      ARM: dts: aspeed: ast2600evb: Add MAC0
      soc: aspeed-lpc-ctrl: Fix printf warning
      ARM: configs: aspeed: Update defconfigs
      ARM: config: aspeed-g5: Enable I2C GPIO mux driver
      ARM: config: aspeed: Fix selection of video device
      mtd: spi-nor: sfdp: Revert "default to addr_width of 3 for configurable widths"
      ARM: aspeed: g5: Do not set sirq polarity

Tomer Maimon (11):
      dt-binding: bmc: Add NPCM7xx LPC BPC documentation
      misc: npcm7xx-lpc-bpc: add NPCM7xx BIOS post code driver
      dt-binding: bmc: add npcm7xx pci mailbox document
      misc: mbox: add npcm7xx pci mailbox driver
      dt-binding: net: document NPCM7xx EMC DT bindings
      net: npcm: add NPCM7xx Ethernet MAC controller
      ARM: configs: add defconfig for Nuvoton NPCM7xx BMC
      ARM: dts: npcm7xx: Update device tree
      arm: dts: Add NPCM7xx RunBMC Olympus Quanta machine.
      dt-bindings: peci: add NPCM PECI documentation
      peci: npcm: add NPCM PECI driver

Change-Id: I9d93c694a5b0c7e6a712c54875dc93c00ae618b7
Signed-off-by: Joel Stanley <joel@jms.id.au>
