Commit graph

473 commits

Author SHA1 Message Date
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
Michael Sevakis
57d71e4267 Add some CACHEALIGN_* macros and a helper function to assist in aligning data and buffers on PortalPlayer processors to cache line boundaries. They're noops when PROC_NEED_CACHEALIGN isn't defined. Go safe and increase the value to 32 since I'm not sure yet if 16 is sufficient - changing that is a one-liner. Add helper to plugin API which will be needed shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15523 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 05:17:20 +00:00
Karl Kurbjun
5db6b51759 Get the user timer working properly consequentially fixing doom without a hack.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15510 a1c6a512-1295-4272-9138-f99709370657
2007-11-07 05:30:31 +00:00
Jens Arnold
55398e934c c200: Make microSD cards finally work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15493 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 07:21:08 +00:00
Jens Arnold
20a39f485a Get rid of some more inl/outl, and use the new macros for bitwise GPIO manipulation. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15492 a1c6a512-1295-4272-9138-f99709370657
2007-11-06 00:36:39 +00:00
Barry Wardell
03dd35db0e Get rid of some more inl/outl. 0x70000084 seems to be GPO32_ENABLE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15477 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 17:19:00 +00:00
Barry Wardell
4ef3e821cb Fix red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15476 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 16:12:13 +00:00
Barry Wardell
2d95fd524d Get rid of some more inl/outl and use the new GPO32 define instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15474 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 15:48:59 +00:00
Barry Wardell
91bacf363a Get rid of a couple of inl/outl since we have defines. Also use some other defines in place of magic values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15470 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 14:26:47 +00:00
Michael Sevakis
f29c4ccc6a e200/c200: Take advantage of mutex recursion for the tuner driver and dump the awkward *_nolock stuff.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15468 a1c6a512-1295-4272-9138-f99709370657
2007-11-05 07:01:32 +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
Jens Arnold
015f6286a8 Finally: HDD power control for all PP502x iPods (4th gen Grayscale, Color, Minis, Video). * Wait a short time after powering on the HDD on all disk based targets, as that seems like a good idea. Shorten the excessive wait on initial power on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15444 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 23:57:24 +00:00
Dave Chapman
21f0552947 TAB policing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15407 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 08:43:56 +00:00
Catalin Patulea
f57ea9acd7 m:robe 500i port: Add backlight support to the main build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15404 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 06:13:43 +00:00
Karl Kurbjun
38548c7118 Build some more plugins for M:Robe most work, doom builds and runs if you use a hack - need to fix the user timer so that it works properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15403 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 05:21:34 +00:00
Catalin Patulea
574b1009a6 m:robe 500i port: Add support for the backlight client in the SPI subsystem
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15402 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 05:07:52 +00:00
Jens Arnold
9daf658ef1 iPod Video LCD driver: Reintroduce the simple method of waiting for update completion for use in the bootloader, because bootloaders don't enable interrupts and hence the tick task won't work. Slower than the full driver, but still faster than the old one, because it first transfers the data, and then polls the BCM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15399 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 01:18:14 +00:00
Jens Arnold
c888a9bebe Bootloaders are single core... (aka fix red)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15398 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 00:24:20 +00:00
Jens Arnold
ef8a7eaf2a Major speedup of the iPod Video LCD driver. The internal update procedure of the BCM chip is now completely shadowed, handled by a tick task as necessary. Also fixes the occasional UI freezes due to stalled BCM updates by re-kicking it after a timeout.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15397 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 00:07:45 +00:00
Dave Chapman
a4d48d0c0d Button driver for Logik DAX, plus some changes to the debug info displayed in the bootloader build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15396 a1c6a512-1295-4272-9138-f99709370657
2007-11-01 23:38:57 +00:00
Jens Arnold
b77893e4d5 C200: Reworked the LCD driver a bit, and fixed a bug with single column updates (was only visible in mandelbrot).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15343 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 13:16:05 +00:00
Jens Arnold
b05066de12 iPod Video: Further optimised LCD data transfer (5..6% speedup, but increase in FPS measured with test_fps is less), making use of the fact that the low address bits aren't decoded by the BCM. Major cleanup of the driver, and introduced register names.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15341 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 12:09:46 +00:00
Dave Chapman
28f6ae49ec Initial work on a port to the Logik DAX 1GB MP3/DAB player. The bootloader build compiles and runs (but only displays some debugging info), and the LCD and ADC drivers are working. Two different bootloader builds are possible: 1) The default build is just a test application for uploading to the device via tcctool; 2) Adding -DTCCBOOT to EXTRA_DEFINES in the build directory Makefile will compile the bootloader so that it can be appended to the end of the original firmware and installed on the device, dual-booting. This commit also includes some work by Hein-Pieter van Braam on a port to the iAudio 7, but that doesn't build yet. A large part of these ports will be generic to all TCC77x devices - see the TelechipsInfo wiki page for some other devices with this CPU. NOTE: Compiling these builds requires an arm-elf-gcc with armv5 support - the current version of rockboxdev.sh compiles such a gcc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15339 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 11:08:10 +00:00
Michael Sevakis
c266204aec e200: shorten some delays so the backlight turn on is snappier. Values seem to have a safe margin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15337 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 00:39:01 +00:00
Karl Kurbjun
0a632680e9 Some small cleanups and code for testing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15312 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 05:17:15 +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
Jonathan Gordon
eed41ff985 mrobe changes:
stop it thinking the battery is always flat and shutting down
add keymap for time/date screen
pressing a list item will highlight it before accepting it (looks better than it just entering the item without the selection changing first)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15280 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 14:33:16 +00:00
Jonathan Gordon
dbff3731a5 enable the RTC on the mrobe.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15279 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 14:22:44 +00:00
Karl Kurbjun
5a9a2b7bc4 Unify the Gigabeat F/X and M:Robe MMU code while enabling it for the M:Robe
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15275 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 03:29:15 +00:00
Jonathan Gordon
4c06ad6e72 mr500 sort of working battery measurments. probably could be done better, but it works
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15271 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 15:28:40 +00:00
Jonathan Gordon
12d1ff912c touchpad driver for the mrobe. nothing in apps/ uses it yet.
Changes to button driver: HAVE_BUTTON_DATA targets pass the button data straight back in the button_read_device() call


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15262 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 07:01:59 +00:00
Jonathan Gordon
e49ab427f0 revert the previous one... = is ok and a touch faster
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15261 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 06:40:32 +00:00
Jonathan Gordon
344c41f644 fix the interupt clearing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15259 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 03:18:26 +00:00
Jens Arnold
3c1b9d9d70 Assembler optimised lcd_yuv_blit() for iPod Video (Fs #7951 by Andree Buschmann, adapted and separated into an .S file by me).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15257 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 00:37:50 +00:00
Karl Kurbjun
fdbc01c6e2 More M:Robe work including a fix to lcd-as-memframe for larger screens thanks to Michael Sevakis. Also fixes simulator builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15254 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 23:12:17 +00:00
Jens Arnold
c1051549b9 Implement YUV dithering for c200, and enable the option in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15246 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 13:46:26 +00:00
Jonathan Gordon
61f1ab27ff init spi and uart in the main build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15195 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 02:14:09 +00:00
Jonathan Gordon
d8667df357 slightly better touchpad driver. Still not brilliant, but the bootloader/debugger can follow a stylus with a cursor, so we can start work on getting apps/ working
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15187 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 12:15:56 +00:00
Jonathan Gordon
b431fe349f Make rockbox think we have a full battery untill this actually works, otherwise apps/ doesnt like it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15186 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 10:53:59 +00:00
Karl Kurbjun
fa1a38e7ce Some changes to the UART/button driver - reduce the number of interrupts - more work is needed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15180 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 05:14:10 +00:00
Karl Kurbjun
f6bc19158e Turns out you can boot the main build by copying apps/rockbox.bin to /rockbox.mrboot. Something is wrong with the rockbox bootloader, but at least now we can work with the main build. Added in a warning for the core_sleep function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15162 a1c6a512-1295-4272-9138-f99709370657
2007-10-17 05:19:20 +00:00
Thom Johansen
b5f779b2ef Parts of FS #7951 by Andree Buschmann. Faster YUV BLIT (means faster mpegplayer) for Ipods Nano and Video while we're waiting for the assembler ones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15147 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 19:47:15 +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
782aae4402 Finish the conversion to packed i2s for PP502x. Karl Kurbjun-approved for Mini-1G. Simplify the pcm format selection #ifdefs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15137 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 04:19:18 +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
Karl Kurbjun
b7a4e101cb M:Robe - Fix compilation and remove some warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15095 a1c6a512-1295-4272-9138-f99709370657
2007-10-13 14:53:34 +00:00
Jens Arnold
d160c10e37 H10 LCD driver size reductions: Un-inline a function for H10 20GB, and introduce lcd_write_reg() for H10 5/6GB.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15090 a1c6a512-1295-4272-9138-f99709370657
2007-10-12 17:09:33 +00:00
Jens Arnold
8aeed2d32e PP LCD drivers: * Optimised and cleaned up PP colour LCD drivers. 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
2007-10-12 00:28:57 +00:00
Will Robertson
95a3e14170 These functions haven't been implemented yet - remove their content to get Gigabeat S builds compiling again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15074 a1c6a512-1295-4272-9138-f99709370657
2007-10-11 08:25:24 +00:00
Thom Johansen
8f72192fa2 Increase step size of stereo width to 5% to avoid tediously long list in settings. Reduce max limit from 255% to 250% for cosmetic reasons, value of 255% was chosen because of (very) old restrictions in settings system anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15057 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 21:29:20 +00:00