[Letux-kernel] JZ4730 kernel support

Paul Boddie paul at boddie.org.uk
Fri Oct 11 14:43:06 CEST 2019

On Friday 11. October 2019 13.55.29 H. Nikolaus Schaller wrote:
> Hi Paul,
> it is a while that you have provided a provisional JZ4730
> implementation for the kernel and since then I have tried
> to keep pace with upstream changes as good as possible.

Thanks for doing this, and I have to say sorry for not paying much attention 
to this work in recent months.

> Now we are at v5.4-rc2 and there have been more changes
> from upstream which are not exactly compatible. Mainly
> something in pinmux, framebuffer and there is a new JZ4760
> if I remember correctly.

If the JZ4760 appeared in the kernel support only now, I would imagine that it 
is because people keep making devices based on this old chip, and maybe the 
people who were interested in the Ben NanoNote, GCW Zero, and so on, have 
turned their attentions to this deluge of devices (mostly handheld consoles to 
run emulators).

> I have tried my best but in some cases I was only able
> to #ifdef FIXME some parts to get the remaining code compile.
> Unfortunately I still have not reworked one of my Letux400
> devices to provide a serial console port for debugging.
> So could you please take care of doing a review and
> provide a patch set (on top of the existing patch sets)
> to fix it like you think it should be right?

I will try and take a look. As you know, I was looking at the JZ4780 and CI20 
support, but I discovered that there was a lot of work needed to redo the 
support that had once been present in the 3.18 kernel.

> The relevant branches are:
> http://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux/j
> z4730
> http://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux/
> dt-mipsbook400
> http://git.goldelico.com/?p=letux-kernel.git;a=shortlog;h=refs/heads/letux/
> pm-mipsbook400
> Only the first one is core jz4730. The others are for
> the mipsbook and should still be ok.


> Then it makes me wonder if we have a chance to get
> these things upstream eventually. This would avoid the
> situation like we have that upstream changes something
> and we do not actively update our patch sets.
> With having these patches upstream those who do changes
> would have to take care of it...

That would be the idea, although I suspect that things would still break, 
anyway. To be honest, it appals me that people develop software like this in 
2019, but anyway.

> My proposal: if you take care of upstreaming the jz4730
> code I take care of the mipsbook things.
> Depends of course on how much time you can invest and
> if you are able to still run tests on real hardware.

I can certainly take a look, and I think I have a reasonable enough idea of 
what the core functionality should look like. However, testing remains a 
significant problem.

I had been intending to find creative ways of testing Linux kernels on the 
Minibook, but the journey towards that goal is rather long. Coincidentally, 
some of the things I have been doing with the CI20 might put me in a better 
position, even though the objectives in that regard were rather different.

Currently, I am looking at C library support for the L4 Runtime Environment 
and have been testing things on the CI20 within QEMU. In fact, I spend most of 
my time working on the CI20 these days, so I find myself rather invested in 
the platform, although I had to revert to the 3.18 kernel to be sure that 
things would work as intended.

I'll get back to you with some kind of progress report, hopefully sooner 
rather than later. Thanks for the work you've done to keep this going!


More information about the Letux-kernel mailing list