- Status Closed
- Percent Complete
- Task Type Patches
- Category Operating System/Drivers
- Assigned To No-one
- Operating System Coldfire-based
- Severity Low
- Priority Very Low
- Reported Version Release 3.4
- Due in Version Undecided
-
Due Date
Undecided
- Votes
- Private
Attached to Project: Rockbox
Opened by MarcinBukat - 2010-03-22
Last edited by MarcinBukat - 2010-04-27
Opened by MarcinBukat - 2010-03-22
Last edited by MarcinBukat - 2010-04-27
FS#11137 - This is initial patch that adds MPIO HD200 as a new target.
Included are:
- basic bootloader (but install instruction is not described yet)
- port specyfic files
- UI simulator
currently it is possible to load bootloader int iram with BDM and than boot rockbox. Many things does not work yet.
Closed by MarcinBukat
2010-04-27 09:43
Reason for closing: Accepted
Additional comments about closing: Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407
2010-04-27 09:43
Reason for closing: Accepted
Additional comments about closing: Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407
Commited as r25724, r25725 and r25726
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
somehow patch got lost in action
A bit refined version of the patch. Removed whitespace changes in bootloader/common.c and changed model name in tools/scramble.c (I saw now model name h10_5gb which breaks ‘4 char rule’, that is why I named my target hd200)
Great job!
About the “4 char rule” it’s not a problem because we only use it to determine the model number, it can be arbitrarily long as long as it is given as argument to scramble (just saw that, I would have used longer names if i knew..)
Here some remarks:
- I see there are a lot of places where DRAM start is defined to 0×31000000 : could you put that in an header? like firmware/target/coldfire/mpio/hd200/system-target.h
for tuner, can the
be removed, or tuner be commented out ?
- did Dave Chapman really write wm8750.h 5 years ago ?
- config.h has a
- same for pcm-coldfire.c, wmcodec-coldfire.c
- there is an added chunk in coldfire/crt0.S : can you add a comment for this one ?
If you are not sure about how to implement lcd_blit_*() you could ask amiconn on irc
about remarks:
- DRAM start define - I took existing CF ports (iriver,iaudio) as a template and there were no such define.
- wm8750.h is for now copy of wm8751.h (wm8751 is little brother of wm8750). Basic register addresses and fields are the same for both DACs. When I make playback working I am going to extend it to support additional capabilities.
- I think lcd_blit_*() are not critical for now. There are much more important features to develop.
changes in patch:
s
- commented out unused (for now) options in config/mpiohd200.h. This forces some ifdefs in pcm-coldfire.c
- added more comments in code and remove
If the files are identical for now shouldn’t you use 8751.h / 8751.c, and in the future add some #ifdef for code specific to 8750:
in wm8751.c:
#ifdef HAVE_WM8750
#endif
Unless they differ too much (and you run into a #ifdef nightmare), code should be shared as much as possible i think
More bootloader work. This bootloader along with mkmpioboot utility was successfully tested on my device. If the menu introduced in bootloader is a nodo I will change this later but personally I found it convenient.
Graphic for UI simulator was changed a bit also.
Fixes few bugs and most important adds basic sound output support. There is some very high pitch noise audible though. Volume control works, did not try bass/treble settings. I also separated change to apps/plugins/plugin.lds as a separate task
FS#11153.1. Found workaround for high pitch noise.
2. Extended delay between setting adc channel and reading. This make battery reading more stable. I don’t know why buttons are not affected… 3. ata_enable() is empty now. It makes USB bridge mode work in rockbox. Idealy it should contain handling of GL811E reset line but I am not sure which one it is.
4. Hacked ata-as-coldfire.S to include byteswaps. Now it is moved to ata-as-mpio.S but maby it would be better to integrate the two with #ifdef BYTESWAP magic. Only optimized reading routine is used. I did not measured what is the impact of the change.
5. Changed behaviour of bootloader to reset instead of poweroff in case AC wall adapter is connected.
6. Included lcd_shutdown() as a part of power_off()
I found out that playing mp3 needs ~108MHz and playing ogg needs ~121MHz. This is much much more than raported in http://www.rockbox.org/wiki/CodecPerformanceComparison for other Coldfire based DAPs. The delta between mp3 and ogg is comparable though.
1) squashed stupid bug in lcd_update_rect (THANKS b0hoon). Now UI is *MUCH* more responsive
2) moved ADC reading to ISR
3) enabled plugins (keymaps and graphics may need fine tunning)
4) begin work on radio support (not finished yet)
Split patch into 3 separate. Small fixes as disscussed on IRC
small fixes and cleanups