From: Samuel O. <or...@fa...> - 2004-02-09 10:23:16
|
Hi Bernard, Thanks for the answer. So you basically disassembled the firmware and poke around it, right ? I'll go the same way, then... Another question: As far as I understand, the PP5002 is a dual ARM7 core chipset. By reading the current ipodlinux code, we just use one of this ARM7. I guess Apple firmware uses the second one as a dedicated audio decoding chip. If so, do you have any plans on trying to access both ARM7 too, and sticking a userland audio player to one of them ? Cheers, Samuel. Bernard Leach wrote: >Hi Samuel, > >the information on the PP5002 has been derived by reverse engineering the >Apple firmware (and much experiment!). > >Some parts of the firmware are quite helpful in the reverse eng process, e.g. >in the bootloader there are "command" functions with nice useage strings that >implement things like "power down LCD", or sound piezo. Other parts are not >so helpful and brute force is the only technique. > >I have requested the development docs from PortalPlayer and although they said >they would try and get them to me (without requiring a NDA) they never got >around to it. > >cheers, >bern. > >Samuel Ortiz <or...@fa...> said: > > > >>Hi guys, >> >>I got a 2.4.24-uc0 + latest ipodlinux cvs booting on my 3G ipod this >>weekend. This is an impressive work ! >>I was even more impressed when I started to look at the code. IMHO, >>writing this code without documentation nor JTAG interface is not a >>piece of cake... >>Since I now would like to contribute to this project, I need some kind >>of help. I am interested in adding some power management features to >>this kernel. Portalplayer claims that its chipset provides many power >>management hooks, but how can I get some informations about it, without >>having any useful PP5002 docs ? More generally, how did you manage to >>reverse engineer this machine ? As an example, how did you manage to >>understand that, in order to set the CPU speed to 75 Mhz, you'd have to >>do this: >> >> outl(0x02, 0xcf005008); >> outl(0x55, 0xcf00500c); >> outl(0x6000, 0xcf005010); >> outl(24, 0xcf005018); >> outl(75, 0xcf00501c); >> >>How did you know that you have to write to this specific ports ? Did you >>get all this information from Apple's firmware ? >> >>Thanks in advance for your time and answers ! >> >>Cheers, >>Samuel. >> >> >> >>------------------------------------------------------- >>The SF.Net email is sponsored by EclipseCon 2004 >>Premiere Conference on Open Tools Development and Integration >>See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. >>http://www.eclipsecon.org/osdn >>_______________________________________________ >>iPodlinux-devel mailing list >>iPo...@li... >>https://lists.sourceforge.net/lists/listinfo/ipodlinux-devel >> >> >> > > > > > > >------------------------------------------------------- >The SF.Net email is sponsored by EclipseCon 2004 >Premiere Conference on Open Tools Development and Integration >See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. >http://www.eclipsecon.org/osdn >_______________________________________________ >iPodlinux-devel mailing list >iPo...@li... >https://lists.sourceforge.net/lists/listinfo/ipodlinux-devel > > |