[Lenny400] JZ4730 and other documentation (was Re: Coin cell on motherboard)
Paul Boddie
paul at boddie.org.uk
Sun Aug 13 13:29:25 CEST 2017
On Sunday 13. August 2017 12.39.53 David Boddie wrote:
> On Saturday 12. August 2017, H. Nikolaus Schaller wrote:
>
> > PS: any progress on tracing down more JZ4730 documentation and user's
> > manuals? _______________________________________________
>
> Paul may have found some more information. I'll ask him.
I've never seen a JZ4730 programming manual, so I imagine that Ingenic must
have a reason why they never published it or shared it in some way. Meanwhile,
there are programming manuals available for their newer products, even
published on their FTP site [1], so I hope that they have realised the value
in doing this.
I've been looking at the MIPS Creator CI20 [2] for some experimentation
purposes, and the programming manual for the JZ4780 it uses is publicly
available [3,4]. Some aspects of it are not particularly coherent - currently
I'm struggling to understand how the I2C (SMB) functionality behaves, even
with the Linux driver code available - and I would say that it probably isn't
at the same level as the TI documentation that you're probably used to,
Nikolaus.
That said, seeing this other documentation does provide some additional
perspectives on the JZ4730. Initially, when you see the differing register
layouts in various Linux header files, it is tempting to think that maybe an
incomplete or inaccurate transcription of the "real" hardware description has
been done, and that the code somehow works or maybe isn't properly exercised
and actually doesn't work in all cases.
But taking the GPIO functionality as an example, this differs between the
fairly-well-documented JZ4740 and derivatives and the JZ4780 (and JZ4775,
which is also publicly documented and similar to the JZ4780 in some ways), and
so one can see the different approaches in providing similar functionality.
For instance, the register "hierarchy" for selecting GPIO, "function" or
"interrupt" features is different between the JZ4740 and JZ4780.
I did look again at "decoding" the JZ4730 stuff, but the ultimate limitation
is just having a sane way of trying programs out. I did get some advice about
this from someone who had successfully written low-level code on the JZ4730
(on a Trendtac version of the Minibook), but there may be some differences in
terms of deployed bootloaders, kernels and also even on what headers are
present on the board. This is getting difficult to track down now because
various Web sites are only available via archive.org.
Anyway, I hope this is informative.
Paul
[1] ftp://ftp.ingenic.com/SOC/
[2] http://www.elinux.org/CI20_Hardware
[3] ftp://ftp.ingenic.com/SOC/JZ4780/JZ4780_pm.pdf
[4] http://mipscreator.imgtec.com/CI20/hardware/soc/JZ4780_PM.pdf
More information about the Lenny400
mailing list