summaryrefslogtreecommitdiff
path: root/firmware/export/pp5020.h (follow)
Commit message (Collapse)AuthorAge
* Bootloader USB mode for PP502x. Enable only on GoGear SA9200 for the time ↵Michael Sevakis2011-01-15
| | | | | | being. Add HAVE_BOOTLOADER_USB_MODE to config if BOOTLOADER is defined to enable it. Clean up some kernel stuff a little to support it. Mess up a bunch of other stuff (hopefully not too badly). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29053 a1c6a512-1295-4272-9138-f99709370657
* Move CACHEALIGN_BITS to cpu headersRafaël Carré2010-04-13
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25633 a1c6a512-1295-4272-9138-f99709370657
* Put TIMER_FREQ definition in CPU-specific config, and remove timer-target.hRafaël Carré2009-06-29
| | | | | | Note : SH has TIMER_FREQ defined to CPU_FREQ, so any code wanting it must include #config.h before #cpu.h git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21560 a1c6a512-1295-4272-9138-f99709370657
* PP502x: Improve accuracy of header file. It looks as though DMA channels ↵Michael Sevakis2009-02-23
| | | | | | share the same interrupt enable (tested that 0 and 2 do at least). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20089 a1c6a512-1295-4272-9138-f99709370657
* Use DMA for audio playback on PP502x (FS#9910 + some further mods). I can't ↵Michael Sevakis2009-02-19
| | | | | | say at this point about any change in battery life but it frees up a percent or two of CPU cycles as measured in the buffering screen. No change in recording transfers yet. Testing seemed to check out so put it out for general use and see what happens. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20052 a1c6a512-1295-4272-9138-f99709370657
* Use bus reset detection for all ARC OTG devices. Remove conflict from ↵Michael Sevakis2009-01-22
| | | | | | LV24020LP driver with some GPIO-by-number macros for PP502x. Start monitoring for USB stack once all core threads and queues are created otherwise queues will likely be registered after USB acks. Putting PP502x system_reboot in IRAM (unmapped, uncached) memory seems to help it work more consistently. Hopefully I got all the PP USB connect handlers in the right spot in irq_handler. If device seems unresponsive to cable, check there first. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19819 a1c6a512-1295-4272-9138-f99709370657
* USB detection changes. c200/e200: Consider USB to be powered when charger is ↵Michael Sevakis2009-01-19
| | | | | | plugged but detect USB connection by bus reset. When received, disconnect and restart the driver fully enabled. imx31: Fix hack used to make initial connect succeeded-- set PHY type before initial reset. General: Move some target code out of usb-drv-arc.c and implement it in respective usb sources and CPU headers so things stay clean. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19797 a1c6a512-1295-4272-9138-f99709370657
* Bring consistency to pcm implementation and samplerate handling. Less ↵Michael Sevakis2008-12-12
| | | | | | low-level duplication. A small test_sampr fix so it works on coldfire again. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19400 a1c6a512-1295-4272-9138-f99709370657
* Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg2008-06-28
| | | | | | | | | later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
* Oops. Lost sync on a few instances and 'HI' registers.Michael Sevakis2008-06-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17684 a1c6a512-1295-4272-9138-f99709370657
* Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to ↵Michael Sevakis2008-06-03
| | | | | | disable' register and hasn't anything to do with acknowledging interrupts-- that's handled at the module level. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17683 a1c6a512-1295-4272-9138-f99709370657
* move some data around to place qh_array at the start of iram. This saves up ↵Frank Gevaerts2008-04-20
| | | | | | to about 2k iram on PP git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17194 a1c6a512-1295-4272-9138-f99709370657
* Refine information and macros for clock skipping. Not functional changes.Jens Arnold2008-04-12
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17091 a1c6a512-1295-4272-9138-f99709370657
* Added PP5020 serial port registersLinus Nielsen Feltzing2008-02-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16358 a1c6a512-1295-4272-9138-f99709370657
* Commit FS#8379 by Andree Buschmann. Disables much of the remaining unneeded ↵Michael Giacomelli2008-02-10
| | | | | | hardware on PP50xx targets (Ipods, Sansa, H10s, etc) resulting in a large savings in power and consequent increase in battery life. Results vary from target to target and from codec to codec, but we now approach the OF runtime on several PP devices. For now, leave base CPU clock at 30MHz, although further savings is possible with some codecs if clock is reduced. Additionally, fix battery capacity on c200 and use my measurements to improve runtime estimation for Sandisk targets. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16259 a1c6a512-1295-4272-9138-f99709370657
* New USB stackBjörn Stenberg2007-11-22
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15758 a1c6a512-1295-4272-9138-f99709370657
* Mini 2nd Gen: Almost doubled LCD update speed when not boosted (68.5->129fps ↵Jens Arnold2007-11-08
| | | | | | @30MHz) by handling the serial LCD clock divider. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15524 a1c6a512-1295-4272-9138-f99709370657
* Get rid of some more inl/outl. 0x70000084 seems to be GPO32_ENABLE.Barry Wardell2007-11-05
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15477 a1c6a512-1295-4272-9138-f99709370657
* The GPIO interrupts are split into several port groups on all PP502x ↵Jens Arnold2007-11-04
| | | | | | versions, so move those definitions into pp5020.h, and add the missing group. Make microSD hotswap detection work on Sansa c200. Note that microSD access itself does not work yet. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15460 a1c6a512-1295-4272-9138-f99709370657
* * Add newfound GPO32 register to pp502x.h. * Introduce macros for the ↵Jens Arnold2007-11-03
| | | | | | PP502x's atomic GPIO bit manipulation feature. * Remove clock setup related registers from debug screen, and add DEV_EN2, DEV_EN3 (to be verified) and GPO32 instead. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15443 a1c6a512-1295-4272-9138-f99709370657
* PP502x: Get switch_thread back out of IRAM and devise a better core wakeup ↵Michael Sevakis2007-10-18
| | | | | | system that's not timing dependant. Hopefully something simpler will be found or devised eventually that meets all requirements. Rename mailbox-related registers. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15179 a1c6a512-1295-4272-9138-f99709370657
* Improved H10 ADC driver. We now do things exactly as the OF does. This ↵Barry Wardell2007-10-16
| | | | | | includes shifting the readings by 0x14 when PLL is enabled. Battery voltages and remote/scrollpad values adjusted accordingly. We also now wait for the ADC to indicate the conversion is complete before reading the data, so hopefully we will get more reliably steady readings. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15141 a1c6a512-1295-4272-9138-f99709370657
* Finally full multicore support for PortalPlayer 502x targets with an eye ↵Michael Sevakis2007-10-16
| | | | | | towards the possibility of other types. All SVN targets the low-lag code to speed up blocking operations. Most files are modified here simple due to a name change to actually support a real event object and a param change to create_thread. Add some use of new features but just sit on things for a bit and leave full integration for later. Work will continue on to address size on sensitive targets and simplify things if possible. Any PP target having problems with SWP can easily be changed to sw corelocks with one #define change in config.h though only PP5020 has shown an issue and seems to work without any difficulties. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15134 a1c6a512-1295-4272-9138-f99709370657
* PP LCD drivers: * Optimised and cleaned up PP colour LCD drivers. ↵Jens Arnold2007-10-12
| | | | | | Immeasurable speedup on iPod Color, huge speedup on small H10 (a factor of 3). Should be a bit faster on big H10 too. * Big H10 changed bitmap format, so needs reconfiguring + full rebuild. * Better register naming for the mono LCD bridge. Register names for the colour LCD bridge. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15082 a1c6a512-1295-4272-9138-f99709370657
* Finally get packed samples to work in a nice way on H10 in IIS mode. Add ↵Michael Sevakis2007-10-07
| | | | | | some more register defs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15026 a1c6a512-1295-4272-9138-f99709370657
* * Use proper definitions for the PP (mono) LCD bridge. * Clean up pp5002.h a ↵Jens Arnold2007-10-07
| | | | | | bit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15018 a1c6a512-1295-4272-9138-f99709370657
* Use halfword IIS FIFO mode for H10. Won't save interrupts but seems it ↵Michael Sevakis2007-10-07
| | | | | | should be the DMA compatible mode. Setup pcm-pp.c to ease evaluating setting up PortalPlayer targets for DMA audio and for building an inventory of proper I2S settings and transfer sizes for all. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15009 a1c6a512-1295-4272-9138-f99709370657
* Unify PCM interface just above the hardware driver level for all targets ↵Michael Sevakis2007-10-06
| | | | | | including the sims. Perform lockout of audio callback when changing states. Weird new playback or recording trouble? Check before and after this revision first though things seem quite sound. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15006 a1c6a512-1295-4272-9138-f99709370657
* Stabilize PP5020 targets - tested on H10 5/20GB and iPod Color. Use no ↵Michael Sevakis2007-10-05
| | | | | | 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
* PP502x: Make RAM physical addresses uncached. Cache the flash ROM on targets ↵Michael Sevakis2007-10-04
| | | | | | 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
* Add some defines for pp502x. No guarantee as to full accuracy yet but that's ↵Michael Sevakis2007-09-30
| | | | | | not really too important. Use them in the code. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14912 a1c6a512-1295-4272-9138-f99709370657
* Commit a subset of the dual core changes that have to do with cache ↵Michael Sevakis2007-09-28
| | | | | | 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
* Add some new findings to the PP header files. * Clean up ata-target.h for ↵Jens Arnold2007-08-01
| | | | | | PP. * check_registers() seems to work fine on PP5002. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14114 a1c6a512-1295-4272-9138-f99709370657
* PP502x: Add some important information about CPU/COP_CTL register to the ↵Michael Sevakis2007-07-31
| | | | | | 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
* Clean up PP502x CPU clock setup code and use the full 80MHz when boosted.Jens Arnold2007-07-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14004 a1c6a512-1295-4272-9138-f99709370657
* More PP502x clock setup rework. This should fix the freezes on PP5020 once ↵Jens Arnold2007-07-03
| | | | | | 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
* FS#7036: Power saving improvements for Sansa. Shutdown LCD controller when ↵Barry Wardell2007-04-23
| | | | | | 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
* Fix some very probable typo's.Barry Wardell2007-04-22
| | | | | | | | | 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
* Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - ↵Daniel Ankers2007-03-04
| | | | | | 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
* Some more replacing of inl/outl with register #define's (doesn't change ↵Barry Wardell2007-03-03
| | | | | | | | | 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
* Replace some inl/outl with register #define's instead. Also tidy up pp5020.h ↵Barry Wardell2007-03-03
| | | | | | so that it's in increasing address order. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12574 a1c6a512-1295-4272-9138-f99709370657
* Remap flash ROM to 0x20000000 on the ipods and H10s, and implement ↵Dave Chapman2007-02-23
| | | | | | 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
* No functional changes, just reorganising code:Barry Wardell2007-02-16
| | | | | | | | | | 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
* FS#6554. Move bootloader code into a common file. Only PortalPlayer devices ↵Barry Wardell2007-01-28
| | | | | | (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
* Clean up PP5020 I2C code (no functional changes):Barry Wardell2007-01-27
| | | | | | | | | 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
* Combine USB code for all PortalPlayer targets since they most likely all use ↵Barry Wardell2006-12-20
| | | | | | 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
* Detect charger connected on H10. No need to sleep(HZ) when powering off.Barry Wardell2006-09-20
| | | | | | | | 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
* Initial work for coprocessor support on iPods. FS#5755Daniel Ankers2006-08-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10437 a1c6a512-1295-4272-9138-f99709370657
* Patch FS#4841 from Ralf Herz, debug more io ports on the PP5020 based ipodsBrandon Low2006-03-18
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9088 a1c6a512-1295-4272-9138-f99709370657
* Some extra PP defines, and make some PP5002 defines consistens withThom Johansen2006-03-17
| | | | | | | PP5020. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9066 a1c6a512-1295-4272-9138-f99709370657