Changes in v2: - Link to v1: https://lore.barebox.org/barebox/[email protected]/ - Remove explicit RAM size settings from lowlevel.c and dts since this can be autodetected. As consequence, both DP75SDI variants (Paperwhite 2 and 3) now share the same dts. - Rebase to current - Attempts to use barebox,deep-probe did unfortunately not work yet. Brief description of the problem: Device specific data is stored in /dev/mmc1.boot0.userdata, this data is read by barebox and passed as ATAGs to the vendor kernel, without this data, the device won't work properly. An attempt has been made to use barebox,deep-probe (see patch below), however, mmc1 will not be available later, resulting e.g. in an error > Could not read board info from /dev/mmc1.boot0.userdata during startup. Example patch: # diff --git a/arch/arm/boards/kindle-mx6sl/board.c b/arch/arm/boards/kindle-mx6sl/board.c index ff8083a756..5c18e074c9 100644 --- a/arch/arm/boards/kindle-mx6sl/board.c +++ b/arch/arm/boards/kindle-mx6sl/board.c @@ -194,15 +194,10 @@ late_initcall(kindle_mx6sl_late_init); static int kindle6_device_init(void) { - struct device *dev; - if (!is_mx6sl_kindle()) return 0; - /* Probe the eMMC to allow reading the board serial and revision */ - dev = get_device_by_name("mmc1"); - if (dev) - dev_set_param(dev, "probe", "1"); + of_device_ensure_probed_by_alias("mmc1"); defaultenv_append_directory(defaultenv_kindle_mx6sl); # diff --git a/arch/arm/dts/imx6sl-kindle-dp75sdi.dts b/arch/arm/dts/imx6sl-kindle-dp75sdi.dts index 9dc4a0c867..05fdd77a47 100644 --- a/arch/arm/dts/imx6sl-kindle-dp75sdi.dts +++ b/arch/arm/dts/imx6sl-kindle-dp75sdi.dts @@ -12,7 +12,7 @@ / { model = "kindle-dp75sdi"; compatible = "amazon,imx6sl-kindle-dp75sdi", "fsl,imx6sl"; - barebox,disable-deep-probe; + barebox,deep-probe; }; &iomuxc {
Alexander Kurz (1): ARM i.MX6SL: Add Kindle generation 6/7 support .../boards/imx/amazon-kindle-6-7.rst | 94 ++++++++ arch/arm/boards/Makefile | 1 + arch/arm/boards/kindle-mx6sl/Makefile | 5 + arch/arm/boards/kindle-mx6sl/board.c | 212 ++++++++++++++++++ .../defaultenv-kindle-mx6sl/boot/mmc_kernel | 11 + .../defaultenv-kindle-mx6sl/init/pmic | 32 +++ .../defaultenv-kindle-mx6sl/init/usbserial | 4 + .../nv/autoboot_timeout | 1 + .../defaultenv-kindle-mx6sl/nv/boot.default | 1 + .../nv/linux.bootargs.base | 1 + .../nv/linux.bootargs.console | 1 + .../nv/linux.bootargs.video | 1 + .../flash-header-kindle-mx6sl-256m.imxcfg | 126 +++++++++++ .../flash-header-kindle-mx6sl-512m.imxcfg | 126 +++++++++++ arch/arm/boards/kindle-mx6sl/lowlevel.c | 84 +++++++ arch/arm/configs/kindle-gen-6-7_defconfig | 89 ++++++++ arch/arm/dts/Makefile | 3 + arch/arm/dts/imx6sl-kindle-common.dtsi | 167 ++++++++++++++ arch/arm/dts/imx6sl-kindle-dp75sdi.dts | 51 +++++ arch/arm/dts/imx6sl-kindle-nm460gz.dts | 65 ++++++ arch/arm/dts/imx6sl-kindle-wp63gw.dts | 40 ++++ arch/arm/mach-imx/Kconfig | 17 ++ images/Makefile.imx | 21 ++ 23 files changed, 1153 insertions(+) create mode 100644 Documentation/boards/imx/amazon-kindle-6-7.rst create mode 100644 arch/arm/boards/kindle-mx6sl/Makefile create mode 100644 arch/arm/boards/kindle-mx6sl/board.c create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/boot/mmc_kernel create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/init/pmic create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/init/usbserial create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/nv/autoboot_timeout create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/nv/boot.default create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/nv/linux.bootargs.base create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/nv/linux.bootargs.console create mode 100644 arch/arm/boards/kindle-mx6sl/defaultenv-kindle-mx6sl/nv/linux.bootargs.video create mode 100644 arch/arm/boards/kindle-mx6sl/flash-header-kindle-mx6sl-256m.imxcfg create mode 100644 arch/arm/boards/kindle-mx6sl/flash-header-kindle-mx6sl-512m.imxcfg create mode 100644 arch/arm/boards/kindle-mx6sl/lowlevel.c create mode 100644 arch/arm/configs/kindle-gen-6-7_defconfig create mode 100644 arch/arm/dts/imx6sl-kindle-common.dtsi create mode 100644 arch/arm/dts/imx6sl-kindle-dp75sdi.dts create mode 100644 arch/arm/dts/imx6sl-kindle-nm460gz.dts create mode 100644 arch/arm/dts/imx6sl-kindle-wp63gw.dts -- 2.39.5
