[Letux-kernel] X1600 / LX16 support - here: adding MMC - MAJOR BREAKTHROUGH

H. Nikolaus Schaller hns at goldelico.com
Sun Feb 11 17:00:58 CET 2024

Hi all,

> Am 11.02.2024 um 10:56 schrieb H. Nikolaus Schaller <hns at goldelico.com>:
> So I think we can live with 5 MHz for the moment until we understand
> the real cause.

I have now cherry-picked and reformatted most patches into the Letux
feature branches so that they will become part of letux-6.8-rc4.

Some changes to your patches:

a) Attempt to enable MMC devices.

+       host->use_dma = false;

so that DMA is only disabled for the jz4730 (untested there!).

b) lx16: fix card detection on mmc1 and heartbeat led

-       if (0 && is_soc_or_above(jzpc, ID_X1000)) {
+       if (!(enabled_socs & (1 << ID_X1600)) && is_soc_or_above(jzpc, ID_X1000)) {

so that it is only effective for the X1600 (but not jz4780 where it did work

Remaining are only 2 patches on top of letux-current to get a bootable LX16:

c) Disabled UART nodes to see boot log details.
d) Set X1600-specific clock event flag.

I tried to revert c). Then the heartbeat blinks, but there is no console.
This may have a reason in the CGU.

And we must make d) specific for x1600 (check for .compatible or have some flag?)
before including it into letux/x1600 or it would harm jz4780 and others.

The result of this effort is tested on X1600 (positively) and CI20 (no negative
effects observed and BTW, the mmc speed is just 11 MB/sec!) and the sources are here:


So we now have a very good basis for incremental improvements. Please share here
on the mailing list if you have something.


PS: I have run the lx16-gpiotest and all GPIOs on the RasPi header are blinking.

More information about the Letux-kernel mailing list