Rockbox.org home
Downloads
Release release
Dev builds dev builds
Extras extras
themes themes
Documentation
Manual manual
Wiki wiki
Device Status device status
Support
Forums forums
Mailing lists mailing lists
IRC IRC
Development
Bugs bugs
Patches patches
Dev Guide dev guide
Search



Donate

Rockbox Technical Forums


Login with username, password and session length
Home Help Search Staff List Login Register
News:

Thank You for your continued support and contributions!

+  Rockbox Technical Forums
|-+  Rockbox Development
| |-+  New Ports
| | |-+  Ingenic Jz4740/Jz4732 players
« previous next »
  • Print
Pages: 1 [2] 3 4 ... 13

Author Topic: Ingenic Jz4740/Jz4732 players  (Read 145433 times)

Offline Bagder

  • Member
  • *
  • Posts: 1452
    • Daniel's site
Re: Ingenic Jz4740/Jz4732 players
« Reply #15 on: July 10, 2008, 02:33:03 AM »
Quote
The mips bug is probably still there

Isn't this simply because the compiler has a preset define for 'mips' internally? Try with appending -undef to gcc or just -Umips

(Although I don't see any such listed here...)
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #16 on: July 10, 2008, 07:12:35 AM »
Quote from: Bagder on July 10, 2008, 02:33:03 AM
Isn't this simply because the compiler has a preset define for 'mips' internally? Try with appending -undef to gcc or just -Umips

(Although I don't see any such listed here...)
Thanks, I did a #undef mips in the files who complained and now it works :)
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #17 on: July 11, 2008, 09:51:43 AM »
I can confirm that the LCD color mode is 16-bit 5-6-5; because that's the only way the image extracted from the OF looks good with Image Search Editor.

On the other hand, this means there's still something wrong with either the LCD init or the transfer of data through DMA.
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #18 on: July 14, 2008, 11:29:43 AM »
I just committed support for the Onda VX747 to SVN as I got printf() working on the device!

Also basic touchscreen support and buttons are working.

Next stop: better LCD handling, working interrupts and NAND flash support ;)
Logged

Offline rosco_pc

  • Member
  • *
  • Posts: 76
Re: Ingenic Jz4740/Jz4732 players
« Reply #19 on: July 16, 2008, 04:56:00 AM »
Just got an Onda VX757, but can not get the cross compiler to compile correctly. Here is the error while building libssp:

Code: [Select]
../../../gcc-4.1.2/libssp/ssp.c: In function '__guard_setup':
../../../gcc-4.1.2/libssp/ssp.c:70: warning: implicit declaration of function 'open'
../../../gcc-4.1.2/libssp/ssp.c:70: error: 'O_RDONLY' undeclared (first use in this function)
../../../gcc-4.1.2/libssp/ssp.c:70: error: (Each undeclared identifier is reported only once
../../../gcc-4.1.2/libssp/ssp.c:70: error: for each function it appears in.)
../../../gcc-4.1.2/libssp/ssp.c:73: error: 'ssize_t' undeclared (first use in this function)
../../../gcc-4.1.2/libssp/ssp.c:73: error: expected ';' before 'size'
../../../gcc-4.1.2/libssp/ssp.c:75: warning: implicit declaration of function 'close'

I googled around a bit, but could not really find any solution. Any ideas?
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #20 on: July 16, 2008, 05:15:39 AM »
Quote from: rosco_pc on July 16, 2008, 04:56:00 AM
Just got an Onda VX757, but can not get the cross compiler to compile correctly. Here is the error while building libssp:

Code: [Select]
../../../gcc-4.1.2/libssp/ssp.c: In function '__guard_setup':
../../../gcc-4.1.2/libssp/ssp.c:70: warning: implicit declaration of function 'open'
../../../gcc-4.1.2/libssp/ssp.c:70: error: 'O_RDONLY' undeclared (first use in this function)
../../../gcc-4.1.2/libssp/ssp.c:70: error: (Each undeclared identifier is reported only once
../../../gcc-4.1.2/libssp/ssp.c:70: error: for each function it appears in.)
../../../gcc-4.1.2/libssp/ssp.c:73: error: 'ssize_t' undeclared (first use in this function)
../../../gcc-4.1.2/libssp/ssp.c:73: error: expected ';' before 'size'
../../../gcc-4.1.2/libssp/ssp.c:75: warning: implicit declaration of function 'close'

I googled around a bit, but could not really find any solution. Any ideas?

How did you compile this? (I suppose using rockboxdev.sh)
Try compiling with --disable-libssp; if that still doesn't work PM me and I'll give you a download link for the binaries Ingenic provides.
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #21 on: July 17, 2008, 06:49:14 AM »
I added a HOWTO on the OndaVX747 wiki page for running code from SDRAM, so people who are interested in this port can help out.
Logged

Offline 00christian00

  • Member
  • *
  • Posts: 20
Re: Ingenic Jz4740/Jz4732 players
« Reply #22 on: August 02, 2008, 08:16:02 PM »
Hi Maurus,
sorry for the late reply.
I spoke with Ingenic and they said for tech support we first have to deal with their chinese agent(chinachip) buying the dev board for around 1500 usd plus another 1500 usd refundable when we buy 50k chips.
But I don't think the board will be of any use.
Do you need some kind of info not specific to the onda player?If yes I could try ask them directly.
But it seem all you need is specific to that model.
Also vx777 is confirmed to be jz4732,they don't have any player with jz4740 yet.
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #23 on: August 02, 2008, 10:09:12 PM »
Quote from: 00christian00 on August 02, 2008, 08:16:02 PM
Hi Maurus,
sorry for the late reply.
I spoke with Ingenic and they said for tech support we first have to deal with their chinese agent(chinachip) buying the dev board for around 1500 usd plus another 1500 usd refundable when we buy 50k chips.
But I don't think the board will be of any use.
Do you need some kind of info not specific to the onda player?If yes I could try ask them directly.
But it seem all you need is specific to that model.
Also vx777 is confirmed to be jz4732,they don't have any player with jz4740 yet.
Hi Christian,

could they(Ingenic) provide any more information about their chips? Like datasheets, what the Jz4732 actually is, ....  anything :)

Because the source code does help a lot, but without a datasheet some of the key components will be harder to figure out (for example the audio codec has some undocumented constants feeded in the code)
Logged

Offline 00christian00

  • Member
  • *
  • Posts: 20
Re: Ingenic Jz4740/Jz4732 players
« Reply #24 on: August 04, 2008, 04:46:07 AM »
This is from Ingenic :
"Dear Christian,

Nice to receive your email. And I saw your products in the web, as you want to know the Jz4732 specification, you can find it as Jz4740 datasheet in our website. The difference between Jz4732 and Jz4740 is that we offer Jz4732 for overseas customers, and Jz4740 in Mainland of China. So if you want to know more about the Jz4732, please just see Jz4740 in ftp.ingenic.cn
"

So it's the same chip as jz4740.
Regarding the costant in the audio codec,where did you take them?In the audio driver for linux?
Can't you use the higher level function as they are?
I'll dig more info.
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #25 on: August 04, 2008, 05:58:50 AM »
Quote from: 00christian00 on August 04, 2008, 04:46:07 AM
This is from Ingenic :
"Dear Christian,

Nice to receive your email. And I saw your products in the web, as you want to know the Jz4732 specification, you can find it as Jz4740 datasheet in our website. The difference between Jz4732 and Jz4740 is that we offer Jz4732 for overseas customers, and Jz4740 in Mainland of China. So if you want to know more about the Jz4732, please just see Jz4740 in ftp.ingenic.cn
"

So it's the same chip as jz4740.
Regarding the costant in the audio codec,where did you take them?In the audio driver for linux?
Can't you use the higher level function as they are?
I'll dig more info.
Heh, well at least it's a reply :)

About the constants: these are something like this
Code: [Select]
REG_ICDC_CDCCR1 = 0x001b2302; sometimes they're surrounded with a bit of comment but most of the times not (this example is from the linux/sound/oss/jzcodec.c, but I'm sure there are some also in µCos II; can't find them atm though).

I can of course just copy-paste their code, but as it sometimes differs between µCos II/Linux (or even between µCos II versions) I'm not really certain what version to take.. But currently we don't have to worry about this as the port isn't at that stage yet :)

Another (more important) problem is the NAND flash: I tried getting some data out of it but can't seem to succeed; I think this is due too the timing not set correctly but as the registers are named like this - EMC_SMCR_TAW_BIT - I have to guess what's it meaning (EMC = External Memory Controller, SMCR = Static Memory Control Register, TAW = ?).

And as you can see for yourself, the "datasheet" they provide isn't really helpfull...

So could you ask them (politely?) for some more information? And tell them we don't need any secret documentation of them, just some extra info regarding the how the chip registers work and what their meaning is. Even if it's documented in Chinese it's OK (there are online translators..)

BTW in what language do you mail them? I tried mailing them in English and in Chinese but they didn't respond to any..

Thanks
Logged

Offline 00christian00

  • Member
  • *
  • Posts: 20
Re: Ingenic Jz4740/Jz4732 players
« Reply #26 on: August 04, 2008, 07:34:13 AM »
I wrote in english and they replied the day after,but of course they are more interested in supporting a company like us,since we already sell player with their chips :P

I had a quick look at the nand boot code.It seem the boot loader should detect autumatically the timings of the nand.I can try asking more specific functions like registers meanings,but you know chip manufacturer are always afraid of releasing too much info on their hardware.

If you didn't get the nand to works,how did you boot the initial rockbox logo like in the picture?
Did you embed the image in the code?
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #27 on: August 04, 2008, 07:36:28 AM »
Quote from: 00christian00 on August 04, 2008, 07:34:13 AM
I wrote in english and they replied the day after,but of course they are more interested in supporting a company like us,since we already sell player with their chips :P

I had a quick look at the nand boot code.It seem the boot loader should detect autumatically the timings of the nand.I can try asking more specific functions like registers meanings,but you know chip manufacturer are always afraid of releasing too much info on their hardware.

If you didn't get the nand to works,how did you boot the initial rockbox logo like in the picture?
Did you embed the image in the code?
No, everything currently works through USB and SDRAM.

There's a special USB recovery mode built in the chip, and this allows you to upload code; you only need to know how to trigger out (hold VOL DOWN on the VX747).

edit: yes, I embedded the image in the code
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #28 on: August 06, 2008, 05:03:26 PM »
I committed my NAND code in SVN which is almost fully based on the code Ingenic provides, so it _should_ work; but doesn't...

So perhaps with the help of some extra information (datasheet? ;)), this could be fixed..

Anyway, had any luck getting something more out of them? (@00christian00)
Logged

Offline mcuelenaere

  • Developer
  • Member
  • *
  • Posts: 392
Re: Ingenic Jz4740/Jz4732 players
« Reply #29 on: August 10, 2008, 05:52:05 PM »
Now interrupts are working too, except for the fact the player crashes at about 10-30 seconds later...

This started when I enabled interrupt handling and won't go away, I'm not sure what causes this; perhaps an exception is triggered (which isn't displayed because of ??).

Touchscreen handling is also better now: pen up and pen down are identified now.

The reason why there are cli() and sti() (clear/set interrupts) calls added in the bootloaders is because when an interrupt is enabled _before_ lcd_init()->lcd_init_device()->lcd_init_controller()->_display_init() is called; the DAP crashes there (why? dunno).
Logged

  • Print
Pages: 1 [2] 3 4 ... 13
« previous next »
+  Rockbox Technical Forums
|-+  Rockbox Development
| |-+  New Ports
| | |-+  Ingenic Jz4740/Jz4732 players
 

  • SMF 2.0.19 | SMF © 2021, Simple Machines
  • Rockbox Privacy Policy
  • XHTML
  • RSS
  • WAP2

Page created in 0.146 seconds with 22 queries.