
This patchset includes the following parts: - Octeon GPIO driver - Octeon SPI driver - New simple Octeon clk driver - DT updates (GPIO, SPI, I2C & CLK nodes) - Kconfig & defconfig updates
In v2 I've added the SPI driver as well, so combine all the drivers / patches in one patchset, that have been sent to the list before. Also GPIO and SPI have now been tested on ARM Octeon TX2 and have undergone minor changes because of this.
Thanks, Stefan
Changes in v3: - Removed 2nd ops struct for Octeon TX2 and removed "const" from the octeon_spi_ops declaration. This makes a more elegant switch to the Octeon TX2 functions possible, as suggested by Daniel - Remove driver_data struct, as its not needed. The distinction between PCI based on non-PCI based probing can be made via a common Octeon TX & TX2 DT property can be made.
Changes in v2: - Tested on MIPS Octeon and ARM Octeon TX2 - Removed "struct pci_device_id" definition and U_BOOT_PCI_DEVICE() as its not needed for the PCI based probing on Octeon TX2 - Added "depends on DM_PCI" to Kconfig - Newly added to this series - Removed inclusion of "common.h" - Added "depends on DM_PCI" to Kconfig - Tested on MIPS Octeon and ARM Octeon TX2 - Fixed issues with Octeon TX2 registration. Now only one driver is registered and the "ops" is overwritten in the Octeon TX2 case. - Use dev_get_driver_data() to get the driver data struct - Removed "struct pci_device_id" definition and U_BOOT_PCI_DEVICE() as its not needed for the PCI based probing on Octeon TX2 - Newly added to this series - Newly added to this series - Kconfig and defconfig changes separated into 2 patches - Kconfig and defconfig changes separated into 2 patches
Changes in v1: - Removed common.h and reduced headers as suggested by Daniel
Stefan Roese (8): mips: octeon: mrvl,cn73xx.dtsi: Add GPIO DT nodes mips: octeon: dts: Add I2C DT nodes clk: clk_octeon: Add simple MIPS Octeon clock driver mips: octeon: dts: Add Octeon clock driver DT nodes mips: octeon: mrvl,cn73xx.dtsi: Add SPI DT node mips: octeon: mrvl,octeon-ebb7304.dts: Add SPI flash DT node mips: octeon: Update Octeon Kconfig mips: octeon: Update EBB7304 defconfig
Suneel Garapati (2): gpio: octeon_gpio: Add GPIO controller driver for Octeon drivers: spi: Add SPI controller driver for Octeon
arch/mips/Kconfig | 6 +- arch/mips/dts/mrvl,cn73xx.dtsi | 66 +++ arch/mips/dts/mrvl,octeon-ebb7304.dts | 21 +- configs/octeon_ebb7304_defconfig | 10 + drivers/clk/Kconfig | 7 + drivers/clk/Makefile | 1 + drivers/clk/clk_octeon.c | 72 +++ drivers/gpio/Kconfig | 10 + drivers/gpio/Makefile | 1 + drivers/gpio/octeon_gpio.c | 242 +++++++++ drivers/spi/Kconfig | 8 + drivers/spi/Makefile | 1 + drivers/spi/octeon_spi.c | 615 +++++++++++++++++++++++ include/dt-bindings/clock/octeon-clock.h | 12 + 14 files changed, 1069 insertions(+), 3 deletions(-) create mode 100644 drivers/clk/clk_octeon.c create mode 100644 drivers/gpio/octeon_gpio.c create mode 100644 drivers/spi/octeon_spi.c create mode 100644 include/dt-bindings/clock/octeon-clock.h