Rafaël Carré
e0e24cbf0a
Merge tCardInfo struct (MMC) and tSDCardInfo struct (SD)
...
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-07-01 10:07:22 +00:00
Mark Arigo
df8f64d3a4
Philips SA9200: 1) reset all devices in system_init, 2) revert an earlier 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-06-19 03:41:52 +00:00
Mark Arigo
758bb3bc62
3 new ports: Samsung YH-820, YH-920, and YH-925. Mostly functional. Audio 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-25 21:10:45 +00:00
Bertrik Sikken
2dc2054319
Remove some unused declarations
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21010 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 12:32:26 +00:00
Boris Gjenero
73e1bad355
Fixes and improvements for FS#9890 - iPod 5G: LCD sleep, BCM shutdown and 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-04-12 14:54:12 +00:00
Mark Arigo
b642129be4
Philips SA9200 fixes: (1) boost in the bootloader like the e200 and c200, (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-03-14 02:47:14 +00:00
Andree Buschmann
34e1209284
Submit FS#9749 by Boris Gjenero for missing PP-targets. Do not reset IDE0 on startup.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20075 a1c6a512-1295-4272-9138-f99709370657
2009-02-21 09:43:21 +00:00
Michael Sevakis
6c399b8254
Use DMA for audio playback on PP502x (FS#9910 + some further mods). I can't 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-19 20:40:03 +00:00
Michael Sevakis
21f0c9a282
Make basic cache functions into calls, and get rid of 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-11 12:55:51 +00:00
Michael Sevakis
3cf148945e
Remove struct spinlock to cleanup some mess and simplify. It's only used in 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-02-03 12:16:45 +00:00
Michael Sevakis
da76a34694
Use bus reset detection for all ARC OTG devices. Remove conflict from 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-22 22:05:04 +00:00
Michael Sevakis
73f2d001fd
PortalPlayer: Implement irq_handler() directly in C code rather than 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-20 16:11:59 +00:00
Andree Buschmann
1c44a9f431
Submit FS#9749 by Boris Gjenero. Do not reset IDE0 on startup for iPod Video 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-18 12:35:03 +00:00
Michael Sevakis
4ed78f5c72
Clean up panicf and introduce system_exception_wait to do further target 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
2009-01-08 10:15:32 +00:00
Michael Giacomelli
70e9c7aed3
Commit FS#8624 by Linus Nielsen, Ryan Press, Craig Elliott, and Kenderes 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-25 01:46:16 +00:00
Mark Arigo
9bf93ba007
Working touchpad for the Philips HDD1630 using the Synaptics driver. Like 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-12-19 03:31:26 +00:00
Bertrik Sikken
4e15aead43
Move declaration of button_int and clickwheel_int to the proper header file 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-29 11:03:12 +00:00
Bertrik Sikken
604447c475
Moved microsd_int declaration from system-pp502x.c to ata-sd-target.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17855 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 19:36:21 +00:00
Daniel Stenberg
2acc0ac542
Updated our source code header to explicitly mention that we are GPL v2 or
...
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-28 18:10:04 +00:00
Michael Sevakis
191320cd0f
Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to 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-06-03 05:08:24 +00:00
Mark Arigo
b4275d4941
Philips GoGear SA9200 port. Working bootloader and normal builds, including 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-21 03:55:17 +00:00
Mark Arigo
3e743ec6c9
Preparing for the Philips SA9200 part 2. Since the SA9200 doesn't have a 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-05-13 02:50:31 +00:00
Barry Wardell
7fa6bc7750
Fix warning.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17173 a1c6a512-1295-4272-9138-f99709370657
2008-04-19 16:48:01 +00:00
Barry Wardell
1f36c4ba53
FS#8642: Improve boot time on Sansa bootloaders by boosting the CPU. This 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-04-19 16:30:17 +00:00
Michael Sevakis
75f2d441e9
Change the remaining set_interrupt_status usage to the more parsimonious disable/enable/restore.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16897 a1c6a512-1295-4272-9138-f99709370657
2008-03-31 06:00:23 +00:00
Michael Sevakis
f65cf301fb
Modification to scale_suspend_core to prevent a potential permanent freezing 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-21 17:20:57 +00:00
Andree Buschmann
178df1cfcf
Correct DEV_TIMING for CPUFREQ_DEFAULT. Was changed by fault in former power management commit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16716 a1c6a512-1295-4272-9138-f99709370657
2008-03-19 13:10:02 +00:00
Jens Arnold
8c6920e343
Revert accidental tree commit. Sorry for that.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16574 a1c6a512-1295-4272-9138-f99709370657
2008-03-08 23:50:55 +00:00
Jens Arnold
d1ed7c37b1
No need to have \n here. panicf() won't output it anyway.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16570 a1c6a512-1295-4272-9138-f99709370657
2008-03-08 23:34:43 +00:00
Barry Wardell
fdb5a4b0c2
FS#8272 - Erratic reboot behaviour on sansa e200. Makes reboot on USB connect work consistently.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16512 a1c6a512-1295-4272-9138-f99709370657
2008-03-04 13:52:07 +00:00
Mark Arigo
d829075a00
Driver for the Synaptics touchpad on the m:robe 100 based on the 3-wire 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-24 04:12:16 +00:00
Michael Giacomelli
054447f9e6
Commit FS#8379 by Andree Buschmann. Disables much of the remaining unneeded 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-10 05:39:20 +00:00
Mark Arigo
06daa03630
mrobe 100: (1) device reset in system_init is same as H10. (2) make power_off actually work.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16203 a1c6a512-1295-4272-9138-f99709370657
2008-02-03 00:04:02 +00:00
Daniel Stenberg
5d2757a43f
Enable reboot on USB-insert for e200, as it works when done c200-style
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15818 a1c6a512-1295-4272-9138-f99709370657
2007-11-26 23:13:35 +00:00
Björn Stenberg
b4e5123e5d
New USB stack
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15758 a1c6a512-1295-4272-9138-f99709370657
2007-11-22 20:51:00 +00:00
Paul Louden
9873d33bf5
Fix for Nano timing issues, should resolve crashes, data aborts, and
...
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-20 01:46:18 +00:00
Jens Arnold
a50a80e1a3
Mini 2nd Gen: Almost doubled LCD update speed when not boosted (68.5->129fps @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-08 06:52:48 +00:00
Jens Arnold
6fb4c53fb9
The GPIO interrupts are split into several port groups on all PP502x 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-11-04 13:22:17 +00:00
Barry Wardell
007563c93d
FS#8023: Use of AS3514 #defines instead of magic values.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15297 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 09:03:47 +00:00
Barry Wardell
1d1a17c0db
Improved H10 ADC driver. We now do things exactly as the OF does. This 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-16 10:48:16 +00:00
Michael Sevakis
a9b2fb5ee3
Finally full multicore support for PortalPlayer 502x targets with an eye 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-16 01:25:17 +00:00
Michael Sevakis
51967f4856
Remove a setting of a register during H10 reset that shouldn't have been 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-07 05:52:06 +00:00
Michael Sevakis
6077e5b7c8
Unify PCM interface just above the hardware driver level for all targets 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-06 22:27:27 +00:00
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
Jens Arnold
6dd3f449b3
I2S buffer level adjustment is not necessary on c200 as there is no memory 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-10-03 22:31:51 +00:00
Michael Sevakis
ef1c52fa43
Oops. Don't use outl with the defined register.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14913 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 11:14:03 +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
Björn Stenberg
edbf5d81f5
Fixed a warning
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14878 a1c6a512-1295-4272-9138-f99709370657
2007-09-28 09:00:04 +00:00