[U-Boot] [PATCH v6 0/6] DM: Convert i.MX28 gpio, pinmux, spi and eth drivers to DM/DTS
Lukasz Majewski
lukma at denx.de
Wed Jun 19 15:31:01 UTC 2019
This patch series converts some i.MX28 drivers to use DM/DTS.
Converted drivers:
- mxs_gpio.c - gpio driver
- pinctrl-mxs.c - pinmux driver
- Adjust fec_eth.c to support also i.MX28 SoC.
- mxs_spi.c - SPI driver
After applying this series it is possible to use ETH on i.MX28
board with following DTS description:
&mac0 {
phy-mode = "rmii";
pinctrl-names = "default";
pinctrl-0 = <&mac0_pins_a>;
phy-supply = <®_fec_3v3>;
phy-reset-gpios = <&gpio2 13 GPIO_ACTIVE_LOW>;
phy-reset-duration = <1>;
phy-reset-post-delay = <1>;
status = "okay";
fixed-link {
speed = <100>;
full-duplex;
};
};
And store the received binaries on SPI-NOR memory.
Travis-CI:
https://travis-ci.org/lmajewski/u-boot-dfu/builds/547299325
Applied on top of u-boot/master branch
SHA1: 77f6e2dd0551d8a825bab391a1bd6b838874bcd4
Changes in v6:
- Provide correct values for gpio-ranges
Changes in v5:
- Add 12 digit SHA1 ID for tag v5.1.11
- Set more appropriate tags (net: fec:)
- Use "ARM: dts: imx: tags"
- Update tags ("gpio: mxs")
- Set more appropriate tags ("pinctrl: mxs:")
- Use the clrsetbits_le32() in mxs_pinctrl_rmwl() function - now moved to
pinctrl-mxs.h file
- Set more appropriate tags ("spi: mxs:")
Changes in v4:
- Add 12 digit SHA1 ID for tag v5.1.9
- Sort the entries for compatibles and Kconfig
- New file - imx28-u-boot.dtsi
- Use BIT() macro instead of 1 << offset
- Use devfdt_get_addr to get gpio number
- Use gpio-ranges property to setup gpios
- Use Linux kernel code to setup pins instead of Barebox
- Add soc specific data and compatible for i.MX23 and i.MX28
- Use devm_kfree() to release temporary memory
- Adjust the driver to support i.MX23 (add compatible, adjust clk code)
- Use BIT() macro where applicable
Changes in v3:
- Update tag to 5.1.9
- Set more apropriate tags
- Set more appropriate tags
- Set more appropriate tags
- Set more appropriate tags
- Set more appropriate tags
Changes in v2:
- Use #if !CONFIG_IS_ENABLED(DM_GPIO) instead of plain #ifdef CONFIG_DM_GPIO
- New patch (conversion of mxs_spi.c to DM_SPI)
Lukasz Majewski (6):
ARM: dts: imx: Copy imx28 device tree related files from Linux kernel
(v5.1.11)
net: fec: Enable support for i.MX28 DM_ETH in the fec_mxc.c driver
ARM: dts: imx: Provide 'gpio-ranges' for mxs_gpio driver
gpio: mxs: Add support for DM/DTS in the mxs_gpio.c driver (DM_GPIO)
pinctrl: mxs: Add support for i.MX2[38] mxs pinctrl driver
spi: mxs: Add support DM/DTS for i.MX28 mxs SPI driver (DM_SPI
conversion)
arch/arm/dts/imx28-pinfunc.h | 506 ++++++++++++++
arch/arm/dts/imx28-u-boot.dtsi | 28 +
arch/arm/dts/imx28.dtsi | 1330 +++++++++++++++++++++++++++++++++++++
arch/arm/dts/mxs-pinfunc.h | 31 +
drivers/gpio/mxs_gpio.c | 148 +++++
drivers/net/Kconfig | 2 +-
drivers/net/fec_mxc.c | 1 +
drivers/pinctrl/nxp/Kconfig | 10 +
drivers/pinctrl/nxp/Makefile | 1 +
drivers/pinctrl/nxp/pinctrl-mxs.c | 190 ++++++
drivers/pinctrl/nxp/pinctrl-mxs.h | 61 ++
drivers/spi/mxs_spi.c | 400 ++++++++---
12 files changed, 2624 insertions(+), 84 deletions(-)
create mode 100644 arch/arm/dts/imx28-pinfunc.h
create mode 100644 arch/arm/dts/imx28-u-boot.dtsi
create mode 100644 arch/arm/dts/imx28.dtsi
create mode 100644 arch/arm/dts/mxs-pinfunc.h
create mode 100644 drivers/pinctrl/nxp/pinctrl-mxs.c
create mode 100644 drivers/pinctrl/nxp/pinctrl-mxs.h
--
2.11.0
More information about the U-Boot
mailing list