Dingoonity.org

Dingux (Dingoo Linux) => Development => Topic started by: kswildside on March 31, 2010, 02:22:38 am

Title: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on March 31, 2010, 02:22:38 am
I'm not sure if any of this is helpful or been discussed before but here is what I could dig up

http://read.pudn.com/downloads111/sourcecode/embed/464311/ch7025_2410/Regmap.h__.htm

http://www.chrontel.com/pdf/7023-7024ad.pdf

https://linuxlink.timesys.com/git?repo=linux-2.6-mx.git&view=log&h=2.6.24-mx31pdk&ofs=50&showmsg=1
Title: Re: Chrontel CH7024 Information and drivers
Post by: SiENcE on March 31, 2010, 08:34:27 pm
Mh. Better would be some linux code how to integrate the tvout into the graphic drivers. I think without, it's to hard to develop a linux tv-out driver.

The one how did the nativ OS implementation maybe has access to informations or code?
Title: Re: Chrontel CH7024 Information and drivers
Post by: kswildside on March 31, 2010, 09:17:33 pm
I'm doing the best I can trying to get what research I can as DD China isn't going to give me much on design or how they interact with the driver nor any source code.

I can't blame them as if they release the source it could be copied in other devices the same reason they don't release the OS source code.

If they did other companies would copy and mass produce it... SO in esscences for them it's a double edged sword to help or not to help when it comes to Dingux.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: eule on March 31, 2010, 09:39:23 pm
You need to make clear to them that TV-Out in Dingux will boost their sales a lot (i think).  ;D

Here?s an earlier thread on the subject: http://boards.dingoonity.org/dingux-general/request-for-dingux-program-to-change-tv-out/ (http://boards.dingoonity.org/dingux-general/request-for-dingux-program-to-change-tv-out/)
There?s even an open source style hacking board with the same tv-out chip, and they have it working in Linux (http://www.armadeus.com/wiki/index.php?title=TV_Output), but there is a problem:
Joyrider already tried both the armadeus approach and the kernel drivers, but there is a problem with I2C not seeing the device.

Oh Dingoolord, make it happen!  :D
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on March 31, 2010, 10:17:57 pm
This might or might not be the gold pot but have have drivers and source Ingenics wrote on IC2 etc from their site here is the link this data would have to be updated as it is mostly back to 2008 but who knows...

http://www.ingenic.cn/eng/productServ/kfyd/Linux/pfCustomPage.aspx
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: the_gama on April 01, 2010, 08:39:09 pm
I'm a little confused about Ingenic's Linux port for the jz47xx, what is the difference between booboo's linux
port and Ingenic's one?  And has anyone tryied running Ingeninc's Linux port in the dingoo?

It seems Ingenic's port currently supports a lot of features.  And finally, could someone please explain what is the
difference between the TFT/STN LCD Framebuffer driver and the Smart LCD Framebuffer driver?
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 02, 2010, 02:28:10 am
I'm not sure on either and just got the information... I'm a wiz at searching and research but applying it in some cases such as this is a different thing all together. Just thought this might help with TV and other video related issues....
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 02, 2010, 06:32:21 am
A more up to date fixed page with newer version of drivers and zImage and RootFS and everything you could imagine to include development guidelines for the chip.

http://translate.google.com/translate?hl=en&sl=zh-CN&u=http://www.ingenic.cn/pfWebplus/productServ/kfyd/linux/pfFixedPage.aspx&ei=koC1S7mAApKosgO-ybWBAw&sa=X&oi=translate&ct=result&resnum=2&ved=0CA4Q7gEwAQ&prev=/search%3Fq%3DAfond%2BAD1000%2BT-DMB%2Bdemodulator%26hl%3Den%26sa%3DG
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 02, 2010, 06:50:09 pm
I can't download anything. If someone is able, please download all and zip and send a download link to me. Thanks!
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 02, 2010, 07:23:41 pm
I'm working it working it trying to get the files will post on filefront and megaupload when I get them

But in the mean time try this:

http://www.armadeus.com/wiki/index.php?title=TV_Output
 
Or This:

http://sourceforge.net/news/?group_id=122057

Also this Just got all specs for components in JZ4740
This is courtesy of CongoZombie made google skills ;)

http://www.amebasystems.com/downloads/hardware/datasheets/ben-nanonote/Ingenic-SOC-JZ4720/Jz4740-PM/
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 02, 2010, 11:48:21 pm
Yes. I already read this and have thier crontel control tool :).
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 05, 2010, 04:28:17 am
E-mailed Ingenics for access to their new Kernel and zImage files and source to there linux I posted above as we can't seem to access their FTP. Here is the message I wrote:

Dear Sir or Madame,

   We are working on a kernel for the Jz4740 processor called Dingux on the Dingoo-Digital A320.  We would love to have access to the latest version of your kernel and rootfs files so we can add these patches to our current version of the OS.

Every time we try to access your ftp we get a connection reset or denied access to the newest version of the files.

If you can?t give us access to the FTP could you please put them on File front or some file sharing location so we can download them.

This is two fold as some of the developers working on the Dingux are also working on the Ben Nanonote also. So any help you could provide would help a lot.

Thanks for your time and efforts and for building a wonderful processor.

Regards,

Justin B

PS: Below is a simplified Chinese translation of the same message I have written above? Here is the website we are trying to get the files from?.

http://www.ingenic.cn/pfWebplus/productServ/kfyd/linux/pfFixedPage.aspx


亲爱的主席先生或夫人,

我们正在努力为Jz4740处理器称为Dingux对Dingoo数字A320型内核。我们很愿意有机会为您的内核和rootfs最新版本的文件,因此我们可以添加到我们这些补丁的操作系统的最新版本。

每当我们试图访问您的FTP,我们得到一个连接重置或拒绝访问这些文件的最新版本。

如果你不能给我们访问FTP可以请你把文件前面或一些文件共享位置,以便我们可以下载它们。

这是两个关于一些开发工作的Dingux倍,也可在本Nanonote积极开展工作。所以,你可以提供任何帮助将有很大的帮助。

感谢您的时间和努力,为建设一个美好的处理器。

的问候,

贾斯汀巴里克
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 05, 2010, 09:15:25 am
Wait and drink tea :).
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: joyrider on April 05, 2010, 11:27:01 am
sigh there's no need for that there are (svn) mirror's on qihardware from the development tree's

http://projects.qi-hardware.com/
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 05, 2010, 01:52:00 pm
From what I could see of the mirror it's not got the latest version that was put out a couple days ago JoyRider I sent you a PM you never responded to it.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: warrkan on April 08, 2010, 03:10:38 pm
This is also what I found, may be it can help..

http://read.pudn.com/downloads80/sourcecode/embed/309930/ch7024b.c__.htm
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 11, 2010, 01:59:10 am
Here is a bunch more data even looks like linux commands to activate the 7024 but as I stated not a developer so can't say for sure:

http://linux.die.net/man/4/sis

http://read.pudn.com/downloads80/sourcecode/embed/309930/ch7024b.c__.htm

http://www.chrontel.com/pdf/7023-7024bs.pdf

http://www.freescale.com/files/32bit/doc/app_note/AN3406.pdf

http://www.chrontel.com.tw/pdf/an96.pdf

http://www.freescale.com/files/32bit/doc/ref_manual/evk2009_12_imx51_Linux_RM.pdf
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 11, 2010, 12:34:26 pm
I think someone has to go into this. I don't think that the different sources or links help us. The interface and lcd of the dingoo is different.

I compiled the kernel with i2c support and executed i2cdetect. That is what i found out so far.

Code: [Select]
/ # i2cdetect -l
i2c-0   i2c             jz_i2c-i2c.0                            I2C adapter

/ # i2cdetect jz_i2c-i2c.0
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0.
I will probe address range 0x03-0x77.
Continue? [Y/n]
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f
30: -- -- -- -- -- -- -- -- 38 39 3a 3b 3c 3d 3e 3f
40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
70: 70 71 72 73 74 75 76 77

/ # i2cdetect -F jz_i2c-i2c.0
Functionalities implemented by /dev/i2c-0:
I2C                              yes
SMBus Quick Command              yes
SMBus Send Byte                  yes
SMBus Receive Byte               yes
SMBus Write Byte                 yes
SMBus Read Byte                  yes
SMBus Write Word                 yes
SMBus Read Word                  yes
SMBus Process Call               yes
SMBus Block Write                yes
SMBus Block Read                 no
SMBus Block Process Call         no
SMBus PEC                        yes
I2C Block Write                  yes
I2C Block Read                   yes

I also compiled and executed "ch7024ctrl" of the ArmadeuS project. But this tool can initialize the i2c but can't find the ch7024 on the dingoo.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: darfgarf on April 11, 2010, 12:42:03 pm
I also compiled and executed "ch7024ctrl" of the ArmadeuS project. But this tool can initialize the i2c but can't find the ch7024 on the dingoo.

every i2c device has an address, some are changeable, other aren't, in order to acess a device you have to send the device address, then do other things depending on what you want to do.  could be it's trying the wrong adress, it might've been changed for the dingoo or whatever

(no i can't help seriously, bit busy doing i2c stuff at uni to find the time  ;D)
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 11, 2010, 01:06:45 pm
Yes i know. But whats the adress?

In document "7024ds.pdf" it says.

Device ID - 00h

Also in the "ch7024ctrl" source it's 00h.

So whats the ID on the Dingoo ;) ?
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 11, 2010, 04:01:06 pm
I will discuss with dingoo tonight see if they will give the device location
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: darfgarf on April 11, 2010, 05:38:10 pm
science, then it should be 0x00 (assuming 00h means it's a hex number), could be any number of other problems though, would be handy if you could hook a digital scope up to the 2 i2c pins from the chip...but good luck with that one  ;D
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 11, 2010, 07:06:46 pm
I dunno easiest way would be try the combonations of each possible device 00F etc and see which one activates the TV-Out could take a long while. But as I said I will contact DD China and see if they will tell me
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 11, 2010, 09:01:22 pm
This id don't activate the tvout ;-). There is a longer way to run..until tvout can be activated. We need the correct lcd timings and lots more.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 11, 2010, 09:15:41 pm
We got my son a dingoo for his 9th bday (easter) - turned out to be a HK  >:(. I can't really hack it because my wife would kill me. I ordered one from DD-usa for myself tho.

I am curious if anyone has put a logic analyzer on the I2C lines. If not, I will. I have a 100MHz analyzer. I would think that it would be fast enough???

This subject is a very high priority for me! While I work with electronics all the time, I don't know all that much about programming in linux. Although I do know C.

When I get it I will have to check to see if I can get to the I2C pads. I hope the chip is not a BGA package...
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 11, 2010, 11:25:20 pm
I keep hearing this that and the other no offense meant by it but I'm not a dev or modder so break it down for me what do we need to know steps.

1. How to Init Chrontel
2.blah
3.blah

with those questions I can possibly get answers....
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 11, 2010, 11:51:24 pm
You can ask them the steps their firmware takes to initialize the LCD and TVOut chips to enable TV out. If they would part with *small* bits of source code, that would help a lot. Specifically, the code that turns off the LCD and turns on the Chrontel chip. We need to know how both of them are configured for TVOut use.

And, if they give you anything other than the finger, I'll be very surprised (although happy)...
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 13, 2010, 10:00:30 am
I have been doing a bit of research (in advance of getting my hackable dingoo). I can pretty much bet the farm that the device address is *not* 0. From what I have read, the device ID should be 0xEC if you are writing to the chip and 0xED if you are reading from the chip.

See page 3 of : http://www.chrontel.com/pdf/an98.pdf

That lists the address for the 7023 but it may also work on the 7024. It doesn't make much difference... In a few days I will have my logic analyzer hooked up to the I2C bus and then we will know what the CPU sends/recvs. from the chip. And I was right in assuming that the bus speed is slow. It is 400khz max so my 100mhz analyzer is kinda overkill but that is okay.

The bad news is that I know nothing about the LCD screen. I do know that the CPU has 2 different LCD controllers in it. If these are the controllers that we need to manipulate, we should be able to do that. One is a Smart controller so I think these are, indeed, the ones we are talking about. I have several datasheets and appnotes to read but this is the kind of stuff I read all the time :)

Also, I would love to find a "real" version of the 7024's datasheet. I put in a request but I highly doubt it will go anywhere...

--edit
And, btw, there is no way DD is going to tell you anything about the firmware. The firmware is made by ChinaChip and unless dingoo owns them, they won't have access to the source. I would bet that is how it works but I could be wrong.
--

--edit 2
I got the real datasheet for the 7024 encoder! Also, the 0xEC/0xED above is stated as 0x76 (7bit address) in some of the literature. If you shift that left one, you get 0xEC/0xED with the R/W bit...
I will have to find a place to upload the datasheet tomorrow.
--
--
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 13, 2010, 11:46:36 am
Yes i also read this. But i need a device id to access the read and write instructions. And this is only one ID in the ch7024ctrl source. Not two.

I thin the sLCD driver is the kernel sources, just because Dingux would  not work without them :).
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: darfgarf on April 13, 2010, 12:13:20 pm
And this is only one ID in the ch7024ctrl source. Not two.

technically it is just one id, the id is a 7 bit binary number, and that's the real address of the device, in order to acess it you send an 8 bit number, the 7 bit id, then a read/write bit.  it probably only has one id in the source because you never need to read from the tv chip, it's quite rare that you actually need to read from an i2c device, as if you've initisalised it all properly (usually a matter of setting every register to the default values/similar), then you already have all the values...make sortof sense?
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 13, 2010, 08:04:15 pm
I have not looked at the source code you are referring to but it could be they use 0xEC (or something else) as a base and or in a 1 for read ops. I highly doubt that the chip is never read. I know it is read in the native firmware. Every I2C device I have ever used needed to be read for something - even if it is just status.

When it comes to compiling stuff for linux, more often than not I get very frustrated. I am used to the IDEs where you click a button and off it goes. Can someone point me to the source file you are talking about so I can look at it? If possible, just that c file since my internet sucks (satellite) - big downloads have to be done in the weee hours of the morning.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 14, 2010, 09:16:01 am
here
http://www.armadeus.com/wiki/index.php?title=TV_Output

here
http://www.armadeus.com/wiki/index.php?title=I2C

and the code
http://armadeus.svn.sourceforge.net/viewvc/armadeus/trunk/target/packages/ch7024ctrl/
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 14, 2010, 09:43:11 am
Thank you!!!
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: flatmush on April 15, 2010, 01:28:21 am
And finally, could someone please explain what is the difference between the TFT/STN LCD Framebuffer driver and the Smart LCD Framebuffer driver?

When you use an LCD you have to transmit the color data and control data continuously at a certain rate for the screen to show it properly, much like if you were talking to a vga device. The LCD driver has to constantly output the current frame to the LCD using the DMA to ensure the display operates correctly whether the display has been updated or not.

Smart LCD's are displays which contain a memory chip and circuitry to refresh themselves, for these devices the chipset only has to send new data when the screen needs to be updated not on every refresh cycle. The SLCD driver basically outputs each frame to the FIFO to update the contents of the display only when the display is actually updated.

The display on the dingoo is an SLCD (for some strange reason) but the TV-out is attatched to the LCD interface somehow.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: artemys on April 15, 2010, 10:18:37 pm
@SiENcE:
in ch7024ctl tool, we use 0x76 as I2C address for CH7024. I'm not sure your previous i2cdetect try is correct (too much answers of potential I2C chips).
Code: [Select]
#define CH7024_I2C_SLAVE_ADDR 0x76
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: SiENcE on April 15, 2010, 10:23:30 pm
Yes i used this
Code: [Select]
CH7024_I2C_SLAVE_ADDR 0x76 adress. But is the
Code: [Select]
#define DEVICE_ID_CMD       0x00  really 0 ?

This app can't detect the CH7024 chip.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 15, 2010, 10:26:59 pm
I think it was joyrider that tried it before. I am going to take my brand new dingoo apart and solder a few wires onto the tv chip and hook it up to my analyzer. That way I can see what my test app does (written for the native os). Someone else will have to transfer my code to linux because I don't know enough about it.

You are right, though - the address is 0x76.

--edit
Oops... I guess it was SiENcE
--
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 15, 2010, 10:33:18 pm
Here is the real datasheet (not the crappy ones you can dl from chrontels site):

http://www.ihanker.com/7024ds.pdf

Take a look through it and see if you missed something. I am sure you could do it faster than I could since you are used to the toolchain and sdk...

If you don't get anywhere, let me know and then I'll hook up my analyzer.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: Stephanie on April 15, 2010, 11:05:05 pm
I just read through that datasheet - according to that (page 23) the Device ID should be 0x45 I think?
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 15, 2010, 11:09:42 pm
Right. If you issue a read of address 0, it should return a 0x45. If that happens, your in business.

I use I2C all the time with PICs but I have never used anything other than a PIC (other than FPGAs/CPLDs).

--edit
If you look through this code, you will see how to work with I2C - though you probably already know how. I would think that there is an implementation in dingux (maybe not enabled though)
http://projects.qi-hardware.com/index.php/p/ingenic-linux-02os-linux-2-6-24-3/source/tree/802/trunk/arch/mips/jz4740/i2c.c
--
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: yefeng on April 17, 2010, 07:06:22 am
Latest source:
Bootloader(2010.03.02) , Linux Kernel(2010.03.04) , Root(2010.03.04), and Multimedia software source code(eg:mplayer,jpeg-lib)can be found at :
http://www.ingenic.cn/pfWebplus/productServ/kfyd/linux/pfFixedPage.aspx (http://www.ingenic.cn/pfWebplus/productServ/kfyd/linux/pfFixedPage.aspx)
 :)
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 17, 2010, 06:08:12 pm
Thanks Yefeng  for the info it's links are already posted ;)
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: yefeng on April 18, 2010, 04:34:29 am
 :) I'm very sorry,before I posted it I didn't notice that
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: mth on April 19, 2010, 07:22:22 pm
I configured the kernel to use the i2c-gpio driver, which is a software implementation of I2C. This uses the same pins as the jz_i2c driver, so don't try to enable both at the same time.

Now the Chrontel chip (0x76) shows up, in addition to 3 others (or 2 others if 0x10/0x11 is 1 chip):

/ # i2cdetect -l
i2c-0   i2c             i2c-gpio-1                              I2C adapter
/ # i2cdetect i2c-gpio-1
WARNING! This program can confuse your I2C bus, cause data loss and worse!
I will probe file /dev/i2c-0.
I will probe address range 0x03-0x77.
Continue? [Y/n]
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: 10 11 -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 --                         

The GPIO pins to be used for I2C have to be declared in a data structure by the board initialization code. See the end of this commit (http://github.com/mthuurne/opendingux-kernel/commit/5a4f5f6a0cb1aff388ecb84972422eead463652d) for details.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 19, 2010, 07:43:35 pm
Alright! Now when actually reading/writing to the part, the 0x76 will be shifted 1 bit left ((0x76 << 1) | RW). But you probably already know that  ;)

I opened my dingoo yesterday and I noticed a few other chips but I didn't actually look at them. I bet one of them has to do with audio and it is probably I2C controlled. But I didn't pay attention enough to notice what else would be on the bus - not that it matters very much for the TV Out, I would think.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: mth on April 20, 2010, 10:38:11 am
Actually I had no idea of how I2C worked before yesterday. Linux takes care of the low-level I/O, but it's still good to know what is going on for debugging and to be able to read data sheets.

I integrated the jz_i2c driver from OpenInkpot (http://openinkpot.org/); thanks to Lars-Peter for the tip. When running i2cdetect in its default mode, I get the same results as SiENcE. But when adding the "-r" option I see only 0x10, 0x60 and 0x76 listed as devices (not 0x11), which looks a lot more believable.

However, I only see 0xFF being read from the device at 0x76 when using i2cdump or i2cget. I even tried writing 0 to register 2 (register bank switch), but that didn't help.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 20, 2010, 01:37:00 pm
If you are reading only 0xFF's, that means the reads are not done correctly - the device is not responding - you are simply reading the logic 1's produced by the pullup resistors...

I will do a little bit of digging and get back to you.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 20, 2010, 08:49:04 pm
The alignment is screwed up but...

Code: [Select]
Index   Time   Hex   Bin   Dec   ASCII
0 0.0ns START
1 393.6s 0xec 0b00001100 236
2 442.8s ACK
3 837.6s 0x03 0b00000011 3
4 886.8s ACK
5 1.28ms 0x00 0b00000000 0
6 1.33ms ACK
7 1.41ms STOP
8 1.69ms START
9 2.09ms 0xec 0b00001100 236
10 2.14ms ACK
11 2.53ms 0x03 0b00000011 3
12 2.58ms ACK
13 2.97ms 0x03 0b00000011 3
14 3.02ms ACK
15 3.1ms STOP
16 3.38ms START
17 3.78ms 0xec 0b00001100 236
18 3.83ms ACK
19 4.22ms 0x00 0b00000000 0
20 4.27ms ACK
21 4.35ms START
22 4.75ms 0xed 0b00001101 237
23 4.8ms ACK
24 5.19ms 0x45 0b00000101 69 E
25 5.24ms NACK
26 5.32ms STOP
27 5.55ms START
28 5.95ms 0xec 0b00001100 236
29 6.0ms ACK
30 6.39ms 0x0b 0b00001011 11
31 6.44ms ACK
32 6.83ms 0x03 0b00000011 3
33 6.88ms ACK
34 6.96ms STOP
35 7.24ms START
36 7.64ms 0xec 0b00001100 236
37 7.69ms ACK
38 8.08ms 0x00 0b00000000 0
39 8.13ms ACK
40 8.21ms START
41 8.61ms 0xed 0b00001101 237
42 8.66ms ACK
43 9.05ms 0x45 0b00000101 69 E
44 9.1ms NACK
45 9.18ms STOP
46 9.41ms START
47 9.81ms 0xec 0b00001100 236
48 9.86ms ACK
49 10.25ms 0x04 0b00000100 4
50 10.3ms ACK
51 10.7ms 0x0c 0b00001100 12
52 10.75ms ACK
53 10.82ms STOP
54 11.11ms START
55 11.5ms 0xec 0b00001100 236
56 11.55ms ACK
57 11.94ms 0x0a 0b00001010 10
58 11.99ms ACK
59 12.39ms 0x13 0b00000011 19
60 12.44ms ACK
61 12.51ms STOP
62 12.8ms START
63 13.19ms 0xec 0b00001100 236
64 13.24ms ACK
65 13.64ms 0x0b 0b00001011 11
66 13.68ms ACK
67 14.08ms 0x03 0b00000011 3
68 14.13ms ACK
69 14.21ms STOP
70 14.49ms START
71 14.88ms 0xec 0b00001100 236
72 14.93ms ACK
73 15.33ms 0x0c 0b00001100 12
74 15.38ms ACK
75 15.77ms 0x00 0b00000000 0
76 15.82ms ACK
77 15.9ms STOP
78 16.18ms START
79 16.57ms 0xec 0b00001100 236
80 16.62ms ACK
81 17.02ms 0x0d 0b00001101 13
82 17.07ms ACK
83 17.46ms 0x03 0b00000011 3
84 17.51ms ACK
85 17.59ms STOP
86 17.87ms START
87 18.27ms 0xec 0b00001100 236
88 18.32ms ACK
89 18.71ms 0x0e 0b00001110 14
90 18.76ms ACK
91 19.15ms 0x00 0b00000000 0
92 19.2ms ACK
93 19.28ms STOP
94 19.56ms START
95 19.96ms 0xec 0b00001100 236
96 20.01ms ACK
97 20.4ms 0x0f 0b00001111 15
98 20.45ms ACK
99 20.85ms 0x00 0b00000000 0
100 20.9ms ACK
101 20.97ms STOP
102 21.26ms START
103 21.65ms 0xec 0b00001100 236
104 21.7ms ACK
105 22.09ms 0x11 0b00000001 17
106 22.14ms ACK
107 22.54ms 0x19 0b00001001 25
108 22.59ms ACK
109 22.66ms STOP
110 22.95ms START
111 23.34ms 0xec 0b00001100 236
112 23.39ms ACK
113 23.79ms 0x12 0b00000010 18
114 23.84ms ACK
115 24.23ms 0x40 0b00000000 64 @
116 24.28ms ACK
117 24.36ms STOP
118 24.64ms START
119 25.03ms 0xec 0b00001100 236
120 25.08ms ACK
121 25.48ms 0x13 0b00000011 19
122 25.53ms ACK
123 25.92ms 0x6c 0b00001100 108 l
124 25.97ms ACK
125 26.05ms STOP
126 26.33ms START
127 26.73ms 0xec 0b00001100 236
128 26.78ms ACK
129 27.17ms 0x17 0b00000111 23
130 27.22ms ACK
131 27.61ms 0x04 0b00000100 4
132 27.66ms ACK
133 27.74ms STOP
134 28.02ms START
135 28.42ms 0xec 0b00001100 236
136 28.47ms ACK
137 28.86ms 0x18 0b00001000 24
138 28.91ms ACK
139 29.31ms 0xf0 0b00000000 240
140 29.36ms ACK
141 29.43ms STOP
142 29.72ms START
143 30.11ms 0xec 0b00001100 236
144 30.16ms ACK
145 30.55ms 0x19 0b00001001 25
146 30.6ms ACK
147 31.0ms 0x12 0b00000010 18
148 31.05ms ACK
149 31.12ms STOP
150 31.41ms START
151 31.8ms 0xec 0b00001100 236
152 31.85ms ACK
153 32.25ms 0x1c 0b00001100 28
154 32.29ms ACK
155 32.69ms 0x80 0b00000000 128
156 32.74ms ACK
157 32.82ms STOP
158 33.1ms START
159 33.49ms 0xec 0b00001100 236
160 33.54ms ACK
161 33.94ms 0x28 0b00001000 40 (
162 33.99ms ACK
163 34.38ms 0x1d 0b00001101 29
164 34.43ms ACK
165 34.51ms STOP
166 34.79ms START
167 35.19ms 0xec 0b00001100 236
168 35.23ms ACK
169 35.63ms 0x29 0b00001001 41 )
170 35.68ms ACK
171 36.07ms 0x7c 0b00001100 124 |
172 36.12ms ACK
173 36.2ms STOP
174 36.48ms START
175 36.88ms 0xec 0b00001100 236
176 36.93ms ACK
177 37.32ms 0x2a 0b00001010 42 *
178 37.37ms ACK
179 37.77ms 0x00 0b00000000 0
180 37.81ms ACK
181 37.89ms STOP
182 38.17ms START
183 38.57ms 0xec 0b00001100 236
184 38.62ms ACK
185 39.01ms 0x2b 0b00001011 43 +
186 39.06ms ACK
187 39.46ms 0x20 0b00000000 32
188 39.51ms ACK
189 39.58ms STOP
190 39.87ms START
191 40.26ms 0xec 0b00001100 236
192 40.31ms ACK
193 40.7ms 0x2c 0b00001100 44 ,
194 40.75ms ACK
195 41.15ms 0xf5 0b00000101 245
196 41.2ms ACK
197 41.28ms STOP
198 41.56ms START
199 41.95ms 0xec 0b00001100 236
200 42.0ms ACK
201 42.4ms 0x2d 0b00001101 45 -
202 42.45ms ACK
203 42.84ms 0x80 0b00000000 128
204 42.89ms ACK
205 42.97ms STOP
206 43.25ms START
207 43.64ms 0xec 0b00001100 236
208 43.69ms ACK
209 44.09ms 0x2e 0b00001110 46 .
210 44.14ms ACK
211 44.53ms 0x38 0b00001000 56 8
212 44.58ms ACK
213 44.66ms STOP
214 44.94ms START
215 45.34ms 0xec 0b00001100 236
216 45.39ms ACK
217 45.78ms 0x30 0b00000000 48 0
218 45.83ms ACK
219 46.22ms 0x12 0b00000010 18
220 46.27ms ACK
221 46.35ms STOP
222 46.63ms START
223 47.03ms 0xec 0b00001100 236
224 47.08ms ACK
225 47.47ms 0x31 0b00000001 49 1
226 47.52ms ACK
227 47.92ms 0x13 0b00000011 19
228 47.97ms ACK
229 48.04ms STOP
230 48.33ms START
231 48.72ms 0xec 0b00001100 236
232 48.77ms ACK
233 49.16ms 0x0a 0b00001010 10
234 49.21ms ACK
235 49.61ms 0x00 0b00000000 0
236 49.66ms ACK
237 49.73ms STOP
238 50.02ms START
239 50.41ms 0xec 0b00001100 236
240 50.46ms ACK
241 50.86ms 0x63 0b00000011 99 c
242 50.91ms ACK
243 51.3ms 0xc2 0b00000010 194
244 51.35ms ACK
245 51.43ms STOP
246 51.71ms START
247 52.1ms 0xec 0b00001100 236
248 52.15ms ACK

It was exported as html but I can't figure out if I can put that in...

Also, there is some missing, I think. I have not even looked at the transfers yet. I will do that in a few and then work out how to get any missing data....

--edit
After looking at it I see there is some missing. I will try to cut the sample speed from 5 to 2MHz. That will give me more sample depth but it will cut down on resolution.
--
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: mth on April 21, 2010, 12:27:12 am
Thank you for your log; the reset sequence makes it work:

/ # i2cset -y i2c-gpio-1 0x76 0x03 0x00
/ # i2cset -y i2c-gpio-1 0x76 0x03 0x03
/ # i2cdump -y i2c-gpio-1 0x76
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 45 00 00 03 01 40 40 40 80 04 10 04 00 00 0c 00    [email protected]@@????..?.
10: 01 09 40 80 00 04 02 00 f0 fb 04 03 80 9c 05 a0    [email protected]?.??.????????
20: 00 80 00 80 04 00 00 00 03 8f 78 04 95 0c 36 12    .?.??...??x???6?
30: 09 14 00 00 01 19 f5 3f ff ff ff ff ff ff ff ff    ??..????........
40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
50: 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ff    ................
60: 55 55 34 c0 ff ff ff ff ff ff ff ff ff ff ff ff    UU4?............
70: 00 00 00 00 00 00 00 00 00 00 00 30 10 fe 00 ff    ...........0??..
80: 45 00 00 03 01 40 40 40 80 04 10 04 00 00 0c 00    [email protected]@@????..?.
90: 01 09 40 80 00 04 02 00 f0 fb 04 03 80 9c 05 a0    [email protected]?.??.????????
a0: 00 80 00 80 04 00 00 00 03 8f 78 04 95 0c 36 12    .?.??...??x???6?
b0: 09 14 00 00 01 19 f5 3f ff ff ff ff ff ff ff ff    ??..????........
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
d0: 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ff    ................
e0: 55 55 34 c0 ff ff ff ff ff ff ff ff ff ff ff ff    UU4?............
f0: 00 00 00 00 00 00 00 00 00 00 00 30 10 fe 00 ff    ...........0??..

Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 21, 2010, 12:31:43 am
This is what I have checked out so far. I am a bit under the weather so I am trying to take it easy.

Code: [Select]
R/W Addr Value Notes
-----------------------------------------------------------------------------------------
W 03 00 Put chip into reset
W 03 03 Release from reset
R 00 45 Unsure about this - Does a write to 00 and a read
W 0B 03 Setup up for a 12MHz clock
R 00 45 Another one like above (only two reads that I have sniffed so far)
W 04 0C Powers down the DACs
W 0A 13 CVBS format & NTSC_443
W 0B 03 12MHz again
W 0C 00 Input data format reg 1
W 0D 03 Input data format reg 2
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: kswildside on April 26, 2010, 06:52:41 pm
Any more progress or still under weather psycho? BTW if no one has said it I think we all appreciate your hard work on trying to figure this out for us...
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 26, 2010, 11:55:18 pm
I thought there were others working on it. Actually, I have to figure out why the dual boot loader won't work for me. I ran through the installation and when I press select and reset it, it just boots into the native OS.

Like I said, I can help but I don't know enough to work in linux. I could try to put together some tests in the native OS, but I am not sure it would do all that much good.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: difuno on April 27, 2010, 01:43:22 am
I thought there were others working on it. Actually, I have to figure out why the dual boot loader won't work for me. I ran through the installation and when I press select and reset it, it just boots into the native OS.

Like I said, I can help but I don't know enough to work in linux. I could try to put together some tests in the native OS, but I am not sure it would do all that much good.

First of all thank you for your efforts on TV out.

Have you already gone through the installtion proccess of Dingux? If so you will just need to press SELECT while the Dingux splash screen shows up when you power on / resets the A320.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 27, 2010, 02:52:40 am
I have ran the dual boot installer process but it seems as though it didn't work right. I used 32bit win7 so I think I will try it on an XP box.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: santino on April 27, 2010, 06:27:07 am
if it shows up the dinguxsplashscreen its your sdcard which isnt correct. Did you put the zimage first?
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: psycho on April 27, 2010, 12:53:26 pm
No - it just boots into the native OS. The dual-boot loader must not have been burned properly.
Title: Re: Chrontel CH7024 Information and drivers For TV-Out
Post by: bmg002 on April 28, 2010, 03:08:59 am
I am not sure how relevant this information is to the TV out, but is something I found out by accident.  When running dingux gmu (for listening to music via mp3's), I noticed that there was some odd background noise (if you hit play then pause there is a slight hiss in the background with occasional pops).  I thought this to be odd and had come to the conclusion that my power filter caps were probably starting to go (or were cheap).  BUT I accidentally plugged my headphones into the TV out and noticed the same thing.  I have not tested any theories on this, but I am wondering if the hissing/popping could be caused by the TV out functionality (ie if the tv out is getting a power signal sent to it just not processing the image properly)?
I am going to test this theory more soon (I have a few ideas on things).