[Lenny400] JZ4730 and other documentation (was Re: Coin cell on motherboard)

H. Nikolaus Schaller hns at goldelico.com
Sun Aug 13 18:42:58 CEST 2017


> Am 13.08.2017 um 13:29 schrieb Paul Boddie <paul at boddie.org.uk>:
> 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,

I haven't seen it either. But AFAIR there were some references to a JZ4730 User/Programming Manual.
The chip data sheet is still available, e.g.:


While trying to locate it I have found this:


which might also give some background on the hardware.

> 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 

I remember that I had some application note (?) for I2C to write a new i2c driver
long time ago. But I didn't find it or a copy any more. Seems to have gone in digital

> 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.

That seems to be quite common in SoC design. SoC designers take prebuilt
and tested VHDL blocks and stich them together. For newer SoC designs they
may still use the same I/O building blocks or replace them with newer ones.

> 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.

Yes, that is the main barrier. We can't easily search by content.

> 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
> _______________________________________________
> Lenny400 mailing list
> Lenny400 at goldelico.com
> http://lists.goldelico.com/mailman/listinfo.cgi/lenny400


More information about the Lenny400 mailing list