summaryrefslogtreecommitdiff
path: root/firmware/target/arm/system-pp502x.c
AgeCommit message (Collapse)Author
2009-07-26initial commit of remote support for m:robe 100 courtesy of lowlight; ↵Robert Kukla
simulator support including small fixes for the m:robe 500 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22053 a1c6a512-1295-4272-9138-f99709370657
2009-07-01Merge tCardInfo struct (MMC) and tSDCardInfo struct (SD)Rafaël Carré
Put specific members under #ifdef (CONFIG_STORAGE & STORAGE_xx) (2 members for SD and 1 for MMC) Fix a typo: tsac doesn't exist and must be read taac Move card_get_info functions declaration inside hotswap.h to remove mutual inclusion of ata_mmc.h and hotswap.h Move static const data structures from SD drivers into sd.h (sd_exponent and sd_mantissa) Fix sd_command prototypes in SD drivers (card registers are unsigned long) Fix speed calculation in Sansa AMS driver (PP SD driver needs to be checked) Move ata-sd-target.h to sd-pp-target.h to reflect the PP specifity. Now it only contains declaration of microsd_int() Remove unused ata-sd-target.h for injenic TODO: - check if CSD register bits are extracted correctly in PP driver - correctly define read_timeout and write_timeout unit for MMC & SD, and use timeouts in Sansa AMS driver git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21586 a1c6a512-1295-4272-9138-f99709370657
2009-06-19Philips SA9200: 1) reset all devices in system_init, 2) revert an earlier ↵Mark Arigo
change in the sd driver, 3) properly detect the charger, 4) add lcd register defines. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21347 a1c6a512-1295-4272-9138-f99709370657
2009-05-253 new ports: Samsung YH-820, YH-920, and YH-925. Mostly functional. Audio ↵Mark Arigo
working on 820 & 925 (untested on the 920). No battery readings. No recording. No plugins. Keymap needs work. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21083 a1c6a512-1295-4272-9138-f99709370657
2009-05-21Remove some unused declarationsBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21010 a1c6a512-1295-4272-9138-f99709370657
2009-04-12Fixes and improvements for FS#9890 - iPod 5G: LCD sleep, BCM shutdown and ↵Boris Gjenero
bootstrap * Ensure LCD is updated if lcd_update() is called while the LCD is initializing * Turn on BCM and LCD in lcd_init_device() if it is off * Speed up lcd_awake() * Shorten minimum length of time BCM must stay off and fix related code git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20695 a1c6a512-1295-4272-9138-f99709370657
2009-03-14Philips SA9200 fixes: (1) boost in the bootloader like the e200 and c200, ↵Mark Arigo
(2) use the right GPIOs and inits in the SD driver, and (3) add charger detection. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20323 a1c6a512-1295-4272-9138-f99709370657
2009-02-21Submit FS#9749 by Boris Gjenero for missing PP-targets. Do not reset IDE0 on ↵Andree Buschmann
startup. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20075 a1c6a512-1295-4272-9138-f99709370657
2009-02-19Use DMA for audio playback on PP502x (FS#9910 + some further mods). I can't ↵Michael Sevakis
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
2009-02-11Make basic cache functions into calls, and get rid of ↵Michael Sevakis
CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2009-02-03Remove struct spinlock to cleanup some mess and simplify. It's only used in ↵Michael Sevakis
boosting for multiprocesors and a pure two-corelock heirarchy will do just fine. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19910 a1c6a512-1295-4272-9138-f99709370657
2009-01-22Use bus reset detection for all ARC OTG devices. Remove conflict from ↵Michael Sevakis
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
2009-01-20PortalPlayer: Implement irq_handler() directly in C code rather than ↵Michael Sevakis
dispatching to irq() from crt0-pp.S. Remove unneeded STUB macros. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19801 a1c6a512-1295-4272-9138-f99709370657
2009-01-18Submit FS#9749 by Boris Gjenero. Do not reset IDE0 on startup for iPod Video ↵Andree Buschmann
and iPod 4G. Could also be done for H10 and iPod Color, if tested with positive result. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19789 a1c6a512-1295-4272-9138-f99709370657
2009-01-08Clean up panicf and introduce system_exception_wait to do further target ↵Michael Sevakis
tasks and wait for a button when an unrecoverable error has occurred (panic, UIE, etc.). Returning from that function should reboot or don't return from it. Move UIE and __div0 for ARM to its own file. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19716 a1c6a512-1295-4272-9138-f99709370657
2008-12-25Commit FS#8624 by Linus Nielsen, Ryan Press, Craig Elliott, and Kenderes ↵Michael Giacomelli
Tamas. Adds preliminary support for numerous accessories that use the ipod serial port on the dock connector. See IpodAccessories for a list of tested devices. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19585 a1c6a512-1295-4272-9138-f99709370657
2008-12-19Working touchpad for the Philips HDD1630 using the Synaptics driver. Like ↵Mark Arigo
the m:robe 100, the strip is divided into up, select, and down button regions. You can't swipe like in the OF. The keymap still needs some work. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19480 a1c6a512-1295-4272-9138-f99709370657
2008-06-29Move declaration of button_int and clickwheel_int to the proper header file ↵Bertrik Sikken
instead of declaring it locally in the .c file git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17874 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Moved microsd_int declaration from system-pp502x.c to ata-sd-target.hBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17855 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg
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
2008-06-03Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to ↵Michael Sevakis
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
2008-05-21Philips GoGear SA9200 port. Working bootloader and normal builds, including ↵Mark Arigo
sound. No touchpad now, buttons limited to using vol+/vol-/power for up/down/select. Rockbox USB is enabled since the OF is MTP only...read the warnings on the PortalPlayerUsb wiki page. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17591 a1c6a512-1295-4272-9138-f99709370657
2008-05-13Preparing for the Philips SA9200 part 2. Since the SA9200 doesn't have a ↵Mark Arigo
microsd card (no hotswap), use HAVE_ATA_SD for the Sansa flash driver so we don't rely on HAVE_HOTSWAP in some places. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17488 a1c6a512-1295-4272-9138-f99709370657
2008-04-19Fix warning.Barry Wardell
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17173 a1c6a512-1295-4272-9138-f99709370657
2008-04-19FS#8642: Improve boot time on Sansa bootloaders by boosting the CPU. This ↵Barry Wardell
only has any noticable effect if the OF bootloader is fully replaced with the RB BL. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17172 a1c6a512-1295-4272-9138-f99709370657
2008-03-31Change the remaining set_interrupt_status usage to the more parsimonious ↵Michael Sevakis
disable/enable/restore. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16897 a1c6a512-1295-4272-9138-f99709370657
2008-03-21Modification to scale_suspend_core to prevent a potential permanent freezing ↵Michael Sevakis
of the other core. Just unfreeze it unconditionally after freezing it since it really makes no difference to do so right now. Don't bother with freezing/unfreezing if compiling as single. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16731 a1c6a512-1295-4272-9138-f99709370657
2008-03-19Correct DEV_TIMING for CPUFREQ_DEFAULT. Was changed by fault in former power ↵Andree Buschmann
management commit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16716 a1c6a512-1295-4272-9138-f99709370657
2008-03-08Revert accidental tree commit. Sorry for that.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16574 a1c6a512-1295-4272-9138-f99709370657
2008-03-08No need to have \n here. panicf() won't output it anyway.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16570 a1c6a512-1295-4272-9138-f99709370657
2008-03-04FS#8272 - Erratic reboot behaviour on sansa e200. Makes reboot on USB ↵Barry Wardell
connect work consistently. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16512 a1c6a512-1295-4272-9138-f99709370657
2008-02-24Driver for the Synaptics touchpad on the m:robe 100 based on the 3-wire ↵Mark Arigo
interface spec. Needs some tweaking as it's too sensitive with the default hardware settings. For now, the vertical strip is divided into up/select/down buttons. Also, redo the keymap (using the Gigabeat as a starting point), but it still needs a good bit of work. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16400 a1c6a512-1295-4272-9138-f99709370657
2008-02-10Commit FS#8379 by Andree Buschmann. Disables much of the remaining unneeded ↵Michael Giacomelli
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
2008-02-03mrobe 100: (1) device reset in system_init is same as H10. (2) make ↵Mark Arigo
power_off actually work. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16203 a1c6a512-1295-4272-9138-f99709370657
2007-11-26Enable reboot on USB-insert for e200, as it works when done c200-styleDaniel Stenberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15818 a1c6a512-1295-4272-9138-f99709370657
2007-11-22New USB stackBjörn Stenberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15758 a1c6a512-1295-4272-9138-f99709370657
2007-11-20Fix for Nano timing issues, should resolve crashes, data aborts, and Paul Louden
general glitchiness in playback. Based on the patch in FS#7510 by Jordan Anderson. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15705 a1c6a512-1295-4272-9138-f99709370657
2007-11-08Mini 2nd Gen: Almost doubled LCD update speed when not boosted (68.5->129fps ↵Jens Arnold
@30MHz) by handling the serial LCD clock divider. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15524 a1c6a512-1295-4272-9138-f99709370657
2007-11-04The GPIO interrupts are split into several port groups on all PP502x ↵Jens Arnold
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
2007-10-25FS#8023: Use of AS3514 #defines instead of magic values.Barry Wardell
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15297 a1c6a512-1295-4272-9138-f99709370657
2007-10-16Improved H10 ADC driver. We now do things exactly as the OF does. This ↵Barry Wardell
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
2007-10-16Finally full multicore support for PortalPlayer 502x targets with an eye ↵Michael Sevakis
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
2007-10-07Remove a setting of a register during H10 reset that shouldn't have been ↵Michael Sevakis
included in my previous commit. Not evaluated properly. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15007 a1c6a512-1295-4272-9138-f99709370657
2007-10-06Unify PCM interface just above the hardware driver level for all targets ↵Michael Sevakis
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
2007-10-05Stabilize PP5020 targets - tested on H10 5/20GB and iPod Color. Use no ↵Michael Sevakis
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-04PP502x: Make RAM physical addresses uncached. Cache the flash ROM on targets ↵Michael Sevakis
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-03I2S buffer level adjustment is not necessary on c200 as there is no memory ↵Jens Arnold
mapped framebuffer that requires constant cache flushing like on e200. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14974 a1c6a512-1295-4272-9138-f99709370657
2007-09-30Oops. Don't use outl with the defined register.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14913 a1c6a512-1295-4272-9138-f99709370657
2007-09-30Add some defines for pp502x. No guarantee as to full accuracy yet but that's ↵Michael Sevakis
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-28Commit a subset of the dual core changes that have to do with cache ↵Michael Sevakis
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