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-02-27

00:01:28***Saving seen data "./dancer.seen"
00:20:53 Quit koniu (Remote host closed the connection)
00:21:19 Join koniu [0] (~koniu@gateway/tor-sasl/koniu)
00:32:22 Quit massiveH (Quit: Leaving)
02:01:29***Saving seen data "./dancer.seen"
02:21:51 Quit pixelma (Quit: .)
02:21:52 Quit amiconn (Quit: - Chat comfortably. Anywhere.)
02:24:19 Join amiconn [0] (jens@rockbox/developer/amiconn)
02:24:20 Join pixelma [0] (marianne@rockbox/staff/pixelma)
04:00:06 Quit Jyrki[m] (Quit: Idle for 30+ days)
04:01:32***Saving seen data "./dancer.seen"
04:09:48 Join lebellium [0] (
04:23:36 Join PimpiN8 [0] (~PimpiN8@2001:1c04:3308:a500:5cab:8460:ac5a:3000)
04:42:59 Quit S|h|a|w|n (Quit: Leaving)
05:16:13 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
05:41:12 Quit koniu (Ping timeout: 268 seconds)
05:46:53 Join koniu [0] (~koniu@gateway/tor-sasl/koniu)
06:01:33***Saving seen data "./dancer.seen"
06:15:20 Quit PimpiN8 (Quit: Textual IRC Client:
06:45:18 Join MrZeus [0] (~MrZeus@
07:39:21 Join J_Darnley [0] (
07:40:50 Quit jdarnley (Ping timeout: 260 seconds)
08:01:34***Saving seen data "./dancer.seen"
08:04:31 Quit jschwart (Quit: - Chat comfortably. Anywhere.)
08:10:47 Join jschwart [0] (~quassel@2001:985:2c6e:0:b00b:32ff:fe28:5567)
08:34:56 Join vitt13 [0] (~vitt13@
08:40:28 Join chris_s [0] (
08:42:43chris_s@perpetuality I would suggest using this instead: %Vp(1, %?if(%it,!=, %fn)<%pp - %ia - %it|%pp - %fn>)
08:43:19chris_sperpetuality: ...
08:45:26chris_s(possibly adding a check for the existence of the artist tag as well)
08:46:55chris_sI don't think you can make Rockbox preload more metadata for displaying it in the playlist viewer
08:48:49chris_s(unless you're willing to write a patch for that, I guess...)
08:52:06 Quit chris_s (Quit: Connection closed)
08:56:19 Join chris_s [0] (
08:57:23chris_sOf course my suggestion assumes that your filenames are different from your track titles, which may not necessarily be true
08:57:46 Quit chris_s (Client Quit)
09:02:40 Join chris_s [0] (
09:04:58chris_sIn any case, %it will return the filename if the title hasn't been loaded from the metadata yet. Which is why your check for its existence always returned true.
09:05:13 Quit chris_s (Client Quit)
09:05:56 Join chris_s [0] (
09:06:04chris_s(at least in this specific context)
09:06:08 Quit chris_s (Client Quit)
09:08:34 Join chris_s [0] (
09:12:23 Quit chris_s (Client Quit)
09:19:44 Join ac_laptop [0] (~ac_laptop@
09:38:38fs-bluebotBuild Server message: New build round started. Revision 317908e8c3, 293 builds, 9 clients.
09:39:41speachychris_s: It will be interesting to see if the UDMA1 change applies to other PP-based models, but that requires folks willing to be guinea pigs.. :/
09:40:48speachyI have a mini2g, which might be similar enough. but it barely has anything on it as I only ever used it to debug toolchain issues.
09:41:11speachy(with a mostly-shot battery and the original 4GB microdrive)
09:43:57 Join jdarnley [0] (
09:46:04 Quit J_Darnley (Ping timeout: 276 seconds)
09:53:33fs-bluebotBuild Server message: Build round completed after 896 seconds.
09:53:36fs-bluebotBuild Server message: Revision 317908e8c3 result: All green
09:53:42fs-bluebotBuild Server message: New build round started. Revision 7d7850368e, 293 builds, 9 clients.
10:01:37***Saving seen data "./dancer.seen"
10:07:18fs-bluebotBuild Server message: Build round completed after 817 seconds.
10:07:20fs-bluebotBuild Server message: Revision 7d7850368e result: All green
10:07:21fs-bluebotBuild Server message: New build round started. Revision 7d7a3156d3, 293 builds, 9 clients.
10:20:00 Quit jdarnley (Ping timeout: 246 seconds)
10:20:36 Join J_Darnley [0] (
10:20:37fs-bluebotBuild Server message: Build round completed after 795 seconds.
10:20:39fs-bluebotBuild Server message: Revision 7d7a3156d3 result: All green
10:24:10 Join jdarnley [0] (
10:26:36 Quit J_Darnley (Ping timeout: 240 seconds)
11:13:08 Join melmothX [0] (~marco@unaffiliated/melmothx)
11:36:56 Quit jdarnley (Ping timeout: 240 seconds)
11:37:58 Join J_Darnley [0] (
12:01:40***Saving seen data "./dancer.seen"
12:24:53 Join chris_s [0] (
12:28:50chris_sspeachy: I'm curious myself and may be able to test it on an Ipod video one of these days. The 4G continues to run perfectly in that configuration :)
12:28:51chris_sI think I have to bother you about g#3122 again, which I'd last mentioned here on the 18th. A user has suggested on the forums (,53758.msg247895) that there may be issues with the new behavior that I've documented in g#3130. If the change is kept, it would probably require additional code and documentation
12:28:51chris_sto also display "Play Next" in the Context menu when playback is stopped (and have it work as expected), so that the use case where you *want* to delete the dynamic playlist before adding more songs is covered. The necessary changes would be minor as far as I can tell. I'd take a shot at offering up an implementation for review unless someone else
12:28:52DBUGEnqueued KICK chris_s
12:28:52chris_swants to.
12:28:52chris_sAlternatively (or additionally) g#3122 would have to be reverted (and I'd abandon the related documentation g#3130), at least for the time being, despite the fact that I still feel it is somewhat user-hostile to delete the dynamic playlist when wording (and behavior in other playback states) imo suggests you're adding something to it.
12:28:58fs-bluebotGerrit review #3122 at : Don’t erase a user’s stopped dynamic playlist when inserting/queuing songs by Christian Soffke
12:28:58fs-bluebotGerrit review #3130 at : Update manual to reflect new behavior from abebc6b by Christian Soffke
12:28:58fs-bluebotGerrit review #3122 at : Don’t erase a user’s stopped dynamic playlist when inserting/queuing songs by Christian Soffke
12:28:59DBUGEnqueued KICK fs-bluebot
12:28:59fs-bluebotGerrit review #3130 at : Update manual to reflect new behavior from abebc6b by Christian Soffke
12:32:19 Quit chris_s (Quit: Connection closed)
13:01:22 Quit JanC (Remote host closed the connection)
13:01:51 Join JanC [0] (~janc@lugwv/member/JanC)
13:07:43 Quit akaWolf1 (Read error: Connection reset by peer)
13:07:51 Join akaWolf [0] (~akaWolf@unaffiliated/akawolf)
14:01:42***Saving seen data "./dancer.seen"
14:19:09 Quit ac_laptop (Ping timeout: 264 seconds)
15:03:52 Join S|h|a|w|n [0] (~shawn156@unaffiliated/shawn156)
15:06:27 Join bonfire [0] (
15:07:27 Join ac_laptop [0] (~ac_laptop@
15:10:58 Join vitt13_ [0] (~vitt13@
15:11:04 Quit vitt13 (Ping timeout: 276 seconds)
15:12:43 Quit vitt13_ (Read error: Connection reset by peer)
15:12:49 Join vitt13__ [0] (~vitt13@
15:12:55 Quit vitt13__ (Client Quit)
15:45:58speachychris_s: I suspect it's "just" a matter of the clocks, we might need a higher minimum clock if UDMA>=2; it's not immediately clear if the CPU is being appropriately boosted during disk accesses.
15:49:20 Quit koniu (Remote host closed the connection)
15:49:48 Join koniu [0] (~koniu@gateway/tor-sasl/koniu)
16:01:43***Saving seen data "./dancer.seen"
16:59:53 Quit St3ak (Quit: Free ZNC ~ Powered by LunarBNC:
17:02:47 Join St3ak [0] (
17:09:24 Join amachronic [0] (5284ba4f@
17:10:44amachronicHi all, I've been working on a bare-metal port of Rockbox to the FiiO M3K and I'm hoping to push it upstream now.
17:11:54amachronicis it alright if I push the changes to gerrit? Thanks
17:15:48braewoodsamachronic: define bare metal?
17:16:53amachronicRockbox is running in kernel mode on the hardware −− not under Linux.
17:17:51amachronicthere's already a port for the M3K which is Linux based but it has issues
17:18:12braewoodsspeachy: ^
17:19:24 Quit advcomp2019 (Read error: Connection reset by peer)
17:20:53 Join advcomp2019 [0] (
17:20:53 Quit advcomp2019 (Changing host)
17:20:53 Join advcomp2019 [0] (~advcomp20@unaffiliated/advcomp2019)
17:25:09 Quit lebellium (Quit: Leaving)
17:29:31 Nick skrzyp1 is now known as skrzyp (
17:32:53speachyamachronic: by all means!
17:33:48speachyamachronic: curious to see what changes you made to the exisitng MIPS core, because I'd love to see the other X1000-based devices ditch linux and run natively
17:37:20amachronicjust pushed to gerrit
17:40:11amachroniccurrently this is very work in progress, but it can boot over USB and navigate in the rockbox menus. can browse the filesystem, but no audio yet.
17:43:41speachyamachronic: only one minor comment so far. I'm inclined to immediately merge everything up to the new port.
17:43:56speachywhich is going to take some time to wade through
17:45:02amachronica word of warning: I renamed the old Linux-based port −− I don't know if any rockbox infrastructure will break because of this.
17:45:59speachyI was cehcking on that. we don't currently have anything m3k in the infrastructure.
17:50:40fs-bluebotBuild Server message: New build round started. Revision b8945734f5, 293 builds, 9 clients.
17:59:38speachyamachronic: the bootloader doesn't seem to do anything except show the splash screen?
18:00:46amachronicyes, it's incomplete. to get that working, we need to implement reading from flash.
18:01:20speachy...or just boot from SD?
18:01:30fs-bluebotBuild Server message: Build round completed after 650 seconds.
18:01:32fs-bluebotBuild Server message: Revision b8945734f5 result: All green
18:01:33fs-bluebotBuild Server message: New build round started. Revision 96019d23aa, 293 builds, 9 clients.
18:01:37amachronicProblem with SD boot is that the chip is hardwired to boot from flash
18:01:46***Saving seen data "./dancer.seen"
18:01:59amachronicTo get SD boot working, we'd need to overwrite the flash bootloader with garbage
18:02:08amachronicthat would trigger a fallback to SD boot.
18:02:28speachyI mean, what's to stop that bootloader from initializing the SD interface and loading the rockbox binary off of SD?
18:02:45amachronicThe "bootloader" is not really the first thing run on boot.
18:02:55amachronicThe chip only loads 12 KiB of code from flash (the SPL)
18:02:57speachyyeah, the SPL etc.
18:03:10amachronicSo there's no room to implement a proper SD driver
18:03:23amachronicThis was my first idea, but it got really hard to manage the code size even with optimizations on
18:03:46amachronicmy plan is: overwrite the stock SPL with ours
18:03:57amachronicthen use some empty space in the flash to embed the Rockbox bootloader
18:04:04amachronicand then the Rockbox bootloader loads Rockbox from the SD card.
18:04:49CtcpIgnored 3 channel CTCP requests in 21 hours and 4 minutes at the last flood
18:04:49*speachy nods.
18:06:01speachysound should be relatively easy; the x1000's I2S & DMA engine is almost identical to the jz4760, except that it has a working circular DMA setup so true HW double-buffering can be used
18:06:45speachy(meaning the horrid intterrupt overhead won't bite us so badly under heavy load, like it did on the jz4760..)
18:07:21speachythough since the x1000 is true mips32r2 there's more efficient interrupt handling in the CPU core.
18:07:39amachronicI don't know if it is actually mips32r2
18:08:30amachronicI read somewhere it implements some r2 functionality, but not all of it
18:11:11speachyit at least implements the full r2 instruction set
18:12:17speachyand Linux thinks it's a full R2 as well
18:12:25amachronichmm..  you notice in the manual it's only integer instructions that they claim release 2 support
18:12:43amachronicand the other support is just XBurst release ii
18:13:05fs-bluebotBuild Server message: Build round completed after 692 seconds.
18:13:09speachyrockbox doesn't use floating point, aside from a singlular codec that's only built on hosted targets
18:13:11fs-bluebotBuild Server message: Revision 96019d23aa result: All green
18:13:12fs-bluebotBuild Server message: New build round started. Revision 6224efb238, 293 builds, 9 clients.
18:23:09fs-bluebotBuild Server message: Build round completed after 597 seconds.
18:23:11fs-bluebotBuild Server message: Revision 6224efb238 result: 154 errors 0 warnings
18:23:12fs-bluebotBuild Server message: New build round started. Revision ef685cc6da, 293 builds, 9 clients.
18:32:18fs-bluebotBuild Server message: Build round completed after 546 seconds.
18:32:20fs-bluebotBuild Server message: Revision ef685cc6da result: 155 errors 0 warnings
18:32:21fs-bluebotBuild Server message: New build round started. Revision dad23a0607, 293 builds, 9 clients.
18:32:34 Quit pamaury (Ping timeout: 276 seconds)
18:35:56 Quit plum (Quit: mulp)
18:36:14 Join plum [0] (~plum@unaffiliated/plum)
18:36:31speachyamachronic: looks like the TOOLSET fix broke some stuff. grr.
18:40:16speachyok, fix pushed, it'll end up built eventually.
18:42:50fs-bluebotBuild Server message: Build round completed after 630 seconds.
18:42:53fs-bluebotBuild Server message: Revision dad23a0607 result: 153 errors 0 warnings
18:42:54fs-bluebotBuild Server message: New build round started. Revision 55dc86f5db, 293 builds, 9 clients.
18:43:08speachythe build running now should be clean.
18:48:42speachyamachronic: please submit a patch adding yourself to docs/CREDITS too
18:49:02speachyforgot to ask before I started merging things
18:51:15amachronicjust pushed to gerrit
18:51:44amachronicforgot about this myself ;)
18:52:57fs-bluebotBuild Server message: Build round completed after 604 seconds.
18:52:59fs-bluebotBuild Server message: Revision 55dc86f5db result: All green
18:53:41fs-bluebotBuild Server message: New build round started. Revision aacb0811d9, 293 builds, 9 clients.
18:56:04speachyso what do you see as your next steps here?
18:56:13speachyget sound going?
18:58:47amachronicyep, need to implement sound
18:58:59amachronicI think the SD driver could be broken
18:59:15amachronicthe LCD needs to be update to use DMA −− I couldn't get it working
18:59:26amachroniccurrently it is absurdly slow, so that will cause a problem for sound
18:59:45speachywell, not if sound is using double-buffered DMA. :D
19:00:22speachythe xduoo x3 basically bitbangs out its display updates, but it's tiny and monocromic so isn't so bad.
19:00:43speachyis the m3k's display wired up via the LCD controller, or via i2c/spi?
19:01:01amachronicit is wired to the LCD controller; and from my testing, the FiiO takes 28 ms to update a full frame in register mode
19:01:10speachy(Or I guess I can read your source, heh)
19:01:27speachyouch, that's pretty bad. but it's not blocking out interrupts during that time, correct?
19:01:54amachronicit shouldn't be, it's just a lot of busy waiting
19:02:10amachronicso it might need some yields added to it
19:02:56amachronicabout DMA double buffering: how exactly does this work?
19:03:08amachronic(I'm not very experienced with low level stuff)
19:03:33amachronicDMA is the main reason I have held off the audio
19:04:01speachythe idea is there are two DMA buffers. we get an interrupt after each one is complete, so by the time the next one is consumed we've re-filled the first.
19:04:34fs-bluebotBuild Server message: Build round completed after 654 seconds.
19:04:37fs-bluebotBuild Server message: Revision aacb0811d9 result: 3 errors 0 warnings
19:04:38fs-bluebotBuild Server message: New build round started. Revision a3d41098c7, 293 builds, 9 clients.
19:04:38amachronicah, makes sense...
19:05:16speachyI recommend looking at the jz4760 code, with g#2751 applied on top.
19:05:18fs-bluebotGerrit review #2751 at : jz4760: (very) WIP: Use double-buffered DMA for PCM data. by Solomon Peachy
19:06:44speachyrockbox actually does double-buffering internally, but the problem is that due to the MIPS32r1 irq overhead (and if any other interrupt is being serviced!) we simply can't point the audiohw at the second buffer before we underrun.
19:08:10speachyI'd done quite a lot of optimizations of the lowlevel irq code, but since the CPU core has no sense of nestable/preemptable interrupts it would have to be entirely implemented in software. I started working on it but decided it just wasn't worth it.
19:08:46amachronicyeah, I don't think even ingenic's linux does nested interrupts.
19:08:52speachymips32r2 has considerable improvements in that regard.
19:09:31speachy(<=r1 has a _single_ interrupt as far as the CPU is concerned; it's up to software to figure out what's what)
19:09:45amachronicwell, that's basically what I've got
19:09:55amachronicI started off by copying the jz4760
19:09:59speachythis is one area where I really miss ARM's Cortex-M NVIC.
19:10:40speachyI _think_ the 4760 i2s code should work unmodified on the x1000.
19:10:59speachyincluding DMA.
19:11:06amachronicI haven't really looked at the I2S on the x1000 yet
19:11:18speachy(it seemed that way when I looked into it many moons ago)
19:11:26amachronicI have got some code for bring up the FiiO's DAC
19:11:38amachronicbut it isn't tested
19:11:49speachyso for a first cut at the audio stuff all you really need to worry about is setting up the DAC.
19:13:37speachyI'd also implemented reclocking on the 4760 but it led to faint audio artifacts. I'm curious to see if the X1000 is able to do better.
19:14:24amachronicalright, I'll start working on the audio tomorrow
19:15:05amachronicin terms of the clock setup, right now I run everything off of the APLL
19:15:29amachronicThat way I can save the MPLL for driving the Fiio's DAC.
19:15:39fs-bluebotBuild Server message: Build round completed after 661 seconds.
19:15:41fs-bluebotBuild Server message: Revision a3d41098c7 result: 3 errors 0 warnings
19:16:02amachronicThe original firmware does run several things off the MPLL though
19:16:21amachronicI saw the commits mentioning clock problems with the jz4760
19:16:23speachyIIRC there are some peripherals that can only run on one of 'em.
19:16:47amachronicon the X1000 we can choose freely
19:16:53speachybut I only ever gave the X1000's clock tree a cursory overview.
19:17:08amachronicthe main issue is that the clock dividers are very simple
19:17:12speachyI do recall it had fewer restrictions
19:17:47amachronicwith my setup it's generally not possible to give the same clock rates that the OF uses
19:27:59speachylooking ahead, it would be highly preferable to figure out a way to dual-boot the OF with your native port.
19:28:08 Quit ac_laptop (Ping timeout: 265 seconds)
19:29:41amachronicI did investigate that a while ago, and I found there was an empty spot in the flash.
19:30:28amachronicso our SPL can just load Linux itself, or load the rockbox bootloader from flash
19:30:56amachronicthere's really no way to boot Rockbox without overwriting _something_ on the flash.
19:33:32speachyyeah, but finding space shouldn't be a big deal −− if nothing else, the OF "bootloader" isn't using anywhere near the full capacity of its erase block.
19:35:08amachronicIIRC, we only have about 80 or 90 KiB of space at the front.
19:35:18amachronicIt's enough that the bootloader should fit though
19:36:24speachythe x3's bootloader binary is 86KiB.
19:39:13amachronici think if I remove the logo, the bootloader I committed is around 40 KiB
19:44:36speachyand can probably nuke all display features too
20:01:49***Saving seen data "./dancer.seen"
20:07:41 Quit amachronic (Quit: Connection closed)
20:36:01 Join massiveH [0] (
21:47:21 Quit MrZeus (Ping timeout: 264 seconds)
21:52:57fs-bluebotBuild Server message: New build round started. Revision 13c7f482ce, 293 builds, 9 clients.
22:01:53***Saving seen data "./dancer.seen"
22:03:43fs-bluebotBuild Server message: Build round completed after 646 seconds.
22:03:45fs-bluebotBuild Server message: Revision 13c7f482ce result: All green
22:12:28 Quit Saijin_Naib (Disconnected by services)
22:12:32 Join Saijin-Naib [0] (
22:31:14 Quit Saijin-Naib (Ping timeout: 264 seconds)
22:59:40 Join f1reflyylmao [0] (
23:01:09 Quit f1refly (Ping timeout: 272 seconds)
23:01:09 Nick f1reflyylmao is now known as f1refly (

Previous day | Next day