[U-Boot] [PATCH v2] arm: imx: add i.MX53 Beckhoff CX9020 Embedded PC
Jagan Teki
jagan at amarulasolutions.com
Mon Oct 17 13:52:50 CEST 2016
On Mon, Oct 17, 2016 at 5:02 PM, Patrick Brünn <P.Bruenn at beckhoff.com> wrote:
>>From: Stefano Babic [mailto:sbabic at denx.de]
>>Sent: Montag, 17. Oktober 2016 13:27
> Hi Stefano and Jagan,
>>
>>On 17/10/2016 11:19, Jagan Teki wrote:
>>> On Fri, Oct 7, 2016 at 9:44 PM, <linux-kernel-dev at beckhoff.com> wrote:
>>>> From: Patrick Bruenn <p.bruenn at beckhoff.com>
>>>>
>>>> Add CX9020 board based on mx53loco.
>>>> Add simplified imx53 base device tree from kernel v4.8-rc8, to reuse
>>>> serial_mxc with DTE and prepare for device tree migration of other
>>>> functions and imx53 devices.
>>>>
>>>> The CX9020 differs from i.MX53 Quick Start Board by:
>>>> - use uart2 instead of uart1
>>>> - DVI-D connector instead of VGA
>>>> - no audio
>>>> - CCAT FPGA connected to emi
>>>> - enable rtc
>>>>
>>>> Signed-off-by: Patrick Bruenn <p.bruenn at beckhoff.com>
>>>>
>>>> ---
>>>>
>>>> Changes in v2:
>>>> - remove #include <asm/errno.h> from mx53cx9020.c
>>>> - remove obsolete CONFIG_CMD_CCAT from mx53cx9020.h
>>>>
>>>> arch/arm/Kconfig | 7 +
>>>> arch/arm/dts/Makefile | 2 +
>>>> arch/arm/dts/imx53-cx9020.dts | 26 ++
>>>> arch/arm/dts/imx53.dtsi | 41 ++
>>>> board/beckhoff/mx53cx9020/Kconfig | 15 +
>>>> board/beckhoff/mx53cx9020/MAINTAINERS | 6 +
>>>> board/beckhoff/mx53cx9020/Makefile | 9 +
>>>> board/beckhoff/mx53cx9020/imximage.cfg | 82 ++++
>>>> board/beckhoff/mx53cx9020/mx53cx9020.c | 563
>>+++++++++++++++++++++++++++
>>>> board/beckhoff/mx53cx9020/mx53cx9020_video.c | 83 ++++
>>>> configs/mx53cx9020_defconfig | 19 +
>>>> include/configs/mx53cx9020.h | 208 ++++++++++
>>>> 12 files changed, 1061 insertions(+)
>>>> create mode 100644 arch/arm/dts/imx53-cx9020.dts
>>>> create mode 100644 arch/arm/dts/imx53.dtsi
>>>> create mode 100644 board/beckhoff/mx53cx9020/Kconfig
>>>> create mode 100644 board/beckhoff/mx53cx9020/MAINTAINERS
>>>> create mode 100644 board/beckhoff/mx53cx9020/Makefile
>>>> create mode 100644 board/beckhoff/mx53cx9020/imximage.cfg
>>>> create mode 100644 board/beckhoff/mx53cx9020/mx53cx9020.c
>>>> create mode 100644 board/beckhoff/mx53cx9020/mx53cx9020_video.c
>>>> create mode 100644 configs/mx53cx9020_defconfig
>>>> create mode 100644 include/configs/mx53cx9020.h
>>>>
>>>> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
>>>> index f55d5b2..ece610a 100644
>>>> --- a/arch/arm/Kconfig
>>>> +++ b/arch/arm/Kconfig
>>>> @@ -480,6 +480,12 @@ config TARGET_MX53LOCO
>>>> bool "Support mx53loco"
>>>> select CPU_V7
>>>>
>>>> +config TARGET_MX53CX9020
>>>> + bool "Support mx53cx9020"
>>>> + select CPU_V7
>>>> + select DM
>>>> + select DM_SERIAL
>>>> +
>>>> config TARGET_MX53SMD
>>>> bool "Support mx53smd"
>>>> select CPU_V7
>>>> @@ -965,6 +971,7 @@ source "board/freescale/mx51evk/Kconfig"
>>>> source "board/freescale/mx53ard/Kconfig"
>>>> source "board/freescale/mx53evk/Kconfig"
>>>> source "board/freescale/mx53loco/Kconfig"
>>>> +source "board/beckhoff/mx53cx9020/Kconfig"
>>>> source "board/freescale/mx53smd/Kconfig"
>>>> source "board/freescale/s32v234evb/Kconfig"
>>>> source "board/freescale/vf610twr/Kconfig"
>>>> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
>>>> index 04d47e7..3f753ba 100644
>>>> --- a/arch/arm/dts/Makefile
>>>> +++ b/arch/arm/dts/Makefile
>>>> @@ -286,6 +286,8 @@ dtb-$(CONFIG_MX6) += imx6ull-14x14-evk.dtb \
>>>> imx6dl-icore.dtb \
>>>> imx6q-icore.dtb
>>>>
>>>> +dtb-$(CONFIG_TARGET_MX53CX9020) += imx53-cx9020.dtb
>>>
>>> This should be MX arch config entry, not the target one.
>>
>>Yes, thanks Jagan. Please check inside Makefile. You could use
>>CONFIG_MX53 for this.
>>
> I will fix this in v3 (together with the removed CONFIG_DISPLAY_BOARDINFO)
>>>> +int board_mmc_init(bd_t *bis)
>>>> +{
>>>> + static const iomux_v3_cfg_t sd1_pads[] = {
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_CMD__ESDHC1_CMD,
>>SD_CMD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_CLK__ESDHC1_CLK,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_DATA0__ESDHC1_DAT0,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_DATA1__ESDHC1_DAT1,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_DATA2__ESDHC1_DAT2,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD1_DATA3__ESDHC1_DAT3,
>>SD_PAD_CTRL),
>>>> + MX53_PAD_GPIO_1__GPIO1_1,
>>>> + };
>>>> +
>>>> + static const iomux_v3_cfg_t sd2_pads[] = {
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_CMD__ESDHC2_CMD,
>>SD_CMD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_CLK__ESDHC2_CLK,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_DATA0__ESDHC2_DAT0,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_DATA1__ESDHC2_DAT1,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_DATA2__ESDHC2_DAT2,
>>SD_PAD_CTRL),
>>>> + NEW_PAD_CTRL(MX53_PAD_SD2_DATA3__ESDHC2_DAT3,
>>SD_PAD_CTRL),
>>>> + MX53_PAD_GPIO_4__GPIO1_4,
>>>> + };
>>>
>>> Since, it's have dts support please use pinctrl driver for pads and
>>> mux atleast for supporting ones.
>>
>>..but for MX53 this is still missing, right ?
> Yes, as stated here:
> http://lists.denx.de/pipermail/u-boot/2016-September/268517.html
> I would like to add that in a second patch on top of this.
I think pinctrl is not taking much time as most of the generic code
already in at drivers/pinctrl/nxp/pinctrl-imx.c and once you did that
board code mostly reduced, I see a point in this sense.
thanks!
--
Jagan Teki
Free Software Engineer | Amarula Solutions
U-Boot, Linux | Upstream Maintainer
Hyderabad, India.
More information about the U-Boot
mailing list