Gert van der Knokke | 30 Jun 20:21 2015
Picon
Picon

Re: Mipsbook-devel Digest, Vol 34, Issue 8

On 30-06-15 13:00, mipsbook-devel-request@... wrote:
> Send Mipsbook-devel mailing list submissions to
> 	mipsbook-devel@...
>
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/mipsbook-devel
> or, via email, send a message with subject or body 'help' to
> 	mipsbook-devel-request@...
>
> You can reach the person managing the list at
> 	mipsbook-devel-owner@...
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Mipsbook-devel digest..."
>
>
> Today's Topics:
>
>     1. Re: [Lenny400]   jz4740.dtsi (JZ4730 DT upstream) (Paul Boddie)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Mon, 29 Jun 2015 23:52:39 +0200
> From: Paul Boddie <paul@...>
> To: lenny400@...
> Cc: mipsbook-devel@...
> Subject: Re: [Mipsbook-devel] [Lenny400]   jz4740.dtsi (JZ4730 DT
> 	upstream)
(Continue reading)

Paul Boddie | 13 Jun 19:41 2015
Picon

Ancient documentation and experiences

I managed to waste some time today looking around for people's previous 
experiences with the netbook platform on which the Letux 400 is based, "waste" 
because it involved trawling the Small Linux Laptop forum for information: 
another reason why people should try and structure their discoveries, not just 
use forums for everything, and absolutely not just dump archives on random 
file-sharing sites (presumably with no corresponding sources, either).

Ultimately, I ended up updating the 3MX page on Wikipedia and fixing a lot of 
its unsourced commentary:

https://en.wikipedia.org/wiki/3MX

This happened because I read the following mailing list message:

https://www.mail-archive.com/mipsbook-devel-CQP9ExgZy9rrZ44/DZwexQ <at> public.gmane.org/msg00308.html

It appears that the author of that message was the developer of 3MX.

The corresponding Wikipedia page now provides a fair amount of information 
about that particular software distribution, but I was more interested in the 
things I discovered along the way. One of these was a proposed source for 
replacement batteries (at least for the rather similar Elonex netbook 
variant):

http://linuxlaptopforum.ark2webdesign.co.uk/index.php/topic,895.msg6682.html#msg6682

Unfortunately, I haven't been able to make any further progress on booting 
replacement payloads from SD card today. It still isn't clear if U-Boot is 
successfully executing my payload.

(Continue reading)

Paul Boddie | 9 Jun 01:52 2015
Picon

Reviewing the Ingenic board initialisation code

Hello,

As you might have noticed, I haven't been looking at the jz4730-related 
efforts in recent months, but I very recently got back into looking at the 
initialisation code for the jz4740 (or rather jz4720, as I have a Ben 
NanoNote), being inspired by the following collection of blog articles about 
getting code to run on the MIPS Creator CI20 board:

The CI20 bare-metal project
http://code.lardcave.net/2015/03/31/1/

Since the Ben NanoNote has been supported by a U-Boot variant (maybe only 
really available via OpenWrt), and since Linux kernel support is also present 
(although that doesn't help with things like PLL and SDRAM initialisation), I 
thought it might be informative to bring the Ben up without U-Boot using a 
minimal amount of code (as opposed to using the entirety of the continuously 
changing beast that is U-Boot).

So far, I've managed to make a USB bootable stage 1 initialising the PLL and 
SDRAM (as featured in that blog series) and to glue the framebuffer 
initialisation code from U-Boot (originally from Ingenic) to a stage 2 payload 
in order to show a nice pattern on the screen. Figuring out what the USB boot 
mechanism actually does, and what the limitations really are, is pretty 
awkward as the blog author found out.

I'm now intending to extend this work to cover the jz4730 and the Letux 400. 
It rather looks like the LCD support is mostly the same, and hopefully with 
some appropriate settings and some SoC-specific adjustments, I can repeat the 
achievement on the Letux. However, I'm using the USB boot mechanism on the 
Ben:
(Continue reading)

Paul Boddie | 21 Apr 23:02 2015
Picon

Re: [Lenny400] jz4740.dtsi (JZ4730 DT upstream)

On Tuesday 21. April 2015 22.40.59 Paul Burton wrote:
> On Mon, Apr 20, 2015 at 12:47:04PM +0200, Paul Boddie wrote:
> > 
> > It's great to see the custodian of the architecture focusing on getting
> > the Ingenic SoCs fully supported in the mainline kernel. This benefits
> > everyone!
> 
> Absolutely, and help with supporting more SoCs is definitely welcome :)

Well, I'm a novice in this respect, but I can certainly try and help out in 
various ways.

> >From a quick google it appears there are a lot of variants of JZ4730
> 
> netbook, which is pretty cool! Do you happen to know whether any of them
> are still available to buy anywhere?

Nikolaus is still selling jz4730-based netbooks as the Letux 400 with a 2.6-
based Linux distribution pre-installed. See...

http://shop.goldelico.com/wiki.php?page=Letux%20400

[...]

> You may be interested in the revised series I submitted earlier today to
> support the JZ4780, which is what's also present in that (often rebased)
> branch on github:
> 
>   http://www.linux-mips.org/archives/linux-mips/2015-04/msg00284.html

(Continue reading)

Paul Boddie | 20 Apr 12:47 2015
Picon

Re: [Lenny400] jz4740.dtsi (JZ4730 DT upstream)

On Monday 20. April 2015 10.52.13 Zubair Lutfullah Kakakhel wrote:
> 
> On 19/04/15 10:38, Dr. H. Nikolaus Schaller wrote:
> > 
> > The community behind the mailing list on CC: is interested on doing a
> > similar step for the jz4730 (even if it is old and out of production
> > there have been some nice 7 inch Mini-PCs/Subnotebooks around this SoC).
> > 
> > And we want to build upon your work to avoid that we start something
> > incompatible.
> 
> Thank-you for contacting us. Upstream work should definitely be
> collaborative.

It's great to see the custodian of the architecture focusing on getting the 
Ingenic SoCs fully supported in the mainline kernel. This benefits everyone!

> > So I wonder what the latest status/plans are for getting jz4740.dtsi (and
> > related rework) upstream?
> 
> See this for the latest work on jz4780 and jz4740.
> 
> https://github.com/paulburton/linux/tree/wip-ci20-v4.1
> 
> Our focus is on jz4780 and MIPS Creator CI20 support upstream.
> 
> We are working on jz4740 for maintaining compatibility.

I see that there's support for jz4770/jz4775, too. Is it also a priority to 
get this upstream?
(Continue reading)

Riccardo Mottola | 20 Apr 09:44 2015
Picon

GNUstep check

Hi,

just as an update. Still using old 2.4 kernel and old Debian with FPU emulation, I did a complete rebuild of GNUstep packages.

Good news: everything appears to (still) work. I tried most userland applications and, except the slugginess, MIPS seems to be in good shape.

If you guys sort out a newer kernel, the concept of a clean userland using a native build without FPU could be interesting. I wonder if Debain is still the way to go though, due to the gradual adoption of systemd. For now, luckily, you remove it and work it, as I did on my PPC.

Riccardo
<div><div dir="ltr">Hi,<div><br></div>
<div>just as an update. Still using old 2.4 kernel and old Debian with FPU emulation, I did a complete rebuild of GNUstep packages.</div>
<div><br></div>
<div>Good news: everything appears to (still) work. I tried most userland applications and, except the slugginess, MIPS seems to be in good shape.</div>
<div><br></div>
<div>If you guys sort out a newer kernel, the concept of a clean userland using a native build without FPU could be interesting. I wonder if Debain is still the way to go though, due to the gradual adoption of systemd. For now, luckily, you remove it and work it, as I did on my PPC.</div>
<div><br></div>
<div>Riccardo</div>
</div></div>
Dr. H. Nikolaus Schaller | 19 Apr 11:38 2015

jz4740.dtsi

Hi,
we have seen that you had submitted a for the jz4740 to make it device tree compatible, as the basis to make the
jz4780 work:

	http://patchwork.linux-mips.org/patch/9193/

Some of your other patches have appeared in linux-next and will likely come to 4.1-rc series in the next weeks.

The community behind the mailing list on CC: is interested on doing a similar step for the jz4730
(even if it is old and out of production there have been some nice 7 inch Mini-PCs/Subnotebooks around this SoC).

And we want to build upon your work to avoid that we start something incompatible.

So I wonder what the latest status/plans are for getting jz4740.dtsi (and related rework) upstream?

BR and thanks,
Nikolaus Schaller

Dr. H. Nikolaus Schaller | 7 Apr 13:32 2015

Kernel git

Hi,
as promised I have set up a kernel repo (well it did already exist so that it is just another branch):

http://git.goldelico.com/?p=gta04-kernel.git;a=shortlog;h=refs/heads/wip/letux400

I have rebased it on top of the gta04 variant of 4.0.0-rc7 (to simplify my work :), but I think 
it is not difficult to rebase it on top of linus/master.

So far we have 3 patches on top:
* Paul’s jz4730 work
* Daniel’s PM MCU driver
* I have copied in the jz4740.dtsi, made a jz4730.dtsi out of it and added a minipc.dts

So we get a still very useless DT binary :)

http://download.goldelico.com/letux-400/unstable/device-trees.tbz

BR,
Nikolaus

Dr. H. Nikolaus Schaller | 5 Apr 19:34 2015

jz47xx Device Tree

After doing some more research, I think the status of MIPS DT is even more advanced than I had thought:

1. 4.0-rc already supports a handful of DT based MIPS CPUs:
	https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/mips/boot/dts?id=refs/tags/v4.0-rc6

2. there are patches circulating on LKML to convert jz4740 to DT:
	https://lkml.org/lkml/2015/2/4/392

	unfortunately they did end up - as far as I can see - in a social issue (within imgtec?)
	https://lkml.org/lkml/2015/2/4/463

	There has been some more activity here:
	https://patchwork.kernel.org/project/LKML/list/?q=jz4780

	Some of these patches have already appeared in linux-next (so they will become part of 4.1-rc1 in ca. 4 weeks):
	https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/log/?id=refs%2Ftags%2Fnext-20150402&qt=grep&q=jz4740

	Driver for his activity is the JZ4780 CI20 board: http://www.elinux.org/CI20_upstream
	e.g. https://github.com/MIPS/CI20_linux/blob/ci20-v3.18/arch/mips/boot/dts/jz4740.dtsi

	The really good thing is that this is done more or less officially by Imgtec - so there is manpower behind.

Since we now know that the jz4730 also has some similarities as well, we should IMHO try to help to get the
jz4740 DT patches upstream. Instead of tweaking the non-DT jz4740 code and #include like Paul’s patch
does .
Which might then lead soon (3-6 months?) to merge conflicts with linus/master.

And just add our own jz4730.dtsi and jz4730-minipc.dts and some jz4730 specific drivers.

Seems to be easier and future-proof for me than starting to work on any non-DT code.

But we should definitively use Paul’s patch as the basis for understanding what we have to change from
jz4740 to jz4730.

What do you think?

BR,
Nikolaus

Dr. H. Nikolaus Schaller | 5 Apr 19:24 2015

jz47xx Device Tree

After doing some more research, I think the status of MIPS DT is even more advanced than I had thought:

1. 4.0-rc already supports a handful of DT based MIPS CPUs:
	https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/mips/boot/dts?id=refs/tags/v4.0-rc6

2. there are patches circulating on LKML to convert jz4740 to DT:
	https://lkml.org/lkml/2015/2/4/392

	unfortunately they did end up - as far as I can see - in a social issue (within imgtec?)
	https://lkml.org/lkml/2015/2/4/463

	There has been some more activity here:
	https://patchwork.kernel.org/project/LKML/list/?q=jz4780

	Some of these patches have already appeared in linux-next (so they will become part of 4.1-rc1 in ca. 4 weeks):
	https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/log/?id=refs%2Ftags%2Fnext-20150402&qt=grep&q=jz4740

	Driver for his activity is the JZ4780 CI20 board: http://www.elinux.org/CI20_upstream
	e.g. https://github.com/MIPS/CI20_linux/blob/ci20-v3.18/arch/mips/boot/dts/jz4740.dtsi

	The really good thing is that this is done more or less officially by Imgtec - so there is manpower behind.

Since we now know that the jz4730 also has some similarities as well, we should IMHO try to help to get the
jz4740 DT patches upstream. Instead of tweaking the non-DT jz4740 code and #include like Paul’s patch
does .
Which might then lead soon (3-6 months?) to merge conflicts with linus/master.

And just add our own jz4730.dtsi and jz4730-minipc.dts and some jz4730 specific drivers.

Seems to be easier and future-proof for me than starting to work on any non-DT code.

But we should definitively use Paul’s patch as the basis for understanding what we have to change from
jz4740 to jz4730.

What do you think?

BR,
Nikolaus

Dr. H. Nikolaus Schaller | 4 Apr 19:30 2015

Re: [Lenny400] Some tentative changes to the mainline kernel

Hi Paul,

Am 04.04.2015 um 15:04 schrieb Paul Boddie <paul@...>:

> On Saturday 4. April 2015 14.23.59 Dr. H. Nikolaus Schaller wrote:
>> 
>> No, they should be quite independent. The branch above is a torvalds/linux
>> plus approx. 140 differences to make it work on the GTA04.
>> 
>> And we regularily merge in linus/master so that we keep up to date.
>> 
>> Do you know which exact release (tag) you did base your work on?
> 
> No, I can only provide the changeset:
> 
> commit a39bdfb590f54d0f41d6a5b352b085322d007dcd
> Merge: a7fe850 ae6ee2f
> Author: Linus Torvalds <torvalds@...>
> Date:   Fri Mar 27 14:45:42 2015 -0700
> 
>    Merge git://www.linux-watchdog.org/linux-watchdog
> 
>> Then we can quite easily rebase to 4.0-rc6 and merge things together.
> 
> Given that the starting changeset was just after a merge from 4.0-rc6, that 
> shouldn’t be too difficult.

I have checked out the base commit and applied your patch and I am really impressed:

arch/mips/boot/uImage: u-boot legacy uImage, Linux-4.0.0-rc5+, Linux/MIPS, OS Kernel Image (gzip),
2753935 bytes, Sat Apr  4 19:22:25 2015, Load Address: 0x80010000, Entry Point: 0x803E98A0, Header CRC:
0xEE3F7379, Data CRC: 0xC81DF3D8

So we have a great starting point. At least it compiles :)

Kudos to Paul!

Next I will add Daniel’s patch and if you agree I will add your “Signed-off”.

I assume Linux will publish 4.0.0-rc7 on Monday/Tuesday. Then I will upgrade (merge)
and publish the results.

Maybe for simplicity I will merge the MIPS work with the GTA04 ARM work,
since they should not interfere and just having one branch for multiple machines
is the easiest. I will keep you updated where the tree finally is :)

BR,
Nikolaus


Gmane