Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2021-04-10

00:04:24 Quit Saijin_Naib (Ping timeout: 258 seconds)
00:07:14***Saving seen data "./dancer.seen"
00:08:04_bilgusin a coherent fashion?
00:09:15braewoods_bilgus: well
00:09:26braewoods_bilgus: it increases until it hits 0x60 or so then drops back to near 0
00:09:28braewoodsand repeats again
00:09:32braewoodsregardless of what i do
00:09:54braewoodsit's consistentin this behavior but otherwise still erratic
00:10:19braewoodsi had an idea though
00:10:33braewoodswould it be a bad idea to create an I2C bus scanner for our debug menu?
00:10:42braewoodsit could help with future ports if I2C is involved
00:11:10braewoodsmight even help with identifying mystery chips
00:17:10 Quit pixelma (*.net *.split)
00:17:10 Quit Soap_ (*.net *.split)
00:17:10 Quit SammysHP (*.net *.split)
00:17:10 Quit Natch (*.net *.split)
00:17:10 Quit copper (*.net *.split)
00:17:10 Quit Xeha (*.net *.split)
00:17:10 Quit aevin (*.net *.split)
00:17:10 Quit kugel (*.net *.split)
00:17:10 Quit kakaka (*.net *.split)
00:17:12 Quit rasher (*.net *.split)
00:17:12 Quit toruvinn (*.net *.split)
00:17:13 Quit blbro[m] (*.net *.split)
00:17:13 Quit mud (*.net *.split)
00:17:13 Quit APLU (*.net *.split)
00:17:14 Quit klock (*.net *.split)
00:17:14 Quit lemon_jesus (*.net *.split)
00:17:14 Quit trfl (*.net *.split)
00:17:14 Quit prg3 (*.net *.split)
00:17:14 Quit f1refly (*.net *.split)
00:17:14 Quit TheSphinX^ (*.net *.split)
00:17:14 Quit JanC (*.net *.split)
00:17:14 Quit Acou_Bass (*.net *.split)
00:17:14 Quit emacsomancer (*.net *.split)
00:17:14 Quit speachy (*.net *.split)
00:17:15 Quit Galois (*.net *.split)
00:17:15 Quit __builtin (*.net *.split)
00:17:15 Quit blucifer22 (*.net *.split)
00:17:15 Quit mikroflops (*.net *.split)
00:17:15 Quit akaWolf (*.net *.split)
00:17:16 Quit Barlow (*.net *.split)
00:17:16 Quit Moarc (*.net *.split)
00:17:16 Quit Strife89 (*.net *.split)
00:17:16 Quit Topy44 (*.net *.split)
00:17:16 Quit Romster (*.net *.split)
00:17:16 Quit gevaerts (*.net *.split)
00:17:16 Quit kirvesAxe (*.net *.split)
00:17:17 Quit kadoban (*.net *.split)
00:17:17 Quit hook54321 (*.net *.split)
00:17:17 Quit edhelas (*.net *.split)
00:17:17 Quit michaelni (*.net *.split)
00:17:17 Quit shrizza (*.net *.split)
00:17:18 Quit ufdm (*.net *.split)
00:17:19 Quit fauweh (*.net *.split)
00:17:19 Quit jerwin (*.net *.split)
00:17:19 Quit alexbobp (*.net *.split)
00:17:19 Quit KalBot (*.net *.split)
00:17:19 Quit massiveH (*.net *.split)
00:17:19 Quit asaba (*.net *.split)
00:17:19 Quit fs-bluebot (*.net *.split)
00:17:19 Quit ps-auxw (*.net *.split)
00:17:19 Quit bertrik (*.net *.split)
00:17:19 Quit xcin (*.net *.split)
00:17:20 Quit St3ak (*.net *.split)
00:17:20 Quit plum (*.net *.split)
00:17:20 Quit bluebrother (*.net *.split)
00:17:21 Quit Tsesarevich (*.net *.split)
00:17:21 Quit vup (*.net *.split)
00:17:21 Quit ac_laptop (*.net *.split)
00:17:21 Quit Rower (*.net *.split)
00:17:21 Quit CR0W (*.net *.split)
00:17:21 Quit amiconn (*.net *.split)
00:17:22 Quit bzed (*.net *.split)
00:17:22 Quit ChanServ (*.net *.split)
00:18:04 Join prg3 [0] (~prg@deadcodersociety/prg318)
00:18:04 Join f1refly [0] (
00:18:04 Join massiveH [0] (
00:18:04 Join ac_laptop [0] (~ac_laptop@
00:18:04 Join TheSphinX^ [0] (
00:18:04 Join akaWolf [0] (~akaWolf@unaffiliated/akawolf)
00:18:04 Join JanC [0] (~janc@lugwv/member/JanC)
00:18:04 Join blbro[m] [0] (blbrostrat@gateway/shell/
00:18:04 Join kadoban [0] (kadobanemp@gateway/shell/
00:18:04 Join mud [0] (kadobanmat@gateway/shell/
00:18:04 Join kugel [0] (~kugel@rockbox/developer/kugel)
00:18:04 Join aevin [0] (eivindsy@unaffiliated/aevin)
00:18:04 Join Xeha [0] (~Xeha@unaffiliated/xeha)
00:18:04 Join copper [0] (~copper@unaffiliated/copper)
00:18:04 Join Natch [0] (
00:18:04 Join SammysHP [0] (
00:18:04 Join Soap_ [0] (~Soap@rockbox/staff/soap)
00:18:04 Join pixelma [0] (marianne@rockbox/staff/pixelma)
00:18:04 Join hook54321 [0] (sid149355@gateway/web/
00:18:04 Join Tsesarevich [0] (Tsesarevic@fluxbuntu/founder/joejaxx)
00:18:04 Join kakaka [0] (~koniu@gateway/tor-sasl/koniu)
00:18:04 Join toruvinn [0] (
00:18:04 Join rasher [0] (~rasher@rockbox/developer/rasher)
00:18:04 Join trfl [0] (
00:18:04 Join lemon_jesus [0] (~lemon_jes@
00:18:04 Join klock [0] (~freeklock@unaffiliated/klock)
00:18:04 Join APLU [0] (~mulx@2a03:7220:8081:2900::1)
00:18:04 Join speachy [0] (~speachy@
00:18:04 Join emacsomancer [0] (
00:18:04 Join Acou_Bass [0] (
00:18:04 Join blucifer22 [0] (~quassel@
00:18:04 Join mikroflops [0] (
00:18:04 Join __builtin [0] (~quassel@rockbox/developer/builtin)
00:18:04 Join Galois [0] (
00:18:04 Join kirvesAxe [0] (
00:18:04 Join gevaerts [0] (~fg@rockbox/developer/gevaerts)
00:18:04 Join Romster [0] (~romster@unaffiliated/romster)
00:18:04 Join Topy44 [0] (
00:18:04 Join Strife89 [0] (
00:18:04 Join Moarc [0] (
00:18:04 Join Barlow [0] (~barlow@unaffiliated/barlow)
00:18:04 Join shrizza [0] (
00:18:04 Join michaelni [0] (
00:18:04 Join edhelas [0] (9d94237298@2a03:4000:51:f44:4e1:2ff:fe00:4257)
00:18:04 Join alexbobp [0] (
00:18:04 Join jerwin [0] (~flippy-fl@unaffiliated/flippy)
00:18:04 Join KalBot [0] (
00:18:04 Join fauweh [0] (
00:18:04 Join ufdm [0] (
00:18:04 Join xcin [0] (~x@
00:18:04 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
00:18:04 Join ps-auxw [0] (
00:18:04 Join fs-bluebot [0] (
00:18:04 Join asaba [0] (~asaba@
00:18:04 Join bluebrother [0] (~dom@rockbox/developer/bluebrother)
00:18:04 Join plum [0] (~plum@unaffiliated/plum)
00:18:04 Join St3ak [0] (
00:18:04 Join vup [0] (~~~~@
00:18:04 Join bzed [0] (
00:18:04 Join amiconn [0] (jens@rockbox/developer/amiconn)
00:18:04 Join CR0W [0] (~narf@unaffiliated/em64t)
00:18:04 Join Rower [0] (
00:18:04 Join ChanServ [0] (ChanServ@services.)
00:18:04Mode"#rockbox +o ChanServ " by
00:20:04 Quit hook54321 (Ping timeout: 252 seconds)
00:20:11 Quit Topy44 (Ping timeout: 240 seconds)
00:20:47 Quit mud (Ping timeout: 245 seconds)
00:20:48 Quit kadoban (Ping timeout: 252 seconds)
00:20:49 Quit ccf-100 (Ping timeout: 245 seconds)
00:21:11 Quit Tsesarevich (Ping timeout: 245 seconds)
00:21:12 Quit blbro[m] (Ping timeout: 245 seconds)
00:21:28 Quit danielp3344 (Ping timeout: 258 seconds)
00:21:57 Join Topy44 [0] (
00:22:47 Join Tsesarevich [0] (Tsesarevic@fluxbuntu/founder/joejaxx)
00:23:58 Quit Tsesarevich (Excess Flood)
00:24:09 Join Tsesarevich [0] (Tsesarevic@fluxbuntu/founder/joejaxx)
00:25:34 Join hook54321 [0] (sid149355@gateway/web/
00:27:19braewoodsspeachy: i noticed the DAC3550A has a driver but nothing uses it. Was it an ArchOS only driver?
00:33:18 Quit ac_laptop (Ping timeout: 240 seconds)
00:55:07_bilgusyou can probably use lua for that
00:55:23 Join mud [0] (kadobanmat@gateway/shell/
00:55:31braewoods_bilgus: indeed... but is there a platform agnostic set of i2c functions?
00:55:38braewoodsi can't find any so far
00:55:46braewoodsi2c.h seems to not be implemented by all targets
00:56:04_bilgusof course not
00:56:16braewoodsok. that's what i thought.
00:56:57_bilgusi2c.h hould get it all abstracted though
00:56:57braewoodsin any case that means I need to implement the scanner for each platform
00:57:18_bilgusyes the debuf menus are all chock full of device specific code
00:57:29braewoods_bilgus: i know but i2c_read doesn't appear to be implemented on for example PP
00:59:08braewoodsanyway thanks for the advice
01:01:57 Quit massiveH (Quit: Leaving)
01:12:44 Join ccf-100 [0] (ccf-100mat@gateway/shell/
01:12:44 Join danielp3344 [0] (danielp334@gateway/shell/
01:12:44 Join kadoban [0] (kadobanemp@gateway/shell/
01:12:50 Join blbro[m] [0] (blbrostrat@gateway/shell/
01:38:50 Quit pixelma (Quit: .)
01:38:50 Quit amiconn (Quit: - Chat comfortably. Anywhere.)
01:39:03 Join pixelma [0] (marianne@rockbox/staff/pixelma)
01:39:03 Join amiconn [0] (jens@rockbox/developer/amiconn)
01:41:23 Quit amiconn (Client Quit)
01:41:23 Quit pixelma (Client Quit)
01:43:51 Join amiconn [0] (jens@rockbox/developer/amiconn)
01:43:52 Join pixelma [0] (marianne@rockbox/staff/pixelma)
01:52:04braewoodshow strange... there's no I2C ack on PP so there's no way to know if it was received or w/e
02:07:18***Saving seen data "./dancer.seen"
03:15:55braewoods_bilgus: i had an idea.
03:16:13braewoodsother PP targets we support also sometimes have schematics available online if you look hard enough
03:16:33braewoodsmaybe i can find one where the mystery pin is connected and has a known use
03:17:39braewoodshah go figure... the yh-925gs doesn't use the PWM pins
03:23:41braewoodsyh-820 uses the pwm pins if the schematic is to be believed
04:01:06 Quit jdarnley (Ping timeout: 240 seconds)
04:07:20***Saving seen data "./dancer.seen"
04:18:09 Join ZincAlloy [0] (~Adium@2a02:8108:943f:d824:4532:b8a5:c30b:e1f6)
04:37:09 Join lebellium [0] (
04:52:04 Join PimpiN8 [0] (~PimpiN8@
04:55:33braewoodsapparently the first few bytes are what amounts to an entry point table
04:55:55braewoodsand given how what i'm looking for appears to have an interrupt associated with it
04:56:21braewoodsi will probably want to look at the entry point associated with the interrupt handler
04:56:42braewoodsthat will likely lead to where the data is read from
04:56:55braewoodsit may not initialize it but it may give some ideas
05:00:06 Quit mud (Quit: Idle for 30+ days)
05:05:39 Join lebellium_ [0] (
05:06:11 Quit lebellium (Ping timeout: 240 seconds)
05:08:31bluebrotherbraewoods: iirc there are 2 different OF versions of the Beast. The older one would allow to dualboot, the newer would always run into that exclamation mark screen and restore the whole player when using dualboot. Singleboot is fine on that though.
05:09:09 Quit WakiMiko (Ping timeout: 258 seconds)
05:09:23bluebrothercould also have been the other way round, but if memory serves me right the old firmware was working with dualboot.
05:10:55 Join WakiMiko [0] (~WakiMiko@unaffiliated/wakimiko)
05:14:04bluebrotherand iirc you could downgrade your player to the older firmware. You'd need to get the nk.bin and use it with beastpatcher.
05:54:56braewoodsbluebrother: i'll figure it out in time
06:07:23***Saving seen data "./dancer.seen"
06:23:34 Join J_Darnley [0] (
06:31:23 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
06:37:41 Join nihilazo [0] (e33ac355b6@
06:38:31nihilazohi, I'm trying to disable the display on my xduoo x3 running rockbox (I use the audio menus) and I can't figure out how to do it, on my old sansa fuze+ I just set the backlight to 0 but I'm not able to do that on the xduoo.
06:48:08braewoodsspeachy: one for you ^
07:49:09speachybraewoods: any i2c scanner is going to behighly problematic, as there's no way to guarantee any response from a random i2c device.
07:50:27speachynihilazo: I don't recall offhand, but that screen doesn't have a backlight. but you could dial the brightness down to 0 instead?
07:51:05 Join amachronic [0] (5284b8be@
07:54:06speachydial the backlight setting to "never" and lowest brightness, that's probably the best one can do. Problem is if we disable the display entirely that can render the device unusuable without manually editing thec onfigug on disk.
07:55:58_bilgusit was the same with the clips
07:56:25_bilgusI never understood why we had that but ^thats probably why
07:57:19speachyyeah, an LCD display can at least be seen under sufficiently bright light, but an LED display.. no output means no output.
07:58:12amachronicbraewoods, _bilgus: (logs) I did add a platform-independent i2c interface, look for i2c-async. but you'd have to redesign PP's I2C implementation to fit that interface + it's maybe more complex.
07:59:41speachyamachronic: and that's still largely useless for a "scanner" because there isn't any standard probing mechanism for i2c devices. quite the opposite, in fact.
08:01:13amachronicyep. but that's the nature of i2c.
08:02:08speachyexactly. a standard API is a good thing, but no non-platform/target code would be able to do anything useful with i2c.
08:03:03speachy(IIRC the new "I3C" stuff does standardize probing. but that's neither here nor there..)
08:07:24***No seen item changed, no save performed.
08:16:03amachronicspeachy: what was your plans for the x1000 USB driver? hoist out the dwc2 ARM code and use same code for all platforms, or just a copypaste and specialize to x1000?
08:16:36speachypull dwc2 out of ARM, essentially
08:17:07CtcpIgnored 2 channel CTCP requests in 8 hours and 12 minutes at the last flood
08:17:07*braewoods pulls a dwc2 out of their hat.
08:17:08speachyat this point I don't see why it would need to meaningfully differ.
08:17:31speachybut granted I've barely looked into it yet. too many other fires...
08:19:37speachyIIRC there's not a lot of room for customization in the dwc2 core. Plus it uses its own internal DMA engine.
08:20:13speachyin theory all we should ultimately need to do is point the driver at a new base address in the memory map.
08:20:40speachybut I'm not going to bank on _that_ :)
08:21:00amachroniclol. I was thinking of getting a gdb stub running, so if ever I get around to it, I just wanted to know how to split up the commits.
08:21:53amachronicsince dconrad's m3k is behaving strangely I'm hoping gdb might shed light on it, but idk.
08:22:54speachyI did finally extract my m3k, but I keep getting distracted with bugs elsewhere
08:23:12speachy(and the honey-do list..)
08:27:12speachythe dwc driver is already reasonably self-contained. only some platform-specific stubs for init/enable/irq and the instantiation options for the core.
08:27:45speachyso yeah, I'm feeling cautiously optimistic.
08:28:10amachronic I figured as much, but I haven't looked into it yet either
08:31:09nihilazospeachy: thanks, setting backlight to never works
08:31:55nihilazo(I love rockbox's speech options! I'm not sight-impaired but I prefer it as an interface because I don't ever have to actually look at my player. Very convenient)
08:35:34 Join Saijin_Naib [0] (
08:40:30speachynihilazo: I'm in the same boat; I find the speech interface invaluable when driving
08:44:33nihilazoI often use my player for podcasts and meditation timers when I'm in bed and it's good to have the speech interface then because I'm too lazy to look over at the display
08:47:39 Quit Saijin_Naib (Ping timeout: 258 seconds)
08:48:41speachytoo bad I no longer have access to those sweet ellisys bluetooth sniffers. :/
09:24:54 Join ac_laptop [0] (~ac_laptop@
09:30:10 Join dconrad [0] (~dconrad@
09:34:08dconradhey amachronic, I've got a cup of coffee and an m3k, do you want to do some test builds?
09:35:32amachronicyep can you first download (vanilla master build) and extract it to your SD card.
09:36:13dconradalright, one moment
09:36:32 Join Saijin_Naib [0] (
09:38:21dconradgot it
09:38:58amachroniccherrypick the latest g#3290 and build the SPL, and do a USB boot with this command:
09:39:00fs-bluebotGerrit review #3290 at : (DO NOT MERGE) Debugging a hardware init problem with the FiiO M3K by amachronic
09:39:09amachronicsudo ./usbboot -v -c x1000 -1 ../../build-spl/spl.m3k −−wait 60 -a 0xa2000000 -l 0x100000 -u /tmp/memdump
09:39:29dconradhm, interesting, ok one moment
09:39:31amachronicjust want to make sure first that the RAM is not getting corrupted.
09:39:55amachronicin case your hardware is different, but it's very unlikely to be the problem.
09:40:12dconradyeah I'm baffled why I seem to be the only one to have this issue
09:41:42amachronicoh forgot to say, do hexdump -C /tmp/memdump after the usbboot finishes. It should be all zeros.
09:47:06dconradjust to clarify, the two hex values are 0xa2000000 (6 zeroes) and 0x100000 (5 zeroes)?
09:47:30amachronicyeah I copy pasted from my own terminal
09:47:52dconradok, the lengths just seemed weird
09:47:56dconradhere we go
09:48:31dconradso this is only doing the first part of the boot, and then dumping something to the computer's disk?
09:49:25dconradoh, its -a address -l length, probably
09:50:09dconradall zeroes
09:50:29dconraduh, I can copy paste it if you would like
09:50:35amachronicno it's fine
09:50:55amachronicthe RAM's getting initialized alright, give me a minute & I'll update gerrit with another thing to try
09:56:09 Join TheLemonMan [0] (~lemonboy@irssi/staff/TheLemonMan)
09:58:00amachronicpick from gerrit again and boot from USB like this:
09:58:05amachronicsudo ./usbboot -v -c x1000 -1 ../../build-spl/spl.m3k −−wait 1 -2 ../../build-boot/bootloader.bin
09:58:35dconraddo you know if I can do git pull or do I need to do git reset −−hard and then cherrypick it again?
09:59:01amachronicI'm not a git expert myself, so I'd do git reset −−hard to master and cherrypick again
09:59:11dconradyeah probably safest
10:02:06amachronicit should stop just after printing 'Jumping...', then tell me what the addr:xxx data:xxx line says.
10:03:02dconradaddress is 8005BA84, data is 40809000
10:03:15dconradt is still moving slowly
10:03:18 Join lebellium [0] (
10:03:24amachronicok, press vol+
10:03:31amachronicaddr should go up to 8005ba88
10:03:33amachronicwhat's the data
10:03:50 Quit lebellium_ (Ping timeout: 252 seconds)
10:04:21amachronicok vol+ again
10:05:25dconradaddr 8005ba8c, data 3c020040
10:06:01amachronicseems like rockbox is getting read off the card so press the power button (just a quick press)
10:06:52dconradt was changing on occasion, now it's stopped
10:07:27***Saving seen data "./dancer.seen"
10:07:37amachronicwell, control has transfered to Rockbox now, but it is hung somewhere.
10:11:06 Quit Saijin_Naib (Read error: Connection reset by peer)
10:12:24amachronicout of curiousity, are you testing with your 2g card or another one?
10:12:32dconradthe 2g one, yeah
10:12:49dconraddo you want me to go get the one out of my good player?
10:13:07amachronicyou can try, see if it has a different result
10:13:13dconradalright, one moment
10:13:20amachronicbut imo it's probably not related
10:13:35amachronicgiven it didn't work before
10:13:54dconradmight as well
10:14:20dconradok, this is a genuine sandisk I bought at walmart like 5 years back, 64 gigs
10:14:45dconrad(I'm still impressed 64 gigs can be so small! and it was only a dollar a gig!)
10:17:50dconradso it was vol+ twice, then power?
10:17:57dconraddo you want to know any of the values?
10:18:03amachronicno it's probably fine.
10:18:06amachronicjust do power.
10:18:30dconradyeah t just stopped updating
10:18:55amachronicupdated gerrit again, retry with that.
10:19:07speachydconrad: it's worth mentioning that I think you and amachronic might be the _only_ ones who have even tried this stuff.
10:19:48amachronicspeachy: there are two people on the forums reporting a successful flash & boot, so idk what's wrong here.
10:20:16amachronicbut anyway debugging this crap is like needle in a haystack. ;)
10:20:55dconradis this just a bootloader/spl change, or should I put a new .rockbox on the card?
10:21:08amachronicoh sorry, you should use the new .rockbox.
10:21:56amachronicthis one should start flashing the button lights after you boot it, assuming it gets to Rockbox's main().
10:24:25dconradyeah the buttons are flashing
10:24:44amachronicOK. good news. now we're getting somewhere.
10:25:23dconradso the bootloader is functional?
10:25:25fs-bluebotBuild Server message: New build round started. Revision 1303be3437, 298 builds, 10 clients.
10:26:20amachronicwell, idk, but whatever is going wrong we have a chance of finding it now.
10:26:44dconradhaha, onwards and downwards
10:27:43amachronicpushed to gerrit, do a rebuild of Rockbox and boot again.
10:27:56amachronicuh sorry don't.
10:28:06amachronicrealized I moved code to wrong place
10:29:03amachronicok, fixed, try now
10:34:35dconradshould the buttons still be flashing?
10:34:45dconradthey're not
10:34:55amachronicthey should flash.
10:35:02amachronicif they're not the bug is in system_init()
10:35:06amachronicso we'll drill down
10:36:41fs-bluebotBuild Server message: Build round completed after 676 seconds.
10:36:44fs-bluebotBuild Server message: Revision 1303be3437 result: All green
10:39:08dconradboy this microsd card reader I bought the other day is really a gamechanger though
10:39:18dconradbe a pain in the butt without it
10:39:51amachronicprobably faster if you edit locally: go to firmware/target/mips/ingenic_x1000/system-x1000.c, line 120
10:40:27amachronicadd call to DIE() underneath system_init_clk(). recompile Rockbox and try again.
10:40:55dconradok, one minute
10:42:29dconradline 120?
10:42:56amachronicshould have comment /* Setup system clocks */ right above the call in question
10:43:06amachronicin function system_init().
10:43:08dconradyeah, in system_init()
10:46:23dconradwait, something went wrong, I didn't get all the debug info in the bootloader
10:46:40amachronicwhere does it hang?
10:46:58amachronicOH sorry this would affect the bootloader too.
10:47:07amachroniclemme fix this
10:48:03amachronicjust reset and pull from gerrit now.
10:50:22speachyok, g#3317 will probably end the all-green build page.
10:50:24fs-bluebotGerrit review #3317 at : misc: Don't include rbpaths.h and string-extra.h in settings.h by Solomon Peachy
10:50:30dconradoh fun, if I leave that file open in my text editor I can follow along
10:51:04speachyeverything I'm locally building is now clean, at least.
10:52:33dconradone thing I notice, should the file size in the bootloader match the checksum read: line and the load_firmware ret= line?
10:53:02dconradanyway, no flashing keypad
10:54:15dconradhm, can I check my process one second? I'll put DIE() (with ifndef) in front of system_init_clk()
10:54:48amachronicmade a mistake I was too aggressive and pushed DIE back too early.
10:55:00amachronicit should go after the /* Ungate timers */ block
10:55:36amachronicupdated gerrit
10:55:51dconradok, one moment
10:56:04 Join Saijin_Naib [0] (
10:56:12amachronicThe sizes reported by the bootloader should differ by 8, one of them includes the header and the other does not.
10:56:17amachronicso no concern there.
10:56:30dconradoh cool, that's exactly how much the differ
10:57:56dconradjust for my own curiosity, where is the DIE() call now?
10:58:11amachronicstill in system_init(), just moved down a few lines.
10:58:23amachronicright below the block ending with jz_set(TCU_STOP, 0x180ff);
10:58:36dconradoh I see it now
10:58:46amachroniccause without those timers being turned on, the light won't flash anyway.
11:00:45dconradno flashies
11:02:07amachronicARGH I am being stupid, haven't had to debug like this for a while.
11:02:50amachronictry again from gerrit
11:03:08amachronicthis time I actually tested locally, lol
11:03:16dconradok, just to forewarn you I think pancakes are about to happen so I might have to step away for a second
11:03:48amachronichaha no problem, if you want to try later or tommorrow it's fine by me.
11:03:56amachronicsince this looks like it's going to drag on a while.
11:04:43dconradI reckon I can probably eat at the computer here, I'll see
11:05:31dconradI really want to keep going since we have some momentum
11:07:57dconradstill no flashing
11:08:07dconradone second, I'll be right back
11:10:32dconradok back
11:10:39dconradand with breakfast, yum
11:11:11dconradgive what we know right now, where could I put the die call just to verify that I'm not doing something wrong with my process?
11:11:19dconradjust to double check
11:12:09amachronicput it in main() in apps/main.c, right above CHART(">init")
11:12:20amachronicit worked there before
11:12:27amachronicbut due to alignment it may not work there again.
11:12:39dconradalright, I'll give it a shot
11:12:48amachronicin case my theory of this being a memory corruption problem is true.
11:15:06dconradyou figure something is writing somewhere it shouldn't?
11:15:41amachronicyes, that seems most likely. but it might also be a PLL initialization problem in case PLL never stabilizes we get trapped in an infinite loop
11:16:58dconradok, I put it back in main() and get a nice flashing keypad
11:17:06dconradok, now I'm satisfied my process works
11:17:20amachronictry again with gerrit, I've updated it.
11:17:26dconradwill do
11:22:20dconradno flashing this time
11:25:29amachronictry again from gerrit. If it does not flash this time the problem is almost certainly memory corruption
11:26:03dconradalright, building
11:28:35dconradta-da! flashing
11:29:24amachronichmm. what does grep -A1 text.system_init say?
11:29:50amachronicI'm only interested in the address/size on the left
11:30:57amachronicand size? should be next to it
11:31:26dconrad0x000000008007f3d0 0x18c /..../build-m3k/firmware/libfirmware.a(system-x1000.o)
11:31:49amachronicyep. same as me
11:31:49dconradsorry, I've got irc open on my laptop and building on my linux box so can't copy/paste
11:41:30amachronicupdated gerrit, try it again.
11:42:11amachronicthis time I padded the area with NOP and jumped over it, assuming it is corrupted, hopefully we'll skip over any corrupted code.
11:42:46amachronicit should get to the logo if all goes well.
11:44:51dconradso is the assumption that the corruption is due to me having a faulty unit, or an error with rockbox?
11:45:24amachronicI'd assume an error with rockbox, since it's not like my code is very well tested
11:45:41dconradits just weird it only occurs on one device
11:46:12speachydconrad: since your player presumably worked fine with the OF, the presumption is that your hardware is ok. though it's certianly possible you have some sort of unknown hw variant
11:46:19dconradoh whoops, i didn't actually update
11:46:32dconradskipped a step, one moment
11:46:48speachydconrad: your player represents a full quarter of all units this has been tested on
11:47:33speachy(sigh. just got volutnteered to do more shuttling the kiddos around post-game, so my availability this afternoon just evaporated...)
11:49:38dconradno flashing or boot screen :-\
11:50:17amachronicbootloader debug still showing right?
11:50:30amachronicrun this again: grep -A1 text.system_init
11:50:38amachronicthe address should be the same as last time
11:50:58amachronicit should look like this:
11:51:02amachronic0x000000008007f3d0         0x4b8
11:51:54dconrad0x000000008007f3d0 0x4b8, yep
11:52:20amachronicgimme a minute
11:52:47dconradboy, even in hex 64 bit means a lot of digits
11:53:11speachyheh, the bit DAP lot is up over $200 now, with nearly 5 days to go.
11:54:43dconradat the risk of getting sidetracked, speachy, that change to the scaling on the eros q is like night and day
11:55:29dconradI spent an hour yesterday morning listening at various volumes from inaudible to too-loud and heard none of the audio artifacts
11:55:53dconradthough only the bottom half of the range is usable, it gets too loud after that
11:57:35dconradthough it does do some digital noise at the last couple seconds of a track for some reason, and pops between tracks (though some track combinations don't for some reason)
11:57:44dconradthat's different though, if I recall
11:57:46speachydconrad: that's due to the hot output I presume?
11:58:02dconradyeah I reckon so
11:58:06speachythe way the math is set up the max volume should be the same befor and after
11:58:28dconradI don't know, I can't get there without risk to my hearing haha
11:58:42dconradit's /very/ loud
11:58:44speachypops between tracks is going to happen if the sample rate changes
11:59:03dconradah, maybe that's why it's only sometimes
11:59:14amachronicspeachy: I had this issue on the M3K. is there any way to eliminate it?
11:59:24amachronicit gets MUCH worse at high sample rates
12:00:01amachronicdconrad: I have another revision to try
12:00:11dconradaight, I'll go grab it
12:00:17amachroniconly a bootloader change, leave the rockbox alone
12:00:22dconradyou got it
12:00:23speachyamachronic: it depends on exactly where the pops are occuring −− traditionally the solution is to mute the analog output when making any DAC config changes
12:00:53speachyalso the DAC might have some sort of auto power save feature that turns things off when it gets 0s for some period of time
12:01:12amachronicinstead of booting right away this time please wait at the end
12:01:29amachronicI want to figure out if the memory is really getting corrupted
12:01:38amachronic(ie. don't press the power button)
12:01:55dconradok, I didn't even build the normal build
12:02:07dconradyou want me to just wait for something to happen?
12:02:33amachronicare you at the end of the boot now?
12:02:51amachroniclike on the debug screen with t going up slowly
12:02:53dconradyeah, t is just doing its thing
12:03:19speachydconrad: on the erosq (And all of the other hiby targets, grrr) unmuting the analog output is _slow_.
12:03:20amachronicokay now, the data: should be 27bdffe0
12:03:56speachyso to eliminate the pop we'll end up cutting off the first bit of whatever's playing. not that big of a deal for music but when you're using voiced menus it really sucks
12:03:56dconraddo I have to do anything to get it to refresh the value?
12:04:03amachronicwell, the idea now is to compare with this:
12:04:09amachronicso vol+ moves the address forward
12:04:11amachronicand vol- moves it back
12:04:16dconradI see
12:04:22amachronicso the first 4 bytes are okay
12:04:49amachronicif you can step through carefully and report where you find a difference, we may find the culprit
12:05:01dconradyou got it
12:05:24amachronicprobably the issue will be somewhere in the 'nop' so you can try holding down vol+ and it should skip through faster
12:05:40amachronicit will be easy to see if that's going on, because it will be a few nonzero values surrounded by zeros (hopefully)
12:06:26amachronicif you get lost then just reboot & try again
12:07:28***Saving seen data "./dancer.seen"
12:07:36dconradso far so good, but are the addresses supposed to match?
12:07:52amachronicno the addresses will be offset from the disassembly.
12:08:03amachronicsorry about that
12:08:16amachronicif you're having trouble I can fix that so they match up
12:08:30dconradok, because I'm getting 800d6e54 rather than 8007f3d0
12:08:40dconradnah its cool, I just wanted to make sure that was expected
12:12:55dconradphew, just got through the nops
12:13:03amachronicall zero?
12:13:21dconradlet me see what the other side looks like
12:13:26dconradbut yea
12:13:41 Quit ac_laptop (Ping timeout: 268 seconds)
12:20:24dconradso far so good, I'm to 8007f7e4
12:22:08amachronicyou might as well finish it and be sure, but it's looking like not a memory corruption problem. (Phew!)
12:22:54amachronicI guess it must be double-initialization of HW that is the problem.
12:26:30dconradok, got to the end, no differences
12:26:48dconradI think I might scroll back through the nops again though and make sure there's nothing in there but 0's
12:28:19amachronicgo ahead if you want to double check... though at this point I would suggest, just build everything from clean master branch, and load Rockbox over USB, like you would when following the wiki install instructions.
12:28:28amachronicbecause RB should be perfectly usable in that state.
12:28:41amachronicthen just try screwing around and playing music, using plugins, and see if you get errors.
12:29:06amachronicbecause if it was really a corruption problem due to your unit's HW I would expect it to manifest under general usage as well.
12:29:49amachronicin case of a HW double init problem, I will try to sort something out by tonight you can test and see if we can make rockbox boot.
12:30:24dconradalright, sounds like a plan
12:30:56amachronicthanks a ton for that awful debugging. :D
12:31:58dconradyeah nothing but zeroes in there
12:32:12amachronicgoing to have to bounce now, so lemme know on the forums if the USB booted rockbox appears stable
12:32:29dconradwill do
12:32:58 Quit amachronic (Quit: Connection closed)
12:51:31 Quit berber (Quit: The Lounge -
12:51:59 Join berber [0] (
13:04:39 Quit pamaury (Ping timeout: 260 seconds)
13:05:31 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
13:20:21 Quit dconrad ()
13:28:09 Quit copper (Remote host closed the connection)
13:28:26 Join copper [0] (~copper@unaffiliated/copper)
13:40:24 Join ac_laptop [0] (~ac_laptop@
13:42:42 Quit copper (Quit: ZNC -
13:42:49 Join copper [0] (~copper@unaffiliated/copper)
13:55:24 Quit Galois (*.net *.split)
13:55:24 Quit __builtin (*.net *.split)
13:55:24 Quit blucifer22 (*.net *.split)
13:55:24 Quit mikroflops (*.net *.split)
13:56:22 Join Galois [0] (
13:56:22 Join __builtin [0] (~quassel@rockbox/developer/builtin)
13:56:22 Join mikroflops [0] (
13:56:22 Join blucifer22 [0] (~quassel@
13:57:24 Join lebellium_ [0] (
13:57:37 Quit lebellium (Ping timeout: 252 seconds)
14:07:30***Saving seen data "./dancer.seen"
14:16:45 Join S|h|a|w|n [0] (~shawn156@unaffiliated/shawn156)
15:20:44 Quit Saijin_Naib (Read error: Connection reset by peer)
15:32:30 Quit TheLemonMan (Quit: "It's now safe to turn off your computer.")
15:48:30 Join Saijin_Naib [0] (
16:07:31***Saving seen data "./dancer.seen"
17:10:00_bilgus dconrad the lua script rli image demo 'the twist' churns a lot of ram
17:10:23_bilgusit was my memory corruption test through the h10
17:29:48 Quit PimpiN8 (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:07:34***Saving seen data "./dancer.seen"
18:53:06 Quit lebellium_ (Quit: Leaving)
19:14:11 Quit pamaury (Ping timeout: 240 seconds)
19:24:16speachy_bilgus: it seems my rocker has returned from its working vacation
19:53:44 Quit igitoor (Ping timeout: 245 seconds)
19:54:34 Join igitoor [0] (igitur@2a00:d880:3:1::c1ca:a648)
20:00:22 Quit igitoor (Changing host)
20:00:22 Join igitoor [0] (igitur@unaffiliated/contempt)
20:07:35***Saving seen data "./dancer.seen"
20:08:51 Join massiveH [0] (
20:10:57_bilgusdid you like its new box? lol
20:11:47 Join chris_s [0] (
20:12:38speachyyeah, my first thought was "looks like it was hanging out with one of those french girls"
20:15:22chris_sDoes g3318 seem sane to you guys? Whenever music was paused or playing (instead of stopped), Rockbox would previously simply return to the main screen from the playlist catalogue after a new item had been selected.
20:15:34chris_sI've successfully tested it at least a bit. Hope I'm not overlooking something – seems like if it was this easy to fix, someone would have already done it sooner... unless I'm the only one annoyed by the current behavior.
20:15:46_bilgusyeah? I'm not sure I get the corollary
20:16:22speachy_bilgus: a riff of "draw me like one of your french girls" from Titanic
20:17:49speachyseems sane to me but I never use the playlist catalog
20:19:09_bilguschris_s the code looks sane
20:19:34_bilgusI won't really test it till the week though
20:20:23chris_sspeachy: well, that might explain it...:D  Although the same applies when viewing the contents of playlists (instead of selecting them) from the file browser
20:20:25chris_s_bilgus: thanks, no rush... I may want to test it some more myself
20:20:52speachyis the old behavior explicitly documented in the manual?
20:21:09chris_sI doubt it, but will have to check
20:28:21_bilgusthere is a hell of a lot of code that goes into the menu system I've been trying to feed and care for the internal list linedraw a lot more moving pieces than I figured
20:29:44_bilgusI wanted to push data to do+_menu but I've an issue that lua wants to be the pusher and do_menu wants to do it in callbacks
20:35:02 Quit ZincAlloy (Quit: Leaving.)
20:43:41speachyok, the dx50/dx90 work but can't access the external sd card any more due to my hostfs reworking.. I think I know how to fix this but.. working kinda blind here..
20:44:39fs-bluebotBuild Server message: New build round started. Revision bc416ff590, 298 builds, 10 clients.
20:45:12speachyhopefully there won't be any red (or yellow) here. all of my local builds were ok.
21:01:42braewoodsspeachy: this was a fun evening. i was emailing with a senior rockbox user trying to advise them about the dead Clip+
21:03:09braewoodsi'll get around to trying to disassemble the OF this evening
21:03:11fs-bluebotBuild Server message: Build round completed after 1112 seconds.
21:03:14fs-bluebotBuild Server message: Revision bc416ff590 result: 466 errors 58 warnings
21:03:23speachyok, time to clean up the mess
21:05:13braewoodsi recommended the iRiver H120 to him since i thought it was a good fit.
21:05:35braewoodsit's very mature and reliable.
21:07:27fs-bluebotBuild Server message: New build round started. Revision 6ae2b7140c, 298 builds, 10 clients.
21:07:45speachyshould solve all the red. Most of that was due to checkwps. d'oh.
21:22:27fs-bluebotBuild Server message: Build round completed after 900 seconds.
21:22:29fs-bluebotBuild Server message: Revision 6ae2b7140c result: All green
21:46:11 Quit chris_s (Quit: Connection closed)
21:47:05_bilgusI always forget to check check wps
21:47:57speachyand the rest was every m68k with a radio. :/
22:07:38***Saving seen data "./dancer.seen"
22:19:37speachythere's a lot more header detanglement that could/should be done
22:20:02 Quit f1refly (Quit: see ya in hell)
22:21:21 Join f1refly [0] (~f1refly@2a01:c22:847c:ae00:f7eb:98d7:1024:6d97)
22:26:40 Quit f1refly (Quit: see ya in hell)
22:26:57 Join f1refly [0] (~f1refly@2a01:c22:847c:ae00:f7eb:98d7:1024:6d97)
22:36:24 Join f1reflyylmao [0] (
22:36:47 Quit f1refly (Ping timeout: 260 seconds)
22:36:49 Nick f1reflyylmao is now known as f1refly (
22:36:49speachyhuh, here's an odd one
22:37:32speachythe ID2P macro can generate a null pointer if the ID is LANG_SET_BOOL_YES (== 0)
22:37:41speachyand that's usually statically known at compile time
22:49:40 Quit f1refly (Quit: see ya in hell)
22:52:16 Join f1refly [0] (~f1refly@2a01:c22:8c93:cd00:79ea:fc8:fff7:1c73)
22:55:46 Quit f1refly (Client Quit)
23:05:08 Join f1refly [0] (
23:06:16fs-bluebotBuild Server message: New build round started. Revision e4345f2db8, 298 builds, 10 clients.
23:07:08speachyanother set of eyeballs on g#3321 would be appreciated.
23:07:10fs-bluebotGerrit review #3321 at : lang: Offset the start of the language VIRT_PTR to avoid a null pointer by Solomon Peachy
23:07:42speachywe have the nullptr check optimizations explicitly disabled due to general wonkiness but this might be one of the causes of that
23:08:13 Quit f1refly (Client Quit)
23:08:59 Join f1refly [0] (
23:10:38speachyif we ever get anothe target that has "real" memory at addr 0, this will potentially break.
23:14:30braewoodsthe problem with null.
23:14:54 Quit f1refly (Quit: see ya in hell)
23:14:59braewoodsprobably why we should not allocate anything at address 0 outside of something special.
23:15:13speachythis is "something special"
23:15:24braewoodslike a reset vector?
23:15:38speachypointer shenanigans
23:15:52braewoodsI meant like device or architecture specific memory mappings.
23:16:21braewoodsi don't think we should ever try to port RB to anything less than a 32 bit cpu...
23:16:37speachyby treating a range of "invalid" pointers as an index, one can save space in data structures.
23:17:07braewoodslet me guess. they have to reconstruct the full pointer before they can use it.
23:17:23 Join f1refly [0] (
23:17:36braewoodsi've seen people use tagged pointers before.
23:17:41speachyit's used as an index in a table
23:17:51braewoodsso not a true pointer.
23:17:51speachy(language strings)
23:18:05speachyif it's not in that special range, it is treated as a pointer.
23:18:20braewoodsOh, I see.
23:18:21braewoodsA hack.
23:18:33braewoodsreminds me of tagged pointers.
23:18:33speachythe key is to ensure that special range is not a valid address for the platform
23:18:48speachyit is, after a fashion
23:18:48braewoodsneed special processing before you can actually use them
23:19:15braewoodsi don't generally recommend it myself since it's not very portable
23:19:18speachywe only have two SoC families supported that have "Real" memory at 0x00
23:19:27speachybut I know of others
23:19:32fs-bluebotBuild Server message: Build round completed after 795 seconds.
23:19:35fs-bluebotBuild Server message: Revision e4345f2db8 result: All green
23:19:38braewoodsyou need to know how the system assigns pointers to know if it's safe to mess with pointers like that
23:19:54braewoodsi mean, going around arbitrarily reassigning bits
23:20:15braewoodsso i never really used it. didn't feel safe doing so.
23:20:28braewoodsi'd rather use more memory to avoid creating new problems.
23:21:01braewoodsspeachy: i hope we can get -Wpadded in our toolchain eventually
23:21:12braewoodsit could be useful for optimizating DS
23:21:31speachyit's going to create a ton of noise
23:21:48braewoodsI know, it's not for general use.
23:22:05braewoodsbut considering how we have a fixed amount of low memory
23:22:05speachymostly in 3rd-party code (eg codecs, plugins)
23:22:18braewoodsit could be useful for optimizing our memory use
23:23:56 Quit f1refly (Quit: see ya in hell)
23:24:46 Join f1refly [0] (
23:25:06speachywell, it's present in gcc 4.9.4 that we're using, so you can turn it on in your local builds and see how it goes
23:25:52braewoodsoh i thought it wasn't
23:25:55_bilgusspeachy the virtual pointer doesn't have to be invalid though
23:26:11_bilgusasking not stating
23:26:43speachythe key is that there can't be any chance that the virutal pointer points to a real address that could conceivably have a string in it
23:27:16speachyso the VPTR needs to point at something outside of RAM
23:27:21_bilgusyeah ok so a dead char isn't going to kill us right?
23:27:55speachyjust some wonky strings being displayed
23:28:10braewoodsdo we use memory protection where available?
23:28:21speachynone whatsoever
23:28:29_bilgusno I was saying a char reserved in ram to oint to
23:28:31braewoodswow. so DOS and windows 9x days.
23:29:05speachyeven less than that
23:29:23speachywe're bare metal.
23:29:34braewoodsi thought DOS was already bare metal
23:30:08speachyDOS is close but thanks to x86 segmentation you actually get some degree of protection
23:30:34braewoodsi see, so no MMU for ARM.
23:31:02braewoodsif it was an option we'd probably want to use it to help give us some protection
23:31:10speachysome of our SoCs have an MMU, but... why bother?
23:31:20speachyit's a lot of complexity for nearly no gain
23:31:30braewoodswe could use it to protect code regions against writes
23:31:34braewoodsbut that's all I could envision
23:32:20braewoodsi guess we don't really need it
23:32:26braewoodswe're not a PC
23:32:40speachywe're not running arbitrary 3rd party code
23:33:00braewoodswe are when we boot OFs
23:33:07braewoodsbut yea

Previous day | Next day