Commit graph

28 commits

Author SHA1 Message Date
Michael Sevakis
18e87ff1c0 Stabilize PP5020 targets - tested on H10 5/20GB and iPod Color. Use no interrupts on COP but pulse it through the control interface. Don't mess with LCD clocking during clock changes. Give a reset register a name (DEV_OFF_MASK).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14998 a1c6a512-1295-4272-9138-f99709370657
2007-10-05 23:24:46 +00:00
Michael Sevakis
940e8990b5 PP502x: Make RAM physical addresses uncached. Cache the flash ROM on targets with one. Kill all the now unneeded cache flushing and i2s tweaking on e200 so clicking is no worry. Write the driver framebuffer at uncached addresses. Recording monitoring may be a little noisy in the left channel for the moment when not boosted and will be addressed. All seems to work as advertised including flash ROM dump.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14976 a1c6a512-1295-4272-9138-f99709370657
2007-10-04 04:53:01 +00:00
Michael Sevakis
e760ba5a04 Add some defines for pp502x. No guarantee as to full accuracy yet but that's not really too important. Use them in the code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14912 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 10:53:31 +00:00
Michael Sevakis
7914e90738 Commit a subset of the dual core changes that have to do with cache handling, stacks, firmware startup and thread startup. Tested on e200, H10-20GB, iPod Color and 5.5G. Thread function return implemented for all targets. Some changes to plugins to follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14879 a1c6a512-1295-4272-9138-f99709370657
2007-09-28 10:20:02 +00:00
Jens Arnold
174c7abdff Add some new findings to the PP header files. * Clean up ata-target.h for PP. * check_registers() seems to work fine on PP5002.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14114 a1c6a512-1295-4272-9138-f99709370657
2007-08-01 10:43:45 +00:00
Michael Sevakis
47bc31a174 PP502x: Add some important information about CPU/COP_CTL register to the header gleaned from a PP5022C. Maybe it's all wrong. :P
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14088 a1c6a512-1295-4272-9138-f99709370657
2007-07-31 06:07:59 +00:00
Jens Arnold
8d3ac97aff Clean up PP502x CPU clock setup code and use the full 80MHz when boosted.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14004 a1c6a512-1295-4272-9138-f99709370657
2007-07-26 15:07:16 +00:00
Jens Arnold
7b861eca95 More PP502x clock setup rework. This should fix the freezes on PP5020 once and for all. Enabled clock scaling for H10. * CPUFREQ_MAX changed to 78MHz * To be cleaned up soon.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13767 a1c6a512-1295-4272-9138-f99709370657
2007-07-03 00:42:42 +00:00
Barry Wardell
7027c6a0f8 FS#7036: Power saving improvements for Sansa. Shutdown LCD controller when backlight is off and shutdown ATA controller when the disk isn't being accessed. Frequency scaling is not enabled yet as it was apparently causing some problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13250 a1c6a512-1295-4272-9138-f99709370657
2007-04-23 23:26:23 +00:00
Barry Wardell
0a643b8d90 Fix some very probable typo's.
CPU_INT_STAT is at 0x60004000, not 0x64004000.
CPU_HI_INT_STAT is at 0x60004100, not 0x64004100.
Fix wrong IRQ CLR addresses being used by system_init().


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13238 a1c6a512-1295-4272-9138-f99709370657
2007-04-22 11:30:32 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Barry Wardell
169ebdbda7 Some more replacing of inl/outl with register #define's (doesn't change end-result binary). Add lots more #define's based on the ipodlinux wiki and some extrapolation.
Also add PortalPlayer SoC version to the HW info debug screen.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12575 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 23:37:17 +00:00
Barry Wardell
8b061252c4 Replace some inl/outl with register #define's instead. Also tidy up pp5020.h so that it's in increasing address order.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12574 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 17:25:20 +00:00
Dave Chapman
fda1498696 Remap flash ROM to 0x20000000 on the ipods and H10s, and implement dbg_save_roms() in the debug menu for those targets to dump the content to a file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12467 a1c6a512-1295-4272-9138-f99709370657
2007-02-23 23:22:03 +00:00
Barry Wardell
3a6d4791d7 No functional changes, just reorganising code:
1) Move ARC OTG USB (used in PP502x) driver code into it's own file, drivers/arcotg_udc.c. Hopefully in  the future we will be able to adapt more of the Linux driver and add it to this file.
2) Rename mx31.h to arcotg_udc.h to reflect the file the code came from. It's also a more accurate name for the USB controller.
3) Get rid of one more inl()/outl() in usb-pp.c and use the relevant #define instead.
4) Add dr_controller_stop(). Not used yet.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12340 a1c6a512-1295-4272-9138-f99709370657
2007-02-16 22:13:21 +00:00
Barry Wardell
84b509dc43 FS#6554. Move bootloader code into a common file. Only PortalPlayer devices (iPods, H10, Sansa) are affected for the moment. Someone with access to (and no fear of bricking) an X5, H100, H300 and Gigabeat should try to adapt those bootloaders to also use the code in common.c. The (non-working) patch in the tracker would be a good place to start with this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12136 a1c6a512-1295-4272-9138-f99709370657
2007-01-28 18:42:11 +00:00
Barry Wardell
5e765b2ea2 Clean up PP5020 I2C code (no functional changes):
Move into target tree.
Use #defines instead of inb/outb.
Whitespace cleanup.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12123 a1c6a512-1295-4272-9138-f99709370657
2007-01-27 14:22:24 +00:00
Barry Wardell
4b54302b07 Combine USB code for all PortalPlayer targets since they most likely all use the same USB hardware. Add register defines for the USB hardware addresses, based off the Freescale i.MX31 datasheet. Use usb_init() from the iPod code, but modified to use the new register defines rather than oul/inl on the hardware addresses.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11823 a1c6a512-1295-4272-9138-f99709370657
2006-12-20 15:28:32 +00:00
Barry Wardell
e63e62b2a1 Detect charger connected on H10. No need to sleep(HZ) when powering off.
More sensible USB support for H10: plugging in puts it into USB charging mode and leaves Rockbox usable, holding 'O' while pluggin in the USB cable will reboot the H10 (continuing to hold 'O' starts it up in UMS mode), holding any other button brings up the USB screen as previously.
Implement system_reboot() for all PP5020 devices.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11015 a1c6a512-1295-4272-9138-f99709370657
2006-09-20 23:21:59 +00:00
Daniel Ankers
cec7cdc3bb Initial work for coprocessor support on iPods. FS#5755
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10437 a1c6a512-1295-4272-9138-f99709370657
2006-08-03 16:29:42 +00:00
Brandon Low
d00d58896b Patch FS#4841 from Ralf Herz, debug more io ports on the PP5020 based ipods
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9088 a1c6a512-1295-4272-9138-f99709370657
2006-03-18 09:13:55 +00:00
Thom Johansen
f7b14efc7f Some extra PP defines, and make some PP5002 defines consistens with
PP5020.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9066 a1c6a512-1295-4272-9138-f99709370657
2006-03-17 00:06:11 +00:00
Thom Johansen
ed9a73557b Commit additional defines needed by last commit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8633 a1c6a512-1295-4272-9138-f99709370657
2006-02-08 21:32:19 +00:00
Dave Chapman
c0090ff13c Add some IIS addresses
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8458 a1c6a512-1295-4272-9138-f99709370657
2006-01-26 12:51:33 +00:00
Thom Johansen
22e6c02f8e Removed PP5020_ prefix from register defines and added/renamed some
defines.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8438 a1c6a512-1295-4272-9138-f99709370657
2006-01-24 22:31:57 +00:00
Dave Chapman
b82c441f29 iPod: Add USB detection. When inserting the USB cable, hold down MENU to charge via USB, otherwise Rockbox will reboot into the Disk Mode application stored in flash
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8303 a1c6a512-1295-4272-9138-f99709370657
2006-01-07 00:43:48 +00:00
Thom Johansen
8bf079ffc1 Button and click wheel driver for iPod 4g and Nano.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8256 a1c6a512-1295-4272-9138-f99709370657
2005-12-17 19:08:55 +00:00
Thom Johansen
40729e902b Added some symbolic names for control registers for PP5020 chipset.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8222 a1c6a512-1295-4272-9138-f99709370657
2005-12-11 22:21:10 +00:00