[PATCH] ARM i.MX6SL: Add Kindle generation 6/7 support

Alexander Kurz akurz at blala.de
Mon Nov 10 23:32:13 PST 2025


Hi Sascha,

On Mon, 10 Nov 2025, Sascha Hauer wrote:

> 
> Hi Alexander,
> 
> On Sun, Nov 09, 2025 at 06:03:37PM +0000, Alexander Kurz wrote:
> > Four Amazon Kindle 6th and 7th generation e-book readers were considered
...
> > diff --git a/Documentation/boards/imx/amazon-kindle-6-7.rst b/Documentation/boards/imx/amazon-kindle-6-7.rst
> 
> Thanks for the good documentation, very appreciated :)
Thanks!

> 
> > new file mode 100644
> > index 0000000000..c7a5ef9424
> > +ENTRY_FUNCTION(start_imx6sl_kindle6_dp75sdi, r0, r1, r2)
> > +{
> > +	void *fdt;
> > +
> > +	imx6_cpu_lowlevel_init();
> > +
> > +	arm_setup_stack(0x00920000);
> > +
> > +	if (IS_ENABLED(CONFIG_DEBUG_LL)) {
> > +		writel(0x4, 0x020e016c);
> > +		imx6_uart_setup_ll();
> > +	}
> > +
> > +	fdt = __dtb_imx6sl_kindle6_dp75sdi_start + get_runtime_offset();
> > +	barebox_arm_entry(0x80000000, SZ_256M, fdt);
> 
> Does imx6ul_barebox_entry() work here instead? In that case you could
> drop the memory nodes from the device trees.
Replacing barebox_arm_entry() with imx6ul_barebox_entry() seems to work
so far (have only tested it on one device), but will this really make the 
memory nodes from the device trees obsolete as well? Some devices have 256 
while others 512MB RAM, when the amount of memory is not hardcoded, is it 
auto-determined?

> 
> > +++ b/arch/arm/dts/imx6sl-kindle-nm460gz.dts
> > @@ -0,0 +1,69 @@
> > +// SPDX-License-Identifier: GPL-2.0-or-later
> > +/*
> > + * Copyright (C) 2025 Alexander Kurz <akurz at blala.de>
> > + */
> > +
> > +/dts-v1/;
> > +#include "imx6sl-kindle-common.dtsi"
> > +#include <dt-bindings/interrupt-controller/irq.h>
> > +#include <dt-bindings/gpio/gpio.h>
> > +#include <dt-bindings/input/input.h>
> > +
> > +/ {
> > +	model = "kindle-nm460gz";
> > +	compatible = "amazon,imx6sl-kindle-nm460gz", "fsl,imx6sl";
> > +	barebox,disable-deep-probe;
> 
> Is this intentional? What doesn't work with deep probe enabled?
With barebox,deep-probe mmc1 will not be available when kindle_rev_init()
is called at late_initcall(kindle_mx6sl_late_init).
This way, the required ATAGs will be missing.
Will deep-probe influence device_initcall(kindle6_device_init)?

> 
> Sascha
> 
Cheers, Alexander



More information about the barebox mailing list