Commit graph

46 commits

Author SHA1 Message Date
Dave Chapman
4fb825eed9 Make the Gigabeat-S bootloader dual-boot. The hold switch is used to choose what to boot - because it is a simple GPIO test.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15828 a1c6a512-1295-4272-9138-f99709370657
2007-11-27 01:25:11 +00:00
Karl Kurbjun
be1283dbac Fix M:Robe define
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15587 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 21:07:17 +00:00
Karl Kurbjun
69b678e154 Fix bootloader build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15586 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 21:06:34 +00:00
Nicolas Pennequin
5cfd27a9cd Revert Karl's r15581, r15582 and r15583 because they caused serious problems on the Gigabeat (can't load plugins or codecs).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15585 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 20:50:44 +00:00
Karl Kurbjun
1b3dac9042 Setup the gigabeat so that iram is faked in a different spot since the normal iram location does not seem to be working. This lays the groundwork to get rolo running.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15581 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 19:13:09 +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
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
Karl Kurbjun
eb202355a7 Fix zeroing out some variable space
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14933 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 22:21:51 +00:00
Karl Kurbjun
3f9a9a1a01 Fix the bootloader, and give the M:Robe it's own scramble
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14922 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 17:12:20 +00:00
Jonathan Gordon
80f1688423 I got bullied in IRC by linuxstb and markun...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14909 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 08:57:49 +00:00
Karl Kurbjun
4a42723c33 Seperate M:Robe crt0.S, fix the vector tables for the bootloader, and show touchscreen values on single line.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14814 a1c6a512-1295-4272-9138-f99709370657
2007-09-22 06:04:14 +00:00
Will Robertson
590501cfe4 Merge the Gigabeat S branch back into trunk. Fingers crossed nothing breaks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14805 a1c6a512-1295-4272-9138-f99709370657
2007-09-21 15:51:53 +00:00
Karl Kurbjun
7b97fe21c0 Beginning of an M:Robe 500i port. Currently only in the bootloader stage. Needs another piece of code to start the boot process - will be in the wiki.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14763 a1c6a512-1295-4272-9138-f99709370657
2007-09-20 04:46:41 +00:00
Jonathan Gordon
9db22efd1f Firmware "hacker" code for the e200r install so the full bootloader rom doesnt need to be written.
Requires a custom version of e200tool which isnt available yet.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14654 a1c6a512-1295-4272-9138-f99709370657
2007-09-09 11:20:20 +00:00
Jens Arnold
3deb27053a Fix red bootloader builds. * Fix non-working PP5022 bootloaders. Also define correct IRAM size for PP5022/PP5024 bootloaders.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14015 a1c6a512-1295-4272-9138-f99709370657
2007-07-26 21:51:44 +00:00
Jens Arnold
b4994a08ca Added new iAudio M5 target, including some adjustments to make the bootloader compile (with a small change against the committed tools/tonfigure, and it won't actually work yet).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12588 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 14:09:21 +00:00
Linus Nielsen Feltzing
d83cb9d055 Keep the vectors when linking with --gc-sections
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12445 a1c6a512-1295-4272-9138-f99709370657
2007-02-22 00:01:20 +00:00
Linus Nielsen Feltzing
bd6a0f15f0 Prepare the bootloader command file for --gc-sections
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12412 a1c6a512-1295-4272-9138-f99709370657
2007-02-20 11:06:01 +00:00
Marcoen Hirschberg
295367686e merge a big part of the unofficial gigabeat cvs back. Includes working bootloader and rockbox with audio.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11850 a1c6a512-1295-4272-9138-f99709370657
2006-12-29 02:49:12 +00:00
Barry Wardell
2f16d4f1b3 Add working dual-boot bootloaders for H10 and Sansa, which allow booting the OF and Rockbox. Rolo also works.
Changes made:

Combine bootloader/h10.c and bootloader/e200.c into a common bootloader file (bootloader/main-pp.c) to be used by all mi4 based PortalPlayer targets. The file bootloader/main-pp.c is based off the old bootloader/h10.c with some minor changes to allow it to work on the Sansa too. This effectively adds a Sansa bootloader.

Define MODEL_NAME string in config-*.h for use in bootloader.

Split crt0-pp.S into separate files for bootloader and normal builds. Bootloader code is now in crt0-pp-bl.S while normal build code stays in crt0-pp.S.

Improvements to crt0-pp.S and crt0-pp-bl.S (mostly to make it more multiprocessor safe):
* Leave space in bootloader at 0xe0-0xeb since scramble writes over there when it creates the mi4 file (don't leave space for iPods since it's not needed and all code in crt0-pp-bl.S needs to fit before the boot_table at 0x100).
* Remove unused DEBUG and STUB code from crt0-pp.S.
* Make CPU wait for COP to be sleeping when we put the COP to sleep.
* Invalidate COP cache when COP wakes
* Flush CPU cache before waking COP
* Make sure only the CPU clears the BSS (not the COP)
* Make sure only the CPU sets up its own stack (not the COP)

Rolo works on H10, so enable it.

Make Sansa e200 use rockbox.e200 rather than PP5022.mi4 for 'Normal' builds. This makes updating rockbox simpler as we don't need to go through the firmware update procedure, but rather just put a new rockbox.e200 on the device. rockbox.e200 uses a simple 'add' checksum.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11815 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 11:33:53 +00:00
Dave Chapman
0a8d88228b Remove unused code in (and hence simplify) the ipod bootloader - the image header parsing and memmove isn't used in Rockbox, it was just leftover from the original ipodlinux loader. Note that we still need the empty space in the bootloader (400 bytes starting at 0x100 - the 'boot_table' definition in firmware/target/arm/crt0-pp.S) to maintain compatibility with ipod_fw/make_fw (which will write information there that we have always ignored).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11704 a1c6a512-1295-4272-9138-f99709370657
2006-12-10 13:33:12 +00:00
Daniel Ankers
d8ef7c58d8 Big Sansa update: Go back to using the common crt0-pp.S. Add LCD driver. Add ADC driver (may not be needed). Fix a bug in the button driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11237 a1c6a512-1295-4272-9138-f99709370657
2006-10-16 17:21:36 +00:00
Daniel Ankers
6a4ec1414d Oops: Sansa and H10 need crt0 included in the bootloader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11190 a1c6a512-1295-4272-9138-f99709370657
2006-10-11 17:47:32 +00:00
Daniel Ankers
2740914ee1 Changes to make Sansa bootloader run. Thanks to Peter Praest.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11177 a1c6a512-1295-4272-9138-f99709370657
2006-10-10 19:02:49 +00:00
Daniel Ankers
41997d3d89 Clean up crt0.S and move it to the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10830 a1c6a512-1295-4272-9138-f99709370657
2006-08-31 19:45:05 +00:00
Marcoen Hirschberg
0a0682474e initial gigabeat bootloader (only test code)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10536 a1c6a512-1295-4272-9138-f99709370657
2006-08-12 08:27:48 +00:00
Daniel Stenberg
668a664947 nicer check for PP and now using crt0.o for ARMs that aren't ipod archs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10431 a1c6a512-1295-4272-9138-f99709370657
2006-08-03 08:41:44 +00:00
Daniel Stenberg
97cf946e4d do PP5024 like PP5020 until we found out more
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10398 a1c6a512-1295-4272-9138-f99709370657
2006-08-01 22:23:00 +00:00
Marcoen Hirschberg
338e2bbb0c first gigabeat commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8831 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 15:42:52 +00:00
Linus Nielsen Feltzing
c71900c02f The iAudio bootloader needs to have the startup code first in memory
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8802 a1c6a512-1295-4272-9138-f99709370657
2006-02-23 10:40:14 +00:00
Dave Chapman
2924a48ca5 Create config file for iPod 4G greyscale and various iPod 3G/4G greyscale fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8585 a1c6a512-1295-4272-9138-f99709370657
2006-02-05 18:25:41 +00:00
Dave Chapman
987879b958 Further iPod 3G work from Seven Le Mesle
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8583 a1c6a512-1295-4272-9138-f99709370657
2006-02-05 17:34:49 +00:00
Linus Nielsen Feltzing
bead47c17a The iAudio X5 LCD framebuffer doesn't fit in IRAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8571 a1c6a512-1295-4272-9138-f99709370657
2006-02-05 00:09:50 +00:00
Linus Nielsen Feltzing
760fea9ac7 iAudio X5: various fixes to make the bootloader compile
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8560 a1c6a512-1295-4272-9138-f99709370657
2006-02-04 00:01:15 +00:00
Linus Nielsen Feltzing
fff2e96a07 H100/H110 has only 16Mbyte RAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8178 a1c6a512-1295-4272-9138-f99709370657
2005-12-06 17:37:32 +00:00
Linus Nielsen Feltzing
e8224def39 Both iriver boot loaders have to use DRAM now, since the unicode codepage table doesn't fit in IRAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8171 a1c6a512-1295-4272-9138-f99709370657
2005-12-06 14:29:26 +00:00
Thom Johansen
118144fb0c Startup code for ordinary Rockbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8006 a1c6a512-1295-4272-9138-f99709370657
2005-11-20 01:58:56 +00:00
Linus Nielsen Feltzing
df0e5effc5 Cleaned up bootloader linker control file and added the H300 target
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7916 a1c6a512-1295-4272-9138-f99709370657
2005-11-16 23:15:59 +00:00
Dave Chapman
061f38096a Implement (unreliable) button detection using code from ipodlinux bootloader - this needs replacing by a better button driver in firmware/ and triple-boot bootloader functionality. Current button mappings: MENU loads rockbox.ipod and checks the checksum (but doesn't execute it), PLAY will load and execute a Linux kernel (linux.bin). An error in either of those two actions, or no keypress will load the original firmware
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7848 a1c6a512-1295-4272-9138-f99709370657
2005-11-13 20:59:30 +00:00
Dave Chapman
77372d1218 Initial commit of work-in-progress iPod port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
2005-11-07 23:07:19 +00:00
Jens Arnold
abd9f83e92 Two new sections for IRAM usage: .irodata (selectable with the ICONST_ATTR attribute macro), allowing to put 'const' data into IRAM without causing a section type conflict, and .ibss (selectable with the IBSS_ATTR attribute macro) for uninitialised data. * Rockbox core: Adjusted the linker scripts and init code to not include the .ibss section in the binary, it is cleared instead. Saves ~500 bytes on archos and ~30KB on iriver. Codecs and plugins don't handle .ibss in a special way yet. * The init code properly handles empty sections now (except .stack, which should never be empty). * Unified the init code for SH1 and coldfire a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7644 a1c6a512-1295-4272-9138-f99709370657
2005-10-19 19:35:24 +00:00
Christian Gmeiner
c6ff1f5eb5 Added CPU_COLDFIRE define - one step closer to iAudio-port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7186 a1c6a512-1295-4272-9138-f99709370657
2005-07-18 12:40:29 +00:00
Linus Nielsen Feltzing
62c768c0db Recovered from my major brain failure and reverted to using the same load address for both H110 and H120/140
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7082 a1c6a512-1295-4272-9138-f99709370657
2005-07-09 07:46:42 +00:00
Linus Nielsen Feltzing
1c40d3cee5 Ooops. DRAM can't start at 0x30000000 on iRiver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6325 a1c6a512-1295-4272-9138-f99709370657
2005-04-20 06:48:17 +00:00
Dave Chapman
e452383359 Increase PLUGINSIZE to 768k for devices with at least 32MB of RAM (currently only iRiver).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5952 a1c6a512-1295-4272-9138-f99709370657
2005-02-15 14:00:37 +00:00
Linus Nielsen Feltzing
b7225d165e Link file for boot loader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5691 a1c6a512-1295-4272-9138-f99709370657
2005-01-28 12:29:21 +00:00