This patch series aims to porting ASPEED FMC/SPI memory controller driver with spi-mem interface. spi-mem dirmap framework is also synchronized from Linux. These patches have been verified on AST2600, AST2500 and AST2400 EVBs.
Changes in v2: - Separate defconfig files from the SPI driver patch. - Use "if (CONFIG_IS_ENABLED(SPI_DIRMAP))" to wrap spi_dirmap related functions. - Add Winbond w25q512jv flash ID. Changes in v3: - Get AHB bus clock frequency from the function parameter. - Fix a grammatical error in spi-mem.h. Changes in v4: - Fix bug when SPI_NOR_4B_OPCODES flag is set. Changes in v5: - Separate main ASPEED SPI driver patch into different parts. * basic support. * decoded range adjustment. * clock settings. - Add support customized decoded range. - Add AST2400 platform support. Chin-Ting Kuo (14): clk: aspeed: Get HCLK frequency support pinctrl: aspeed: FWSPICS1 and SPI1CS1 pin support spi: aspeed: Add ASPEED SPI controller driver configs: aspeed: Enable SPI flash features spi: aspeed: Support AST2400 platform arm: dts: aspeed: Update SPI flash node settings spi-mem: Add dirmap API from Linux mtd: spi-nor: Use spi-mem dirmap API spi: aspeed: SPI dirmap read support configs: aspeed: Enable CONFIG_SPI_DIRMAP spi: aspeed: Adjust decoded range size support spi: aspeed: Support customized decoded address ranges spi: aspeed: Clock frequency adjustment support mtd: spi-nor-ids: Add Winbond W25Q512JVQ ID MAINTAINERS | 7 + arch/arm/dts/ast2500-evb.dts | 33 + arch/arm/dts/ast2500.dtsi | 23 +- arch/arm/dts/ast2600-evb.dts | 8 - arch/arm/dts/ast2600.dtsi | 34 +- configs/evb-ast2500_defconfig | 14 + configs/evb-ast2600_defconfig | 14 + drivers/clk/aspeed/clk_ast2500.c | 23 + drivers/mtd/spi/sf_probe.c | 76 ++ drivers/mtd/spi/spi-nor-core.c | 55 +- drivers/mtd/spi/spi-nor-ids.c | 5 + drivers/pinctrl/aspeed/pinctrl_ast2500.c | 2 + drivers/spi/Kconfig | 18 + drivers/spi/Makefile | 1 + drivers/spi/spi-aspeed-smc.c | 1218 ++++++++++++++++++++++ drivers/spi/spi-mem.c | 268 +++++ include/linux/mtd/spi-nor.h | 18 + include/spi-mem.h | 79 ++ 18 files changed, 1850 insertions(+), 46 deletions(-) create mode 100644 drivers/spi/spi-aspeed-smc.c -- 2.25.1