* [PATCH 1/1] boards: liteboard: add i.MX6ULL revision @ 2020-03-26 18:34 Bartosz Bilas 2020-03-26 21:12 ` Ahmad Fatoum 0 siblings, 1 reply; 3+ messages in thread From: Bartosz Bilas @ 2020-03-26 18:34 UTC (permalink / raw) To: barebox; +Cc: Bartosz Bilas These changes introduce support for Grinn i.MX6ULL liteBoard revision. There are no other changes except the CPU therefore the existing board directory was used. Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> --- arch/arm/boards/grinn-liteboard/board.c | 4 +- .../flash-header-liteboard-256mb.imxcfg | 6 - .../flash-header-liteboard-512mb.imxcfg | 6 - ...flash-header-liteboard-imx6ul-256mb.imxcfg | 28 ++++ ...flash-header-liteboard-imx6ul-512mb.imxcfg | 28 ++++ ...lash-header-liteboard-imx6ull-256mb.imxcfg | 27 ++++ .../grinn-liteboard/flash-header-liteboard.h | 26 +-- arch/arm/boards/grinn-liteboard/lowlevel.c | 19 +-- arch/arm/dts/Makefile | 2 +- arch/arm/dts/imx6ull-liteboard.dts | 96 +++++++++++ dts/src/arm/imx6ull-liteboard.dts | 151 ++++++++++++++++++ dts/src/arm/imx6ull-litesom.dtsi | 78 +++++++++ images/Makefile.imx | 6 +- 13 files changed, 442 insertions(+), 35 deletions(-) delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg create mode 100644 arch/arm/dts/imx6ull-liteboard.dts create mode 100644 dts/src/arm/imx6ull-liteboard.dts create mode 100644 dts/src/arm/imx6ull-litesom.dtsi diff --git a/arch/arm/boards/grinn-liteboard/board.c b/arch/arm/boards/grinn-liteboard/board.c index 8e5a91e12..f7fbbb8b8 100644 --- a/arch/arm/boards/grinn-liteboard/board.c +++ b/arch/arm/boards/grinn-liteboard/board.c @@ -2,6 +2,7 @@ * Copyright (C) 2018 Grinn * * Author: Marcin Niestroj <m.niestroj@grinn-global.com> + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -86,7 +87,8 @@ static int liteboard_devices_init(void) int ret; int i; - if (!of_machine_is_compatible("grinn,imx6ul-liteboard")) + if (!of_machine_is_compatible("grinn,imx6ul-liteboard") || + !of_machine_is_compatible("grinn,imx6ull-liteboard")) return 0; barebox_set_hostname("liteboard"); diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg deleted file mode 100644 index 1b980c784..000000000 --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg +++ /dev/null @@ -1,6 +0,0 @@ - -#define SETUP_MDASP_MDCTL \ - wm 32 0x021B0040 0x00000047; \ - wm 32 0x021B0000 0x83180000 - -#include "flash-header-liteboard.h" diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg deleted file mode 100644 index c93a2cc0f..000000000 --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg +++ /dev/null @@ -1,6 +0,0 @@ - -#define SETUP_MDASP_MDCTL \ - wm 32 0x021B0040 0x0000004F; \ - wm 32 0x021B0000 0x84180000 - -#include "flash-header-liteboard.h" diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg new file mode 100644 index 000000000..212ebdae4 --- /dev/null +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg @@ -0,0 +1,28 @@ + +#define SETUP_MDASP_MDCTL \ + wm 32 0x021B0040 0x00000047; \ + wm 32 0x021B0000 0x83180000 + +#define SETUP_LEVEL_CAL \ + wm 32 0x021B080C 0x00000000; \ + wm 32 0x021B083C 0x41480148; \ + wm 32 0x021B0848 0x40403E42; \ + wm 32 0x021B0850 0x40405852 + +#define SETUP_MMDC_MPDCCR \ + wm 32 0x021B08C0 0x00922012; \ + wm 32 0x021B0858 0x00000F00 + +#define SETUP_MMDC0_MDCFG0 \ + wm 32 0x021B000C 0x676B52F3 + +#define SETUP_MMDC0_MDOR \ + wm 32 0x021B0030 0x006B1023 + +#define SETUP_MPPDCMPR2 \ + wm 32 0x021B0004 0x00400A38 + +#define SETUP_MMDC0_MDPDC \ + wm 32 0x021B0004 0x0002556D + +#include "flash-header-liteboard.h" diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg new file mode 100644 index 000000000..00aca210d --- /dev/null +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg @@ -0,0 +1,28 @@ + +#define SETUP_MDASP_MDCTL \ + wm 32 0x021B0040 0x0000004F; \ + wm 32 0x021B0000 0x84180000 + +#define SETUP_LEVEL_CAL \ + wm 32 0x021B080C 0x00000000; \ + wm 32 0x021B083C 0x41480148; \ + wm 32 0x021B0848 0x40403E42; \ + wm 32 0x021B0850 0x40405852 + +#define SETUP_MMDC_MPDCCR \ + wm 32 0x021B08C0 0x00922012; \ + wm 32 0x021B0858 0x00000F00 + +#define SETUP_MMDC0_MDCFG0 \ + wm 32 0x021B000C 0x676B52F3 + +#define SETUP_MMDC0_MDOR \ + wm 32 0x021B0030 0x006B1023 + +#define SETUP_MPPDCMPR2 \ + wm 32 0x021B0004 0x00400A38 + +#define SETUP_MMDC0_MDPDC \ + wm 32 0x021B0004 0x0002556D + +#include "flash-header-liteboard.h" diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg new file mode 100644 index 000000000..73c4c4f97 --- /dev/null +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg @@ -0,0 +1,27 @@ + +#define SETUP_MDASP_MDCTL \ + wm 32 0x021B0040 0x00000047; \ + wm 32 0x021B0000 0x83180000 + +#define SETUP_LEVEL_CAL \ + wm 32 0x021B080C 0x00000004; \ + wm 32 0x021B083C 0x00000000; \ + wm 32 0x021B0848 0x40404040; \ + wm 32 0x021B0850 0x40404040 + +#define SETUP_MMDC_MPDCCR \ + wm 32 0x021B08C0 0x00944009 + +#define SETUP_MMDC0_MDCFG0 \ + wm 32 0x021B000C 0x3F4352F3 + +#define SETUP_MMDC0_MDOR \ + wm 32 0x021B0030 0x00431023 + +#define SETUP_MPPDCMPR2 \ + wm 32 0x021B0004 0x00400000 + +#define SETUP_MMDC0_MDPDC \ + wm 32 0x021B0004 0x0002552D + +#include "flash-header-liteboard.h" diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h index 60a39f524..1891400f7 100644 --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h @@ -32,30 +32,34 @@ wm 32 0x020E0244 0x00000030 wm 32 0x020E0248 0x00000030 wm 32 0x021B001C 0x00008000 wm 32 0x021B0800 0xA1390003 -wm 32 0x021B080C 0x00000000 -wm 32 0x021B083C 0x41480148 -wm 32 0x021B0848 0x40403E42 -wm 32 0x021B0850 0x40405852 + +SETUP_LEVEL_CAL + wm 32 0x021B081C 0x33333333 wm 32 0x021B0820 0x33333333 wm 32 0x021B082C 0xf3333333 wm 32 0x021B0830 0xf3333333 -wm 32 0x021B08C0 0x00922012 -wm 32 0x021B0858 0x00000F00 + +SETUP_MMDC_MPDCCR + wm 32 0x021B08b8 0x00000800 wm 32 0x021B0004 0x0002002D wm 32 0x021B0008 0x1B333030 -wm 32 0x021B000C 0x676B52F3 + +SETUP_MMDC0_MDCFG0 + wm 32 0x021B0010 0xB66D0B63 wm 32 0x021B0014 0x01FF00DB wm 32 0x021B0018 0x00211740 wm 32 0x021B001C 0x00008000 wm 32 0x021B002C 0x000026D2 -wm 32 0x021B0030 0x006B1023 + +SETUP_MMDC0_MDOR SETUP_MDASP_MDCTL -wm 32 0x021b0890 0x00400A38 +SETUP_MPPDCMPR2 + wm 32 0x021B001C 0x02008032 wm 32 0x021B001C 0x00008033 wm 32 0x021B001C 0x00048031 @@ -63,6 +67,8 @@ wm 32 0x021B001C 0x15208030 wm 32 0x021B001C 0x04008040 wm 32 0x021B0020 0x00007800 wm 32 0x021B0818 0x00000227 -wm 32 0x021B0004 0x0002556D + +SETUP_MMDC0_MDPDC + wm 32 0x021B0404 0x00011006 wm 32 0x021B001C 0x00000000 diff --git a/arch/arm/boards/grinn-liteboard/lowlevel.c b/arch/arm/boards/grinn-liteboard/lowlevel.c index bb2e09016..d0786f917 100644 --- a/arch/arm/boards/grinn-liteboard/lowlevel.c +++ b/arch/arm/boards/grinn-liteboard/lowlevel.c @@ -2,6 +2,7 @@ * Copyright (C) 2018 Grinn * * Author: Marcin Niestroj <m.niestroj@grinn-global.com> + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -52,9 +53,7 @@ BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_256M, IMD_TYPE_PARAMETER, BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_512M, IMD_TYPE_PARAMETER, "memsize=512", 0); -extern char __dtb_imx6ul_liteboard_start[]; - -static void __noreturn start_imx6_liteboard(void) +static void __noreturn start_imx6_liteboard(void *fdt_blob_fixed_offset) { imx6ul_cpu_lowlevel_init(); @@ -65,18 +64,20 @@ static void __noreturn start_imx6_liteboard(void) if (IS_ENABLED(CONFIG_PBL_CONSOLE)) setup_uart(); - imx6ul_barebox_entry(__dtb_imx6ul_liteboard_start + - get_runtime_offset()); + imx6ul_barebox_entry(fdt_blob_fixed_offset + get_runtime_offset()); } -#define LITEBOARD_ENTRY(name, memory_size) \ +#define LITEBOARD_ENTRY(name, fdt_name, memory_size) \ ENTRY_FUNCTION(name, r0, r1, r2) \ { \ + extern char __dtb_##fdt_name##_liteboard_start[]; \ + \ IMD_USED(liteboard_memsize_##memory_size); \ \ - start_imx6_liteboard(); \ + start_imx6_liteboard(__dtb_##fdt_name##_liteboard_start); \ } -LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, SZ_256M); -LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, SZ_512M); +LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, imx6ul, SZ_256M); +LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, imx6ul, SZ_512M); +LITEBOARD_ENTRY(start_imx6ull_liteboard_256mb, imx6ull, SZ_256M); diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile index ddfe64e83..8b43356fe 100644 --- a/arch/arm/dts/Makefile +++ b/arch/arm/dts/Makefile @@ -26,7 +26,7 @@ lwl-dtb-$(CONFIG_MACH_FREESCALE_MX7_SABRESD) += imx7d-sdb.dtb.o lwl-dtb-$(CONFIG_MACH_GK802) += imx6q-gk802.dtb.o lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += kirkwood-guruplug-server-plus-bb.dtb.o lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += armada-370-mirabox-bb.dtb.o -lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o +lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o imx6ull-liteboard.dtb.o lwl-dtb-$(CONFIG_MACH_GUF_SANTARO) += imx6q-guf-santaro.dtb.o lwl-dtb-$(CONFIG_MACH_GUF_VINCELL) += imx53-guf-vincell.dtb.o imx53-guf-vincell-lt.dtb.o lwl-dtb-$(CONFIG_MACH_GW_VENTANA) += imx6q-gw54xx.dtb.o diff --git a/arch/arm/dts/imx6ull-liteboard.dts b/arch/arm/dts/imx6ull-liteboard.dts new file mode 100644 index 000000000..6e8237dfe --- /dev/null +++ b/arch/arm/dts/imx6ull-liteboard.dts @@ -0,0 +1,96 @@ +/* + * Copyright 2020 Grinn + * + * Author: Bartosz Bilas <b.bilas@grinn-global.com> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * version 2 as published by the Free Software Foundation. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +#include <arm/imx6ull-liteboard.dts> + +/ { + chosen { + environment-sd { + compatible = "barebox,environment"; + device-path = &environment_sd; + status = "disabled"; + }; + + environment-emmc { + compatible = "barebox,environment"; + device-path = &environment_emmc; + status = "disabled"; + }; + }; +}; + +&usdhc1 { + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + environment_sd: partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; + }; +}; + +&usdhc2 { + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "barebox"; + reg = <0x0 0xe0000>; + }; + + environment_emmc: partition@e0000 { + label = "barebox-environment"; + reg = <0xe0000 0x20000>; + }; + }; +}; diff --git a/dts/src/arm/imx6ull-liteboard.dts b/dts/src/arm/imx6ull-liteboard.dts new file mode 100644 index 000000000..92720286e --- /dev/null +++ b/dts/src/arm/imx6ull-liteboard.dts @@ -0,0 +1,151 @@ +/* + * Copyright 2020 Grinn + * + * Author: Bartosz Bilas <b.bilas@grinn-global.com> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * version 2 as published by the Free Software Foundation. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +/dts-v1/; + +#include "imx6ull-litesom.dtsi" + +/ { + model = "Grinn i.MX6ULL liteBoard"; + compatible = "grinn,imx6ull-liteboard", "grinn,imx6ull-litesom", + "fsl,imx6ull"; + + chosen { + stdout-path = &uart1; + }; + + reg_usb_otg1_vbus: regulator-usb-otg1-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usb_otg1_vbus>; + regulator-name = "usb_otg1_vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + gpio = <&gpio2 8 GPIO_ACTIVE_LOW>; + }; +}; + +&iomuxc { + pinctrl_enet1: enet1grp { + fsl,pins = < + MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 + MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0 + MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0 + MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0 + MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 + MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 + MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 + MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 + MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 + MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 + >; + }; + + pinctrl_uart1: uart1grp { + fsl,pins = < + MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 + MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1 + >; + }; + + pinctrl_usdhc1: usdhc1grp { + fsl,pins = < + MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 + MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 + MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10071 + MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 + MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 + MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 + MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 + >; + }; + + pinctrl_usb_otg1_vbus: usb-otg1-vbus { + fsl,pins = < + MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x79 + >; + }; +}; + +&fec1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_enet1>; + phy-mode = "rmii"; + phy-handle = <ðphy0>; + status = "okay"; + + mdio { + #address-cells = <1>; + #size-cells = <0>; + + ethphy0: ethernet-phy@0 { + reg = <0>; + }; + }; +}; + +&snvs_poweroff { + status = "okay"; +}; + +&uart1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart1>; + status = "okay"; +}; + +&usbotg1 { + vbus-supply = <®_usb_otg1_vbus>; + dr_mode = "host"; + status = "okay"; +}; + +&usdhc1 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usdhc1>; + cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; + no-1-8-v; + keep-power-in-suspend; + wakeup-source; + status = "okay"; +}; diff --git a/dts/src/arm/imx6ull-litesom.dtsi b/dts/src/arm/imx6ull-litesom.dtsi new file mode 100644 index 000000000..7bb5b24ba --- /dev/null +++ b/dts/src/arm/imx6ull-litesom.dtsi @@ -0,0 +1,78 @@ +/* + * Copyright 2020 Grinn + * + * Author: Bartosz Bilas <b.bilas@grinn-global.com> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual + * licensing only applies to this file, and not this project as a + * whole. + * + * a) This file is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * version 2 as published by the Free Software Foundation. + * + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * Or, alternatively, + * + * b) Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation + * files (the "Software"), to deal in the Software without + * restriction, including without limitation the rights to use, + * copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following + * conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. + */ + +#include "imx6ull.dtsi" + +/ { + model = "Grinn i.MX6ULL liteSOM"; + compatible = "grinn,imx6ull-litesom", "fsl,imx6ull"; +}; + +&iomuxc { + pinctrl_usdhc2: usdhc2grp { + fsl,pins = < + MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069 + MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059 + MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059 + MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059 + MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059 + MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059 + MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059 + MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059 + MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059 + MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059 + MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x17059 + >; + }; +}; + +&usdhc2 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usdhc2>; + no-1-8-v; + non-removable; + keep-power-in-suspend; + wakeup-source; + bus-width = <8>; + status = "okay"; +}; diff --git a/images/Makefile.imx b/images/Makefile.imx index 765702f26..3571e6568 100644 --- a/images/Makefile.imx +++ b/images/Makefile.imx @@ -312,9 +312,11 @@ $(call build_imx_habv4img, CONFIG_MACH_ADVANTECH_ROM_742X, start_advantech_imx6d $(call build_imx_habv4img, CONFIG_MACH_ZII_RDU2, start_imx6_zii_rdu2, zii-imx6q-rdu2/flash-header-rdu2, zii-imx6-rdu2) # ----------------------- i.MX6ul / i.MX6ull based boards -------------- -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-256mb, grinn-liteboard-256mb) +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ul-256mb, grinn-liteboard-imx6ul-256mb) -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-512mb, grinn-liteboard-512mb) +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-imx6ul-512mb, grinn-liteboard-imx6ul-512mb) + +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ull_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ull-256mb, grinn-liteboard-imx6ull-256mb) $(call build_imx_habv4img, CONFIG_MACH_NXP_IMX6ULL_EVK, start_nxp_imx6ull_evk, nxp-imx6ull-evk/flash-header-nxp-imx6ull-evk, nxp-imx6ull-evk) -- 2.26.0 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/1] boards: liteboard: add i.MX6ULL revision 2020-03-26 18:34 [PATCH 1/1] boards: liteboard: add i.MX6ULL revision Bartosz Bilas @ 2020-03-26 21:12 ` Ahmad Fatoum 2020-04-02 8:01 ` Bartosz Bilas 0 siblings, 1 reply; 3+ messages in thread From: Ahmad Fatoum @ 2020-03-26 21:12 UTC (permalink / raw) To: Bartosz Bilas, barebox Hi, On 3/26/20 7:34 PM, Bartosz Bilas wrote: > These changes introduce support for Grinn i.MX6ULL liteBoard revision. > There are no other changes except the CPU therefore the existing > board directory was used. > > Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> > --- > arch/arm/boards/grinn-liteboard/board.c | 4 +- > .../flash-header-liteboard-256mb.imxcfg | 6 - > .../flash-header-liteboard-512mb.imxcfg | 6 - > ...flash-header-liteboard-imx6ul-256mb.imxcfg | 28 ++++ > ...flash-header-liteboard-imx6ul-512mb.imxcfg | 28 ++++ > ...lash-header-liteboard-imx6ull-256mb.imxcfg | 27 ++++ > .../grinn-liteboard/flash-header-liteboard.h | 26 +-- > arch/arm/boards/grinn-liteboard/lowlevel.c | 19 +-- > arch/arm/dts/Makefile | 2 +- > arch/arm/dts/imx6ull-liteboard.dts | 96 +++++++++++ > dts/src/arm/imx6ull-liteboard.dts | 151 ++++++++++++++++++ > dts/src/arm/imx6ull-litesom.dtsi | 78 +++++++++ > images/Makefile.imx | 6 +- > 13 files changed, 442 insertions(+), 35 deletions(-) > delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg > delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg > create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg > create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg > create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg > create mode 100644 arch/arm/dts/imx6ull-liteboard.dts > create mode 100644 dts/src/arm/imx6ull-liteboard.dts > create mode 100644 dts/src/arm/imx6ull-litesom.dtsi > > diff --git a/arch/arm/boards/grinn-liteboard/board.c b/arch/arm/boards/grinn-liteboard/board.c > index 8e5a91e12..f7fbbb8b8 100644 > --- a/arch/arm/boards/grinn-liteboard/board.c > +++ b/arch/arm/boards/grinn-liteboard/board.c > @@ -2,6 +2,7 @@ > * Copyright (C) 2018 Grinn > * > * Author: Marcin Niestroj <m.niestroj@grinn-global.com> > + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> > * > * This program is free software; you can redistribute it and/or > * modify it under the terms of the GNU General Public License as > @@ -86,7 +87,8 @@ static int liteboard_devices_init(void) > int ret; > int i; > > - if (!of_machine_is_compatible("grinn,imx6ul-liteboard")) > + if (!of_machine_is_compatible("grinn,imx6ul-liteboard") || > + !of_machine_is_compatible("grinn,imx6ull-liteboard")) That should be an && not ||. > return 0; > > barebox_set_hostname("liteboard"); > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg > deleted file mode 100644 > index 1b980c784..000000000 > --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg > +++ /dev/null > @@ -1,6 +0,0 @@ > - > -#define SETUP_MDASP_MDCTL \ > - wm 32 0x021B0040 0x00000047; \ > - wm 32 0x021B0000 0x83180000 > - > -#include "flash-header-liteboard.h" > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg > deleted file mode 100644 > index c93a2cc0f..000000000 > --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg > +++ /dev/null > @@ -1,6 +0,0 @@ > - > -#define SETUP_MDASP_MDCTL \ > - wm 32 0x021B0040 0x0000004F; \ > - wm 32 0x021B0000 0x84180000 > - > -#include "flash-header-liteboard.h" > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg > new file mode 100644 > index 000000000..212ebdae4 > --- /dev/null > +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg > @@ -0,0 +1,28 @@ > + > +#define SETUP_MDASP_MDCTL \ > + wm 32 0x021B0040 0x00000047; \ > + wm 32 0x021B0000 0x83180000 > + > +#define SETUP_LEVEL_CAL \ > + wm 32 0x021B080C 0x00000000; \ > + wm 32 0x021B083C 0x41480148; \ > + wm 32 0x021B0848 0x40403E42; \ > + wm 32 0x021B0850 0x40405852 > + > +#define SETUP_MMDC_MPDCCR \ > + wm 32 0x021B08C0 0x00922012; \ > + wm 32 0x021B0858 0x00000F00 > + > +#define SETUP_MMDC0_MDCFG0 \ > + wm 32 0x021B000C 0x676B52F3 > + > +#define SETUP_MMDC0_MDOR \ > + wm 32 0x021B0030 0x006B1023 > + > +#define SETUP_MPPDCMPR2 \ > + wm 32 0x021B0004 0x00400A38 > + > +#define SETUP_MMDC0_MDPDC \ > + wm 32 0x021B0004 0x0002556D > + > +#include "flash-header-liteboard.h" > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg > new file mode 100644 > index 000000000..00aca210d > --- /dev/null > +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg > @@ -0,0 +1,28 @@ > + > +#define SETUP_MDASP_MDCTL \ > + wm 32 0x021B0040 0x0000004F; \ > + wm 32 0x021B0000 0x84180000 > + > +#define SETUP_LEVEL_CAL \ > + wm 32 0x021B080C 0x00000000; \ > + wm 32 0x021B083C 0x41480148; \ > + wm 32 0x021B0848 0x40403E42; \ > + wm 32 0x021B0850 0x40405852 > + > +#define SETUP_MMDC_MPDCCR \ > + wm 32 0x021B08C0 0x00922012; \ > + wm 32 0x021B0858 0x00000F00 > + > +#define SETUP_MMDC0_MDCFG0 \ > + wm 32 0x021B000C 0x676B52F3 > + > +#define SETUP_MMDC0_MDOR \ > + wm 32 0x021B0030 0x006B1023 > + > +#define SETUP_MPPDCMPR2 \ > + wm 32 0x021B0004 0x00400A38 > + > +#define SETUP_MMDC0_MDPDC \ > + wm 32 0x021B0004 0x0002556D > + > +#include "flash-header-liteboard.h" > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg > new file mode 100644 > index 000000000..73c4c4f97 > --- /dev/null > +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg > @@ -0,0 +1,27 @@ > + > +#define SETUP_MDASP_MDCTL \ > + wm 32 0x021B0040 0x00000047; \ > + wm 32 0x021B0000 0x83180000 > + > +#define SETUP_LEVEL_CAL \ > + wm 32 0x021B080C 0x00000004; \ > + wm 32 0x021B083C 0x00000000; \ > + wm 32 0x021B0848 0x40404040; \ > + wm 32 0x021B0850 0x40404040 > + > +#define SETUP_MMDC_MPDCCR \ > + wm 32 0x021B08C0 0x00944009 > + > +#define SETUP_MMDC0_MDCFG0 \ > + wm 32 0x021B000C 0x3F4352F3 > + > +#define SETUP_MMDC0_MDOR \ > + wm 32 0x021B0030 0x00431023 > + > +#define SETUP_MPPDCMPR2 \ > + wm 32 0x021B0004 0x00400000 > + > +#define SETUP_MMDC0_MDPDC \ > + wm 32 0x021B0004 0x0002552D > + > +#include "flash-header-liteboard.h" > diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h > index 60a39f524..1891400f7 100644 > --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h > +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h > @@ -32,30 +32,34 @@ wm 32 0x020E0244 0x00000030 > wm 32 0x020E0248 0x00000030 > wm 32 0x021B001C 0x00008000 > wm 32 0x021B0800 0xA1390003 > -wm 32 0x021B080C 0x00000000 > -wm 32 0x021B083C 0x41480148 > -wm 32 0x021B0848 0x40403E42 > -wm 32 0x021B0850 0x40405852 > + > +SETUP_LEVEL_CAL > + > wm 32 0x021B081C 0x33333333 > wm 32 0x021B0820 0x33333333 > wm 32 0x021B082C 0xf3333333 > wm 32 0x021B0830 0xf3333333 > -wm 32 0x021B08C0 0x00922012 > -wm 32 0x021B0858 0x00000F00 > + > +SETUP_MMDC_MPDCCR > + > wm 32 0x021B08b8 0x00000800 > wm 32 0x021B0004 0x0002002D > wm 32 0x021B0008 0x1B333030 > -wm 32 0x021B000C 0x676B52F3 > + > +SETUP_MMDC0_MDCFG0 > + > wm 32 0x021B0010 0xB66D0B63 > wm 32 0x021B0014 0x01FF00DB > wm 32 0x021B0018 0x00211740 > wm 32 0x021B001C 0x00008000 > wm 32 0x021B002C 0x000026D2 > -wm 32 0x021B0030 0x006B1023 > + > +SETUP_MMDC0_MDOR > > SETUP_MDASP_MDCTL > > -wm 32 0x021b0890 0x00400A38 > +SETUP_MPPDCMPR2 > + > wm 32 0x021B001C 0x02008032 > wm 32 0x021B001C 0x00008033 > wm 32 0x021B001C 0x00048031 > @@ -63,6 +67,8 @@ wm 32 0x021B001C 0x15208030 > wm 32 0x021B001C 0x04008040 > wm 32 0x021B0020 0x00007800 > wm 32 0x021B0818 0x00000227 > -wm 32 0x021B0004 0x0002556D > + > +SETUP_MMDC0_MDPDC > + > wm 32 0x021B0404 0x00011006 > wm 32 0x021B001C 0x00000000 > diff --git a/arch/arm/boards/grinn-liteboard/lowlevel.c b/arch/arm/boards/grinn-liteboard/lowlevel.c > index bb2e09016..d0786f917 100644 > --- a/arch/arm/boards/grinn-liteboard/lowlevel.c > +++ b/arch/arm/boards/grinn-liteboard/lowlevel.c > @@ -2,6 +2,7 @@ > * Copyright (C) 2018 Grinn > * > * Author: Marcin Niestroj <m.niestroj@grinn-global.com> > + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> > * > * This program is free software; you can redistribute it and/or > * modify it under the terms of the GNU General Public License as > @@ -52,9 +53,7 @@ BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_256M, IMD_TYPE_PARAMETER, > BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_512M, IMD_TYPE_PARAMETER, > "memsize=512", 0); > > -extern char __dtb_imx6ul_liteboard_start[]; > - > -static void __noreturn start_imx6_liteboard(void) > +static void __noreturn start_imx6_liteboard(void *fdt_blob_fixed_offset) > { > imx6ul_cpu_lowlevel_init(); > > @@ -65,18 +64,20 @@ static void __noreturn start_imx6_liteboard(void) > if (IS_ENABLED(CONFIG_PBL_CONSOLE)) > setup_uart(); > > - imx6ul_barebox_entry(__dtb_imx6ul_liteboard_start + > - get_runtime_offset()); > + imx6ul_barebox_entry(fdt_blob_fixed_offset + get_runtime_offset()); > } > > -#define LITEBOARD_ENTRY(name, memory_size) \ > +#define LITEBOARD_ENTRY(name, fdt_name, memory_size) \ > ENTRY_FUNCTION(name, r0, r1, r2) \ > { \ > + extern char __dtb_##fdt_name##_liteboard_start[]; \ > + \ If your board's Kconfig entry selects ARM_USE_COMPRESSED_DTB, you can use __dtb_z_ here to use a compressed dtb. This makes barebox smaller. > IMD_USED(liteboard_memsize_##memory_size); \ > \ > - start_imx6_liteboard(); \ > + start_imx6_liteboard(__dtb_##fdt_name##_liteboard_start); \ > } > > > -LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, SZ_256M); > -LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, SZ_512M); > +LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, imx6ul, SZ_256M); > +LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, imx6ul, SZ_512M); > +LITEBOARD_ENTRY(start_imx6ull_liteboard_256mb, imx6ull, SZ_256M); > diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > index ddfe64e83..8b43356fe 100644 > --- a/arch/arm/dts/Makefile > +++ b/arch/arm/dts/Makefile > @@ -26,7 +26,7 @@ lwl-dtb-$(CONFIG_MACH_FREESCALE_MX7_SABRESD) += imx7d-sdb.dtb.o > lwl-dtb-$(CONFIG_MACH_GK802) += imx6q-gk802.dtb.o > lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += kirkwood-guruplug-server-plus-bb.dtb.o > lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += armada-370-mirabox-bb.dtb.o > -lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o > +lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o imx6ull-liteboard.dtb.o > lwl-dtb-$(CONFIG_MACH_GUF_SANTARO) += imx6q-guf-santaro.dtb.o > lwl-dtb-$(CONFIG_MACH_GUF_VINCELL) += imx53-guf-vincell.dtb.o imx53-guf-vincell-lt.dtb.o > lwl-dtb-$(CONFIG_MACH_GW_VENTANA) += imx6q-gw54xx.dtb.o > diff --git a/arch/arm/dts/imx6ull-liteboard.dts b/arch/arm/dts/imx6ull-liteboard.dts > new file mode 100644 > index 000000000..6e8237dfe > --- /dev/null > +++ b/arch/arm/dts/imx6ull-liteboard.dts > @@ -0,0 +1,96 @@ > +/* > + * Copyright 2020 Grinn > + * > + * Author: Bartosz Bilas <b.bilas@grinn-global.com> > + * > + * This file is dual-licensed: you can use it either under the terms > + * of the GPL or the X11 license, at your option. Note that this dual > + * licensing only applies to this file, and not this project as a > + * whole. We have been using SPDX-Identifiers in barebox. Would be great if new code would do this as well. > + * > + * a) This file is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * version 2 as published by the Free Software Foundation. > + * > + * This file is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * Or, alternatively, > + * > + * b) Permission is hereby granted, free of charge, to any person > + * obtaining a copy of this software and associated documentation > + * files (the "Software"), to deal in the Software without > + * restriction, including without limitation the rights to use, > + * copy, modify, merge, publish, distribute, sublicense, and/or > + * sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following > + * conditions: > + * > + * The above copyright notice and this permission notice shall be > + * included in all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES > + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND > + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT > + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, > + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > +#include <arm/imx6ull-liteboard.dts> > + > +/ { > + chosen { > + environment-sd { > + compatible = "barebox,environment"; > + device-path = &environment_sd; > + status = "disabled"; > + }; > + > + environment-emmc { > + compatible = "barebox,environment"; > + device-path = &environment_emmc; > + status = "disabled"; > + }; > + }; > +}; > + > +&usdhc1 { > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + partition@0 { > + label = "barebox"; > + reg = <0x0 0xe0000>; > + }; > + > + environment_sd: partition@e0000 { > + label = "barebox-environment"; > + reg = <0xe0000 0x20000>; > + }; > + }; > +}; > + > +&usdhc2 { > + partitions { > + compatible = "fixed-partitions"; > + #address-cells = <1>; > + #size-cells = <1>; > + > + partition@0 { > + label = "barebox"; > + reg = <0x0 0xe0000>; > + }; > + > + environment_emmc: partition@e0000 { > + label = "barebox-environment"; > + reg = <0xe0000 0x20000>; > + }; > + }; > +}; > diff --git a/dts/src/arm/imx6ull-liteboard.dts b/dts/src/arm/imx6ull-liteboard.dts > new file mode 100644 > index 000000000..92720286e > --- /dev/null > +++ b/dts/src/arm/imx6ull-liteboard.dts We don't accept patches against dts/, because it's 1:1 imported from Linux at regular intervals. Either upstream the device tree into Linux and wait till it goes into a -rc and Sascha imports it or add your complete device tree under barebox' arch/arm/dts > @@ -0,0 +1,151 @@ > +/* > + * Copyright 2020 Grinn > + * > + * Author: Bartosz Bilas <b.bilas@grinn-global.com> > + * > + * This file is dual-licensed: you can use it either under the terms > + * of the GPL or the X11 license, at your option. Note that this dual > + * licensing only applies to this file, and not this project as a > + * whole. > + * > + * a) This file is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * version 2 as published by the Free Software Foundation. > + * > + * This file is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * Or, alternatively, > + * > + * b) Permission is hereby granted, free of charge, to any person > + * obtaining a copy of this software and associated documentation > + * files (the "Software"), to deal in the Software without > + * restriction, including without limitation the rights to use, > + * copy, modify, merge, publish, distribute, sublicense, and/or > + * sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following > + * conditions: > + * > + * The above copyright notice and this permission notice shall be > + * included in all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES > + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND > + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT > + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, > + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > +/dts-v1/; > + > +#include "imx6ull-litesom.dtsi" > + > +/ { > + model = "Grinn i.MX6ULL liteBoard"; > + compatible = "grinn,imx6ull-liteboard", "grinn,imx6ull-litesom", > + "fsl,imx6ull"; > + > + chosen { > + stdout-path = &uart1; > + }; > + > + reg_usb_otg1_vbus: regulator-usb-otg1-vbus { > + compatible = "regulator-fixed"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usb_otg1_vbus>; > + regulator-name = "usb_otg1_vbus"; > + regulator-min-microvolt = <5000000>; > + regulator-max-microvolt = <5000000>; > + gpio = <&gpio2 8 GPIO_ACTIVE_LOW>; > + }; > +}; > + > +&iomuxc { > + pinctrl_enet1: enet1grp { > + fsl,pins = < > + MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 > + MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0 > + MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0 > + MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0 > + MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 > + MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 > + MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 > + MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 > + MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 > + MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 > + >; > + }; > + > + pinctrl_uart1: uart1grp { > + fsl,pins = < > + MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 > + MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1 If you feel like it, you can add a DEBUG_LL setup in your lowlevel.c. This can be very handy during debugging of early startup should this become necessary (just search for DEBUG_LL in other boards). > + >; > + }; > + > + pinctrl_usdhc1: usdhc1grp { > + fsl,pins = < > + MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 > + MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 > + MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10071 > + MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 > + MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 > + MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 > + MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 > + >; > + }; > + > + pinctrl_usb_otg1_vbus: usb-otg1-vbus { > + fsl,pins = < > + MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x79 > + >; > + }; > +}; > + > +&fec1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_enet1>; > + phy-mode = "rmii"; > + phy-handle = <ðphy0>; > + status = "okay"; > + > + mdio { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ethphy0: ethernet-phy@0 { > + reg = <0>; > + }; > + }; > +}; > + > +&snvs_poweroff { > + status = "okay"; > +}; > + > +&uart1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_uart1>; > + status = "okay"; > +}; > + > +&usbotg1 { > + vbus-supply = <®_usb_otg1_vbus>; > + dr_mode = "host"; > + status = "okay"; > +}; > + > +&usdhc1 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usdhc1>; > + cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; > + no-1-8-v; > + keep-power-in-suspend; > + wakeup-source; Why would a normal SD-Card be a wakeup-source? > + status = "okay"; > +}; > diff --git a/dts/src/arm/imx6ull-litesom.dtsi b/dts/src/arm/imx6ull-litesom.dtsi > new file mode 100644 > index 000000000..7bb5b24ba > --- /dev/null > +++ b/dts/src/arm/imx6ull-litesom.dtsi > @@ -0,0 +1,78 @@ > +/* > + * Copyright 2020 Grinn > + * > + * Author: Bartosz Bilas <b.bilas@grinn-global.com> > + * > + * This file is dual-licensed: you can use it either under the terms > + * of the GPL or the X11 license, at your option. Note that this dual > + * licensing only applies to this file, and not this project as a > + * whole. > + * > + * a) This file is free software; you can redistribute it and/or > + * modify it under the terms of the GNU General Public License > + * version 2 as published by the Free Software Foundation. > + * > + * This file is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * Or, alternatively, > + * > + * b) Permission is hereby granted, free of charge, to any person > + * obtaining a copy of this software and associated documentation > + * files (the "Software"), to deal in the Software without > + * restriction, including without limitation the rights to use, > + * copy, modify, merge, publish, distribute, sublicense, and/or > + * sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following > + * conditions: > + * > + * The above copyright notice and this permission notice shall be > + * included in all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, > + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES > + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND > + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT > + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, > + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING > + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > +#include "imx6ull.dtsi" > + > +/ { > + model = "Grinn i.MX6ULL liteSOM"; > + compatible = "grinn,imx6ull-litesom", "fsl,imx6ull"; > +}; > + > +&iomuxc { > + pinctrl_usdhc2: usdhc2grp { > + fsl,pins = < > + MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069 > + MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059 > + MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059 > + MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059 > + MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059 > + MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059 > + MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059 > + MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059 > + MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059 > + MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059 > + MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x17059 > + >; > + }; > +}; > + > +&usdhc2 { > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_usdhc2>; > + no-1-8-v; > + non-removable; > + keep-power-in-suspend; > + wakeup-source; Why would an eMMC be a wakeup-source? You can add no-sd and no-sdio here as well to speed up boot a little > + bus-width = <8>; > + status = "okay"; > +}; > diff --git a/images/Makefile.imx b/images/Makefile.imx > index 765702f26..3571e6568 100644 > --- a/images/Makefile.imx > +++ b/images/Makefile.imx > @@ -312,9 +312,11 @@ $(call build_imx_habv4img, CONFIG_MACH_ADVANTECH_ROM_742X, start_advantech_imx6d > $(call build_imx_habv4img, CONFIG_MACH_ZII_RDU2, start_imx6_zii_rdu2, zii-imx6q-rdu2/flash-header-rdu2, zii-imx6-rdu2) > > # ----------------------- i.MX6ul / i.MX6ull based boards -------------- > -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-256mb, grinn-liteboard-256mb) > +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ul-256mb, grinn-liteboard-imx6ul-256mb) > > -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-512mb, grinn-liteboard-512mb) > +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-imx6ul-512mb, grinn-liteboard-imx6ul-512mb) > + > +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ull_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ull-256mb, grinn-liteboard-imx6ull-256mb) > > $(call build_imx_habv4img, CONFIG_MACH_NXP_IMX6ULL_EVK, start_nxp_imx6ull_evk, nxp-imx6ull-evk/flash-header-nxp-imx6ull-evk, nxp-imx6ull-evk) > > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH 1/1] boards: liteboard: add i.MX6ULL revision 2020-03-26 21:12 ` Ahmad Fatoum @ 2020-04-02 8:01 ` Bartosz Bilas 0 siblings, 0 replies; 3+ messages in thread From: Bartosz Bilas @ 2020-04-02 8:01 UTC (permalink / raw) To: Ahmad Fatoum, barebox Hello Ahmad, at first I'm sorry for the late answer On 26.03.2020 22:12, Ahmad Fatoum wrote: > Hi, > > On 3/26/20 7:34 PM, Bartosz Bilas wrote: >> These changes introduce support for Grinn i.MX6ULL liteBoard revision. >> There are no other changes except the CPU therefore the existing >> board directory was used. >> >> Signed-off-by: Bartosz Bilas <b.bilas@grinn-global.com> >> --- >> arch/arm/boards/grinn-liteboard/board.c | 4 +- >> .../flash-header-liteboard-256mb.imxcfg | 6 - >> .../flash-header-liteboard-512mb.imxcfg | 6 - >> ...flash-header-liteboard-imx6ul-256mb.imxcfg | 28 ++++ >> ...flash-header-liteboard-imx6ul-512mb.imxcfg | 28 ++++ >> ...lash-header-liteboard-imx6ull-256mb.imxcfg | 27 ++++ >> .../grinn-liteboard/flash-header-liteboard.h | 26 +-- >> arch/arm/boards/grinn-liteboard/lowlevel.c | 19 +-- >> arch/arm/dts/Makefile | 2 +- >> arch/arm/dts/imx6ull-liteboard.dts | 96 +++++++++++ >> dts/src/arm/imx6ull-liteboard.dts | 151 ++++++++++++++++++ >> dts/src/arm/imx6ull-litesom.dtsi | 78 +++++++++ >> images/Makefile.imx | 6 +- >> 13 files changed, 442 insertions(+), 35 deletions(-) >> delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg >> delete mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg >> create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg >> create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg >> create mode 100644 arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg >> create mode 100644 arch/arm/dts/imx6ull-liteboard.dts >> create mode 100644 dts/src/arm/imx6ull-liteboard.dts >> create mode 100644 dts/src/arm/imx6ull-litesom.dtsi >> >> diff --git a/arch/arm/boards/grinn-liteboard/board.c b/arch/arm/boards/grinn-liteboard/board.c >> index 8e5a91e12..f7fbbb8b8 100644 >> --- a/arch/arm/boards/grinn-liteboard/board.c >> +++ b/arch/arm/boards/grinn-liteboard/board.c >> @@ -2,6 +2,7 @@ >> * Copyright (C) 2018 Grinn >> * >> * Author: Marcin Niestroj <m.niestroj@grinn-global.com> >> + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> >> * >> * This program is free software; you can redistribute it and/or >> * modify it under the terms of the GNU General Public License as >> @@ -86,7 +87,8 @@ static int liteboard_devices_init(void) >> int ret; >> int i; >> >> - if (!of_machine_is_compatible("grinn,imx6ul-liteboard")) >> + if (!of_machine_is_compatible("grinn,imx6ul-liteboard") || >> + !of_machine_is_compatible("grinn,imx6ull-liteboard")) > That should be an && not ||. Right, I will fix that. > >> return 0; >> >> barebox_set_hostname("liteboard"); >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg >> deleted file mode 100644 >> index 1b980c784..000000000 >> --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-256mb.imxcfg >> +++ /dev/null >> @@ -1,6 +0,0 @@ >> - >> -#define SETUP_MDASP_MDCTL \ >> - wm 32 0x021B0040 0x00000047; \ >> - wm 32 0x021B0000 0x83180000 >> - >> -#include "flash-header-liteboard.h" >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg >> deleted file mode 100644 >> index c93a2cc0f..000000000 >> --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-512mb.imxcfg >> +++ /dev/null >> @@ -1,6 +0,0 @@ >> - >> -#define SETUP_MDASP_MDCTL \ >> - wm 32 0x021B0040 0x0000004F; \ >> - wm 32 0x021B0000 0x84180000 >> - >> -#include "flash-header-liteboard.h" >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg >> new file mode 100644 >> index 000000000..212ebdae4 >> --- /dev/null >> +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-256mb.imxcfg >> @@ -0,0 +1,28 @@ >> + >> +#define SETUP_MDASP_MDCTL \ >> + wm 32 0x021B0040 0x00000047; \ >> + wm 32 0x021B0000 0x83180000 >> + >> +#define SETUP_LEVEL_CAL \ >> + wm 32 0x021B080C 0x00000000; \ >> + wm 32 0x021B083C 0x41480148; \ >> + wm 32 0x021B0848 0x40403E42; \ >> + wm 32 0x021B0850 0x40405852 >> + >> +#define SETUP_MMDC_MPDCCR \ >> + wm 32 0x021B08C0 0x00922012; \ >> + wm 32 0x021B0858 0x00000F00 >> + >> +#define SETUP_MMDC0_MDCFG0 \ >> + wm 32 0x021B000C 0x676B52F3 >> + >> +#define SETUP_MMDC0_MDOR \ >> + wm 32 0x021B0030 0x006B1023 >> + >> +#define SETUP_MPPDCMPR2 \ >> + wm 32 0x021B0004 0x00400A38 >> + >> +#define SETUP_MMDC0_MDPDC \ >> + wm 32 0x021B0004 0x0002556D >> + >> +#include "flash-header-liteboard.h" >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg >> new file mode 100644 >> index 000000000..00aca210d >> --- /dev/null >> +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ul-512mb.imxcfg >> @@ -0,0 +1,28 @@ >> + >> +#define SETUP_MDASP_MDCTL \ >> + wm 32 0x021B0040 0x0000004F; \ >> + wm 32 0x021B0000 0x84180000 >> + >> +#define SETUP_LEVEL_CAL \ >> + wm 32 0x021B080C 0x00000000; \ >> + wm 32 0x021B083C 0x41480148; \ >> + wm 32 0x021B0848 0x40403E42; \ >> + wm 32 0x021B0850 0x40405852 >> + >> +#define SETUP_MMDC_MPDCCR \ >> + wm 32 0x021B08C0 0x00922012; \ >> + wm 32 0x021B0858 0x00000F00 >> + >> +#define SETUP_MMDC0_MDCFG0 \ >> + wm 32 0x021B000C 0x676B52F3 >> + >> +#define SETUP_MMDC0_MDOR \ >> + wm 32 0x021B0030 0x006B1023 >> + >> +#define SETUP_MPPDCMPR2 \ >> + wm 32 0x021B0004 0x00400A38 >> + >> +#define SETUP_MMDC0_MDPDC \ >> + wm 32 0x021B0004 0x0002556D >> + >> +#include "flash-header-liteboard.h" >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg >> new file mode 100644 >> index 000000000..73c4c4f97 >> --- /dev/null >> +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard-imx6ull-256mb.imxcfg >> @@ -0,0 +1,27 @@ >> + >> +#define SETUP_MDASP_MDCTL \ >> + wm 32 0x021B0040 0x00000047; \ >> + wm 32 0x021B0000 0x83180000 >> + >> +#define SETUP_LEVEL_CAL \ >> + wm 32 0x021B080C 0x00000004; \ >> + wm 32 0x021B083C 0x00000000; \ >> + wm 32 0x021B0848 0x40404040; \ >> + wm 32 0x021B0850 0x40404040 >> + >> +#define SETUP_MMDC_MPDCCR \ >> + wm 32 0x021B08C0 0x00944009 >> + >> +#define SETUP_MMDC0_MDCFG0 \ >> + wm 32 0x021B000C 0x3F4352F3 >> + >> +#define SETUP_MMDC0_MDOR \ >> + wm 32 0x021B0030 0x00431023 >> + >> +#define SETUP_MPPDCMPR2 \ >> + wm 32 0x021B0004 0x00400000 >> + >> +#define SETUP_MMDC0_MDPDC \ >> + wm 32 0x021B0004 0x0002552D >> + >> +#include "flash-header-liteboard.h" >> diff --git a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h >> index 60a39f524..1891400f7 100644 >> --- a/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h >> +++ b/arch/arm/boards/grinn-liteboard/flash-header-liteboard.h >> @@ -32,30 +32,34 @@ wm 32 0x020E0244 0x00000030 >> wm 32 0x020E0248 0x00000030 >> wm 32 0x021B001C 0x00008000 >> wm 32 0x021B0800 0xA1390003 >> -wm 32 0x021B080C 0x00000000 >> -wm 32 0x021B083C 0x41480148 >> -wm 32 0x021B0848 0x40403E42 >> -wm 32 0x021B0850 0x40405852 >> + >> +SETUP_LEVEL_CAL >> + >> wm 32 0x021B081C 0x33333333 >> wm 32 0x021B0820 0x33333333 >> wm 32 0x021B082C 0xf3333333 >> wm 32 0x021B0830 0xf3333333 >> -wm 32 0x021B08C0 0x00922012 >> -wm 32 0x021B0858 0x00000F00 >> + >> +SETUP_MMDC_MPDCCR >> + >> wm 32 0x021B08b8 0x00000800 >> wm 32 0x021B0004 0x0002002D >> wm 32 0x021B0008 0x1B333030 >> -wm 32 0x021B000C 0x676B52F3 >> + >> +SETUP_MMDC0_MDCFG0 >> + >> wm 32 0x021B0010 0xB66D0B63 >> wm 32 0x021B0014 0x01FF00DB >> wm 32 0x021B0018 0x00211740 >> wm 32 0x021B001C 0x00008000 >> wm 32 0x021B002C 0x000026D2 >> -wm 32 0x021B0030 0x006B1023 >> + >> +SETUP_MMDC0_MDOR >> >> SETUP_MDASP_MDCTL >> >> -wm 32 0x021b0890 0x00400A38 >> +SETUP_MPPDCMPR2 >> + >> wm 32 0x021B001C 0x02008032 >> wm 32 0x021B001C 0x00008033 >> wm 32 0x021B001C 0x00048031 >> @@ -63,6 +67,8 @@ wm 32 0x021B001C 0x15208030 >> wm 32 0x021B001C 0x04008040 >> wm 32 0x021B0020 0x00007800 >> wm 32 0x021B0818 0x00000227 >> -wm 32 0x021B0004 0x0002556D >> + >> +SETUP_MMDC0_MDPDC >> + >> wm 32 0x021B0404 0x00011006 >> wm 32 0x021B001C 0x00000000 >> diff --git a/arch/arm/boards/grinn-liteboard/lowlevel.c b/arch/arm/boards/grinn-liteboard/lowlevel.c >> index bb2e09016..d0786f917 100644 >> --- a/arch/arm/boards/grinn-liteboard/lowlevel.c >> +++ b/arch/arm/boards/grinn-liteboard/lowlevel.c >> @@ -2,6 +2,7 @@ >> * Copyright (C) 2018 Grinn >> * >> * Author: Marcin Niestroj <m.niestroj@grinn-global.com> >> + * Modified by: Bartosz Bilas <b.bilas@grinn-global.com> >> * >> * This program is free software; you can redistribute it and/or >> * modify it under the terms of the GNU General Public License as >> @@ -52,9 +53,7 @@ BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_256M, IMD_TYPE_PARAMETER, >> BAREBOX_IMD_TAG_STRING(liteboard_memsize_SZ_512M, IMD_TYPE_PARAMETER, >> "memsize=512", 0); >> >> -extern char __dtb_imx6ul_liteboard_start[]; >> - >> -static void __noreturn start_imx6_liteboard(void) >> +static void __noreturn start_imx6_liteboard(void *fdt_blob_fixed_offset) >> { >> imx6ul_cpu_lowlevel_init(); >> >> @@ -65,18 +64,20 @@ static void __noreturn start_imx6_liteboard(void) >> if (IS_ENABLED(CONFIG_PBL_CONSOLE)) >> setup_uart(); >> >> - imx6ul_barebox_entry(__dtb_imx6ul_liteboard_start + >> - get_runtime_offset()); >> + imx6ul_barebox_entry(fdt_blob_fixed_offset + get_runtime_offset()); >> } >> >> -#define LITEBOARD_ENTRY(name, memory_size) \ >> +#define LITEBOARD_ENTRY(name, fdt_name, memory_size) \ >> ENTRY_FUNCTION(name, r0, r1, r2) \ >> { \ >> + extern char __dtb_##fdt_name##_liteboard_start[]; \ >> + \ > If your board's Kconfig entry selects ARM_USE_COMPRESSED_DTB, you can > use __dtb_z_ here to use a compressed dtb. This makes barebox smaller. Ok, thanks for the hint. >> IMD_USED(liteboard_memsize_##memory_size); \ >> \ >> - start_imx6_liteboard(); \ >> + start_imx6_liteboard(__dtb_##fdt_name##_liteboard_start); \ >> } >> >> >> -LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, SZ_256M); >> -LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, SZ_512M); >> +LITEBOARD_ENTRY(start_imx6ul_liteboard_256mb, imx6ul, SZ_256M); >> +LITEBOARD_ENTRY(start_imx6ul_liteboard_512mb, imx6ul, SZ_512M); >> +LITEBOARD_ENTRY(start_imx6ull_liteboard_256mb, imx6ull, SZ_256M); >> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile >> index ddfe64e83..8b43356fe 100644 >> --- a/arch/arm/dts/Makefile >> +++ b/arch/arm/dts/Makefile >> @@ -26,7 +26,7 @@ lwl-dtb-$(CONFIG_MACH_FREESCALE_MX7_SABRESD) += imx7d-sdb.dtb.o >> lwl-dtb-$(CONFIG_MACH_GK802) += imx6q-gk802.dtb.o >> lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_GURUPLUG) += kirkwood-guruplug-server-plus-bb.dtb.o >> lwl-dtb-$(CONFIG_MACH_GLOBALSCALE_MIRABOX) += armada-370-mirabox-bb.dtb.o >> -lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o >> +lwl-dtb-$(CONFIG_MACH_GRINN_LITEBOARD) += imx6ul-liteboard.dtb.o imx6ull-liteboard.dtb.o >> lwl-dtb-$(CONFIG_MACH_GUF_SANTARO) += imx6q-guf-santaro.dtb.o >> lwl-dtb-$(CONFIG_MACH_GUF_VINCELL) += imx53-guf-vincell.dtb.o imx53-guf-vincell-lt.dtb.o >> lwl-dtb-$(CONFIG_MACH_GW_VENTANA) += imx6q-gw54xx.dtb.o >> diff --git a/arch/arm/dts/imx6ull-liteboard.dts b/arch/arm/dts/imx6ull-liteboard.dts >> new file mode 100644 >> index 000000000..6e8237dfe >> --- /dev/null >> +++ b/arch/arm/dts/imx6ull-liteboard.dts >> @@ -0,0 +1,96 @@ >> +/* >> + * Copyright 2020 Grinn >> + * >> + * Author: Bartosz Bilas <b.bilas@grinn-global.com> >> + * >> + * This file is dual-licensed: you can use it either under the terms >> + * of the GPL or the X11 license, at your option. Note that this dual >> + * licensing only applies to this file, and not this project as a >> + * whole. > We have been using SPDX-Identifiers in barebox. Would be great if new > code would do this as well. I will change it. > >> + * >> + * a) This file is free software; you can redistribute it and/or >> + * modify it under the terms of the GNU General Public License >> + * version 2 as published by the Free Software Foundation. >> + * >> + * This file is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> + * GNU General Public License for more details. >> + * >> + * Or, alternatively, >> + * >> + * b) Permission is hereby granted, free of charge, to any person >> + * obtaining a copy of this software and associated documentation >> + * files (the "Software"), to deal in the Software without >> + * restriction, including without limitation the rights to use, >> + * copy, modify, merge, publish, distribute, sublicense, and/or >> + * sell copies of the Software, and to permit persons to whom the >> + * Software is furnished to do so, subject to the following >> + * conditions: >> + * >> + * The above copyright notice and this permission notice shall be >> + * included in all copies or substantial portions of the Software. >> + * >> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES >> + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> + * OTHER DEALINGS IN THE SOFTWARE. >> + */ >> + >> +#include <arm/imx6ull-liteboard.dts> >> + >> +/ { >> + chosen { >> + environment-sd { >> + compatible = "barebox,environment"; >> + device-path = &environment_sd; >> + status = "disabled"; >> + }; >> + >> + environment-emmc { >> + compatible = "barebox,environment"; >> + device-path = &environment_emmc; >> + status = "disabled"; >> + }; >> + }; >> +}; >> + >> +&usdhc1 { >> + partitions { >> + compatible = "fixed-partitions"; >> + #address-cells = <1>; >> + #size-cells = <1>; >> + >> + partition@0 { >> + label = "barebox"; >> + reg = <0x0 0xe0000>; >> + }; >> + >> + environment_sd: partition@e0000 { >> + label = "barebox-environment"; >> + reg = <0xe0000 0x20000>; >> + }; >> + }; >> +}; >> + >> +&usdhc2 { >> + partitions { >> + compatible = "fixed-partitions"; >> + #address-cells = <1>; >> + #size-cells = <1>; >> + >> + partition@0 { >> + label = "barebox"; >> + reg = <0x0 0xe0000>; >> + }; >> + >> + environment_emmc: partition@e0000 { >> + label = "barebox-environment"; >> + reg = <0xe0000 0x20000>; >> + }; >> + }; >> +}; >> diff --git a/dts/src/arm/imx6ull-liteboard.dts b/dts/src/arm/imx6ull-liteboard.dts >> new file mode 100644 >> index 000000000..92720286e >> --- /dev/null >> +++ b/dts/src/arm/imx6ull-liteboard.dts > We don't accept patches against dts/, because it's 1:1 imported from Linux > at regular intervals. Either upstream the device tree into Linux and wait > till it goes into a -rc and Sascha imports it or add your complete device tree > under barebox' arch/arm/dts I didn't know that. In that case I will send patches to Linus and then I'll come back and add support in barebox. > >> @@ -0,0 +1,151 @@ >> +/* >> + * Copyright 2020 Grinn >> + * >> + * Author: Bartosz Bilas <b.bilas@grinn-global.com> >> + * >> + * This file is dual-licensed: you can use it either under the terms >> + * of the GPL or the X11 license, at your option. Note that this dual >> + * licensing only applies to this file, and not this project as a >> + * whole. >> + * >> + * a) This file is free software; you can redistribute it and/or >> + * modify it under the terms of the GNU General Public License >> + * version 2 as published by the Free Software Foundation. >> + * >> + * This file is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> + * GNU General Public License for more details. >> + * >> + * Or, alternatively, >> + * >> + * b) Permission is hereby granted, free of charge, to any person >> + * obtaining a copy of this software and associated documentation >> + * files (the "Software"), to deal in the Software without >> + * restriction, including without limitation the rights to use, >> + * copy, modify, merge, publish, distribute, sublicense, and/or >> + * sell copies of the Software, and to permit persons to whom the >> + * Software is furnished to do so, subject to the following >> + * conditions: >> + * >> + * The above copyright notice and this permission notice shall be >> + * included in all copies or substantial portions of the Software. >> + * >> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES >> + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> + * OTHER DEALINGS IN THE SOFTWARE. >> + */ >> + >> +/dts-v1/; >> + >> +#include "imx6ull-litesom.dtsi" >> + >> +/ { >> + model = "Grinn i.MX6ULL liteBoard"; >> + compatible = "grinn,imx6ull-liteboard", "grinn,imx6ull-litesom", >> + "fsl,imx6ull"; >> + >> + chosen { >> + stdout-path = &uart1; >> + }; >> + >> + reg_usb_otg1_vbus: regulator-usb-otg1-vbus { >> + compatible = "regulator-fixed"; >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_usb_otg1_vbus>; >> + regulator-name = "usb_otg1_vbus"; >> + regulator-min-microvolt = <5000000>; >> + regulator-max-microvolt = <5000000>; >> + gpio = <&gpio2 8 GPIO_ACTIVE_LOW>; >> + }; >> +}; >> + >> +&iomuxc { >> + pinctrl_enet1: enet1grp { >> + fsl,pins = < >> + MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 >> + MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x1b0b0 >> + MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x1b0b0 >> + MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0 >> + MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 >> + MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 >> + MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 >> + MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 >> + MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 >> + MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 >> + >; >> + }; >> + >> + pinctrl_uart1: uart1grp { >> + fsl,pins = < >> + MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 >> + MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1 > If you feel like it, you can add a DEBUG_LL setup in your lowlevel.c. > This can be very handy during debugging of early startup should this > become necessary (just search for DEBUG_LL in other boards). That's already done. > >> + >; >> + }; >> + >> + pinctrl_usdhc1: usdhc1grp { >> + fsl,pins = < >> + MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x17059 >> + MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059 >> + MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10071 >> + MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059 >> + MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059 >> + MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059 >> + MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059 >> + >; >> + }; >> + >> + pinctrl_usb_otg1_vbus: usb-otg1-vbus { >> + fsl,pins = < >> + MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x79 >> + >; >> + }; >> +}; >> + >> +&fec1 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_enet1>; >> + phy-mode = "rmii"; >> + phy-handle = <ðphy0>; >> + status = "okay"; >> + >> + mdio { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + ethphy0: ethernet-phy@0 { >> + reg = <0>; >> + }; >> + }; >> +}; >> + >> +&snvs_poweroff { >> + status = "okay"; >> +}; >> + >> +&uart1 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_uart1>; >> + status = "okay"; >> +}; >> + >> +&usbotg1 { >> + vbus-supply = <®_usb_otg1_vbus>; >> + dr_mode = "host"; >> + status = "okay"; >> +}; >> + >> +&usdhc1 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_usdhc1>; >> + cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; >> + no-1-8-v; >> + keep-power-in-suspend; >> + wakeup-source; > Why would a normal SD-Card be a wakeup-source? To be honest, I took that from the already existing dts and I didn't think about that, probably it's a mistake and it should be fixed in the Linux repository as well. > >> + status = "okay"; >> +}; >> diff --git a/dts/src/arm/imx6ull-litesom.dtsi b/dts/src/arm/imx6ull-litesom.dtsi >> new file mode 100644 >> index 000000000..7bb5b24ba >> --- /dev/null >> +++ b/dts/src/arm/imx6ull-litesom.dtsi >> @@ -0,0 +1,78 @@ >> +/* >> + * Copyright 2020 Grinn >> + * >> + * Author: Bartosz Bilas <b.bilas@grinn-global.com> >> + * >> + * This file is dual-licensed: you can use it either under the terms >> + * of the GPL or the X11 license, at your option. Note that this dual >> + * licensing only applies to this file, and not this project as a >> + * whole. >> + * >> + * a) This file is free software; you can redistribute it and/or >> + * modify it under the terms of the GNU General Public License >> + * version 2 as published by the Free Software Foundation. >> + * >> + * This file is distributed in the hope that it will be useful, >> + * but WITHOUT ANY WARRANTY; without even the implied warranty of >> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the >> + * GNU General Public License for more details. >> + * >> + * Or, alternatively, >> + * >> + * b) Permission is hereby granted, free of charge, to any person >> + * obtaining a copy of this software and associated documentation >> + * files (the "Software"), to deal in the Software without >> + * restriction, including without limitation the rights to use, >> + * copy, modify, merge, publish, distribute, sublicense, and/or >> + * sell copies of the Software, and to permit persons to whom the >> + * Software is furnished to do so, subject to the following >> + * conditions: >> + * >> + * The above copyright notice and this permission notice shall be >> + * included in all copies or substantial portions of the Software. >> + * >> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, >> + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES >> + * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND >> + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT >> + * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, >> + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING >> + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> + * OTHER DEALINGS IN THE SOFTWARE. >> + */ >> + >> +#include "imx6ull.dtsi" >> + >> +/ { >> + model = "Grinn i.MX6ULL liteSOM"; >> + compatible = "grinn,imx6ull-litesom", "fsl,imx6ull"; >> +}; >> + >> +&iomuxc { >> + pinctrl_usdhc2: usdhc2grp { >> + fsl,pins = < >> + MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x10069 >> + MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x17059 >> + MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x17059 >> + MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x17059 >> + MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059 >> + MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059 >> + MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x17059 >> + MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x17059 >> + MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x17059 >> + MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x17059 >> + MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x17059 >> + >; >> + }; >> +}; >> + >> +&usdhc2 { >> + pinctrl-names = "default"; >> + pinctrl-0 = <&pinctrl_usdhc2>; >> + no-1-8-v; >> + non-removable; >> + keep-power-in-suspend; >> + wakeup-source; > Why would an eMMC be a wakeup-source? > You can add no-sd and no-sdio here as well to speed up boot a little Ok, I will fix that. > >> + bus-width = <8>; >> + status = "okay"; >> +}; >> diff --git a/images/Makefile.imx b/images/Makefile.imx >> index 765702f26..3571e6568 100644 >> --- a/images/Makefile.imx >> +++ b/images/Makefile.imx >> @@ -312,9 +312,11 @@ $(call build_imx_habv4img, CONFIG_MACH_ADVANTECH_ROM_742X, start_advantech_imx6d >> $(call build_imx_habv4img, CONFIG_MACH_ZII_RDU2, start_imx6_zii_rdu2, zii-imx6q-rdu2/flash-header-rdu2, zii-imx6-rdu2) >> >> # ----------------------- i.MX6ul / i.MX6ull based boards -------------- >> -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-256mb, grinn-liteboard-256mb) >> +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ul-256mb, grinn-liteboard-imx6ul-256mb) >> >> -$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-512mb, grinn-liteboard-512mb) >> +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ul_liteboard_512mb, grinn-liteboard/flash-header-liteboard-imx6ul-512mb, grinn-liteboard-imx6ul-512mb) >> + >> +$(call build_imx_habv4img, CONFIG_MACH_GRINN_LITEBOARD, start_imx6ull_liteboard_256mb, grinn-liteboard/flash-header-liteboard-imx6ull-256mb, grinn-liteboard-imx6ull-256mb) >> >> $(call build_imx_habv4img, CONFIG_MACH_NXP_IMX6ULL_EVK, start_nxp_imx6ull_evk, nxp-imx6ull-evk/flash-header-nxp-imx6ull-evk, nxp-imx6ull-evk) >> >> Thanks for the review, I will send v2 when everything will be fixed. Best Bartek _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2020-04-02 8:01 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-03-26 18:34 [PATCH 1/1] boards: liteboard: add i.MX6ULL revision Bartosz Bilas 2020-03-26 21:12 ` Ahmad Fatoum 2020-04-02 8:01 ` Bartosz Bilas
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox