From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Tue, 23 Jan 2018 17:14:53 +0100 Subject: [U-Boot] [PATCH v10 00/12] mips: bmips: add SPI support In-Reply-To: <1495135788-9152-1-git-send-email-noltari@gmail.com> References: <1495135788-9152-1-git-send-email-noltari@gmail.com> Message-ID: <20180123161505.6852-1-noltari@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de BCM63xx SPI controller is a bit tricky since it doesn't allow keeping CS active between transfers, so I had to modify the spi_flash driver in order to allow limiting reads. v10: Introduce changes reported by Tom Rini & Daniel Schwierzeck: - Fix undefined BE read functions v9: Introduce changes suggested by Simon Glass: - Fix defconfig order. v8: Introduce changes suggested by Jagan Teki & Daniel Schwierzeck: - Squash wait_bit commits. - Remove register param castings. v7: Introduce changes suggested by Jagan Teki & Daniel Schwierzeck: - Use const void* reg for compatibility with 64 bit systems. - Remove prefix and use __func__ instead. - Remove wait_for_bit and update callers to wait_for_bit_le32. v6: Introduce changes suggested by Jagan Teki: - Use cmd instead of val to avoid confusions. - Switch to wait_for_bit instead of infinite loop. v5: Introduce changes suggested by Jagan Teki: - Use long structs for registers v4: Introduce changes suggested by Jagan Teki: - Add data for each HW controller instead of having two separate configs. v3: Fix bug introduced in v2: sizeof(cmd) vs len. Also rename BCM6338 SPI driver to BCM6348 SPI since BCM6338 is a stripped down version of the BCM6348. Switch to devfdt_get_addr_size_index(). v2: Introduce changes requested by Simon Glass: - Always include command bytes when determining max write size. Also move SPI aliases from .dts to .dtsi files. Álvaro Fernández Rojas (12): wait_bit: add 8/16/32 BE/LE versions of wait_for_bit wait_bit: use wait_for_bit_le32 and remove wait_for_bit drivers: spi: allow limiting reads drivers: spi: consider command bytes when sending transfers dm: spi: add BCM63xx SPI driver mips: bmips: add bcm63xx-spi driver support for BCM6338 mips: bmips: add bcm63xx-spi driver support for BCM6348 mips: bmips: add bcm63xx-spi driver support for BCM6358 mips: bmips: add bcm63xx-spi driver support for BCM3380 mips: bmips: add bcm63xx-spi driver support for BCM63268 mips: bmips: enable the SPI flash on the Sagem F at ST1704 mips: bmips: enable the SPI flash on the Netgear CG3100D arch/arm/mach-imx/mx6/ddr.c | 22 +- arch/arm/mach-socfpga/clock_manager.c | 4 +- arch/arm/mach-socfpga/clock_manager_gen5.c | 6 +- arch/arm/mach-socfpga/reset_manager_arria10.c | 36 +-- arch/mips/dts/brcm,bcm3380.dtsi | 17 + arch/mips/dts/brcm,bcm63268.dtsi | 17 + arch/mips/dts/brcm,bcm6338.dtsi | 17 + arch/mips/dts/brcm,bcm6348.dtsi | 17 + arch/mips/dts/brcm,bcm6358.dtsi | 17 + arch/mips/dts/netgear,cg3100d.dts | 12 + arch/mips/dts/sagem,f at st1704.dts | 12 + arch/mips/mach-ath79/ar934x/clk.c | 2 +- board/samtec/vining_2000/vining_2000.c | 4 +- configs/netgear_cg3100d_ram_defconfig | 8 + configs/sagem_f at st1704_ram_defconfig | 8 + drivers/clk/clk_pic32.c | 12 +- drivers/clk/renesas/clk-rcar-gen3.c | 4 +- drivers/ddr/microchip/ddr2.c | 8 +- drivers/fpga/socfpga_arria10.c | 17 +- drivers/mmc/msm_sdhci.c | 8 +- drivers/mtd/pic32_flash.c | 4 +- drivers/mtd/spi/spi_flash.c | 5 +- drivers/net/ag7xxx.c | 16 +- drivers/net/dwc_eth_qos.c | 17 +- drivers/net/ethoc.c | 8 +- drivers/net/pic32_eth.c | 12 +- drivers/net/pic32_mdio.c | 28 +- drivers/net/ravb.c | 4 +- drivers/net/xilinx_axi_emac.c | 4 +- drivers/net/zynq_gem.c | 12 +- drivers/reset/sti-reset.c | 4 +- drivers/serial/serial_pic32.c | 4 +- drivers/spi/Kconfig | 8 + drivers/spi/Makefile | 1 + drivers/spi/atmel_spi.c | 4 +- drivers/spi/bcm63xx_spi.c | 433 ++++++++++++++++++++++++++ drivers/spi/cadence_qspi_apb.c | 14 +- drivers/spi/fsl_qspi.c | 20 +- drivers/spi/mvebu_a3700_spi.c | 20 +- drivers/usb/host/dwc2.c | 24 +- drivers/usb/host/ehci-msm.c | 3 +- drivers/usb/host/ehci-mx6.c | 5 +- drivers/usb/host/ohci-lpc32xx.c | 12 +- drivers/usb/host/xhci-rcar.c | 12 +- drivers/video/atmel_hlcdfb.c | 64 ++-- include/spi.h | 5 +- include/wait_bit.h | 85 ++--- 47 files changed, 828 insertions(+), 248 deletions(-) create mode 100644 drivers/spi/bcm63xx_spi.c -- 2.11.0