Rockbox Development > New Ports
Cowon D2
mneedes:
(NEVERMIND... I just found it. It is in an assembly language file, LOL. firmware/target/arm/tcc780x/crt0.S)
The telechips bootloader used by the D2 is different from several other bootloaders (e.g.: ipod bootloader) in that it doesn't poll the HOLD button in its main() entry point (bootloader/telechips.c). My question is WHERE is the source code that polls the HOLD button for the D2 ?
(NEVERMIND... I just found it. It is in an assembly language file, LOL. firmware/target/arm/tcc780x/crt0.S)
Thanks!
Matt
shotofadds:
--- Quote from: AsusFreak on September 10, 2010, 03:23:12 AM ---r28058 does not start anymore. Only the bootloader is shown then i get the blackscreen and have to wait some minutes before being able to boot into OF.
We had a same issue some weeks ago (see closed FS#11558).
My last actual working build is r28051.
--- End quote ---
I can re-create this problem here, and it looks like r28054 triggered it (r28051,52,53 all work correctly for me). It seems to be a code alignment problem, since inserting 3 NOPs into main.c makes the problem go away, at least temporarily. But I don't understand why we haven't hit this problem any time in the past 3 years...
Leave it with me a while longer and I'll find a proper fix.
I've also spotted a potential cause of the missing audio channels - but I need to do some more testing to confirm it.
EDIT: It's the MCFG |= 1 line in system-tcc780x.c that causes the black screens in some builds. I'm trying to work out whether this is even needed at all, but can't for the life of me work out why this hasn't been a problem before.
AsusFreak:
--- Quote from: shotofadds on September 12, 2010, 04:42:08 PM ---I can re-create this problem here, and it looks like r28054 triggered it (r28051,52,53 all work correctly for me). It seems to be a code alignment problem, since inserting 3 NOPs into main.c makes the problem go away, at least temporarily. But I don't understand why we haven't hit this problem any time in the past 3 years...
Leave it with me a while longer and I'll find a proper fix.
--- End quote ---
Thanks for taking care of it, shotofadds.
Edit:
r28078 is starting correctly again. I do not know what causes the right booting now but it rocks again - hooray!
So for me the last point's not working is the aspect of redrawing conditionals with timing but this is a minor point...
shotofadds:
--- Quote from: AsusFreak on September 14, 2010, 10:02:28 AM ---r28078 is starting correctly again. I do not know what causes the right booting now but it rocks again - hooray!
--- End quote ---
I can 100% guarantee that this is temporary, it'll stop working again in a few builds time. I can put in a temporary fix, but to solve it permanently I need to better understand why this has only just started happening after nealry 3 years of working builds...
EDIT: I've been working on this some more tonight and have come to the conclusion that this whole area in system-tcc780x.c smells fishy. It claims to "do with the OF does", but that's not quite true. The OF runs this code before the ARM caches have been enabled, whereas we run it with the caches enabled.
Lo and behold, if I disable the data cache before running this code the problem goes away.... so it looks like I have found a workaround (though I still need to test this works in bootloader builds before I can commit a "fix"). This whole area is in need of some tidying up and further investigation as to what the code is actually doing, though.
motorbit:
--- Quote ---The OF runs this code before the ARM caches have been enabledif
--- End quote ---
--- Quote ---if I disable the data cache before running this code the problem goes away.... so it looks like I have found a workaround
--- End quote ---
workaround? to me* it rather sounds as if you found the surce and a proper fix to the problems we faced with some of the later builds.
nice work :)
*me no know nothing about this code^^
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version