--- Log for 16.03.113 Server: sendak.freenode.net Channel: #rockbox --- Nick: Guest7860 Version: Dancer V4.16 Started: 8 days and 19 hours ago 00.01.00 Join AlexP [0] (~alex@rockbox/staff/AlexP) 00.01.04 Quit AlexP (Remote host closed the connection) 00.01.54 Join AlexP [0] (~alex@rockbox/staff/AlexP) 00.03.13 Quit AlexP (Remote host closed the connection) 00.08.20 Join AlexP [0] (~alex@rockbox/staff/AlexP) 00.08.42 Quit AlexP (Remote host closed the connection) 00.11.24 Quit zoktar (Ping timeout: 240 seconds) 00.11.40 Join AlexP [0] (~alex@rockbox/staff/AlexP) 00.15.04 Quit lebellium (Quit: ChatZilla 0.9.90 [Firefox 20.0/20130313170052]) 00.19.33 Join zoktar [0] (~zoktar@unaffiliated/zoktar) 00.23.54 Join kadoban [0] (~kadoban@ip98-165-177-158.ph.ph.cox.net) 00.28.14 Join krabador [0] (~krabador@host229-217-dynamic.117-80-r.retail.telecomitalia.it) 00.30.45 Quit liar (Remote host closed the connection) 00.44.49 *** Saving seen data "./dancer.seen" 00.45.25 Quit Raptors (Ping timeout: 245 seconds) 00.46.07 Join Raptors [0] (~whoneedsa@216-58-33-203.cpe.distributel.net) 00.46.31 Quit ender` (Quit: Democracy: the theory that the common people know what they want and deserve to get it good and hard. -- H. L. Mencken) 00.46.35 Quit Raptors (Read error: Connection reset by peer) 00.47.07 Join Raptors [0] (~whoneedsa@216-58-33-203.cpe.distributel.net) 01.31.14 Quit jhMikeS (Quit: Confucius say: The short dandelion survive the lawnmower) 01.36.29 Quit bertrik (Ping timeout: 264 seconds) 02.13.24 Quit pamaury (Ping timeout: 256 seconds) 02.35.42 Join kaputnik__ [0] (~kaputnik@p5DD9E262.dip.t-dialin.net) 02.44.51 *** Saving seen data "./dancer.seen" 02.54.01 Quit kiwicam (Remote host closed the connection) 02.55.04 Join kiwicam [0] (~quassel@101.98.163.139) 02.56.44 Join onyxice [0] (~Onyx@nat.mtp.cmsinter.net) 03.13.28 Join dhrasmus [0] (~dhrasmus@173-23-133-55.client.mchsi.com) 03.16.46 Join kugel_ [0] (~kugel@141.45.176.104) 03.16.46 Quit kugel_ (Changing host) 03.16.46 Join kugel_ [0] (~kugel@rockbox/developer/kugel) 03.18.22 Quit kugel (Read error: Connection reset by peer) 03.23.17 Quit [Saint] (Remote host closed the connection) 03.25.34 Join [Saint] [0] (~saint@rockbox/user/saint) 03.38.26 Quit prof_wolfff (Ping timeout: 245 seconds) 03.48.54 Quit dhrasmus (Quit: Leaving) 04.20.18 Quit pixelma (Disconnected by services) 04.20.19 Quit amiconn (Disconnected by services) 04.20.19 Join pixelma_ [0] (pixelma@rockbox/staff/pixelma) 04.20.20 Join amiconn_ [0] (amiconn@rockbox/developer/amiconn) 04.20.21 Nick pixelma_ is now known as pixelma (pixelma@rockbox/staff/pixelma) 04.20.24 Nick amiconn_ is now known as amiconn (amiconn@rockbox/developer/amiconn) 04.21.12 Quit krabador (Ping timeout: 264 seconds) 04.33.41 Join Scr0mple [0] (~Simon@119.225.209.134) 04.36.13 Quit Scromple_ (Ping timeout: 258 seconds) 04.44.53 *** Saving seen data "./dancer.seen" 05.00.35 Join kevku [0] (~kevku@2001:470:27:773:0:feed:c0f:fee) 05.13.20 Quit Rower (Quit: Hmmm...) 05.14.53 Join TheSphinX^ [0] (~briehl@p5DD45183.dip.t-dialin.net) 05.15.46 Quit TheSphinX_ (Read error: Operation timed out) 05.28.05 Join jhMikeS [0] (~jethead71@50.4.240.19) 05.28.06 Quit jhMikeS (Changing host) 05.28.06 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) 05.34.54 Quit TheSeven (Disconnected by services) 05.35.03 Join [7] [0] (~quassel@rockbox/developer/TheSeven) 05.55.11 Quit fs-bluebot (Ping timeout: 258 seconds) 05.56.17 Quit bluebrother (Ping timeout: 245 seconds) 05.56.32 Join fs-bluebot [0] (~fs-bluebo@g224239007.adsl.alicedsl.de) 05.58.30 Join bluebrother [0] (~dom@rockbox/developer/bluebrother) 06.01.57 Join dfkt [0] (dfkt@unaffiliated/dfkt) 06.02.55 Quit dfkt_ (Ping timeout: 264 seconds) 06.36.07 Join akaWolf [0] (~akaWolf@unaffiliated/akawolf) 06.37.19 Quit SuperBrainAK (Quit: pbly going to sleep /_\) 06.44.57 *** Saving seen data "./dancer.seen" 06.45.47 Quit B4gder (Ping timeout: 258 seconds) 06.47.11 Join B4gder [241] (~daniel@rockbox/developer/bagder) 07.49.53 Join froggyman [0] (~me@unaffiliated/froggyman) 08.04.17 Join melmothX [0] (~melmoth@unaffiliated/melmothx) 08.06.10 Quit froggyman (Ping timeout: 256 seconds) 08.19.57 Join stoffel [0] (~quassel@pD9E43926.dip.t-dialin.net) 08.22.13 Quit melmothX (Quit: bau) 08.30.48 Join pretty_function [0] (~sigBART@123.252.215.202) 08.42.59 Quit pretty_function (Remote host closed the connection) 08.45.01 *** Saving seen data "./dancer.seen" 09.16.22 Join ender` [0] (~ender@foo.eternallybored.org) 09.21.22 Quit shamus (Read error: Connection reset by peer) 09.21.44 Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) 09.27.19 Quit jhMikeS (Ping timeout: 246 seconds) 09.44.09 Quit stoffel (Ping timeout: 245 seconds) 09.54.22 Join kaputnik_ [0] (~kaputnik@p5DD9ECF6.dip.t-dialin.net) 09.58.21 Quit kaputnik__ (Ping timeout: 276 seconds) 10.12.07 Join stoffel [0] (~quassel@pD9E43926.dip.t-dialin.net) 10.12.29 Join bertrik [0] (~quassel@rockbox/developer/bertrik) 10.13.54 Quit DexterLB (Read error: Connection reset by peer) 10.18.48 Join DexterLB [0] (~dex@77-85-25-2.btc-net.bg) 10.19.59 Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 10.45.05 *** Saving seen data "./dancer.seen" 10.53.01 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 10.57.34 Join liar [0] (~liar@clnet-p09-185.ikbnet.co.at) 11.02.02 Join melmothX [0] (~melmoth@unaffiliated/melmothx) 11.10.33 Quit onyxice (Ping timeout: 245 seconds) 11.16.15 Quit pamaury (Remote host closed the connection) 11.17.24 Quit DexterLB (Read error: Connection reset by peer) 11.22.24 Join DexterLB [0] (~dex@77-85-25-2.btc-net.bg) 11.22.30 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 11.47.27 Join prof_wolfff [0] (~prof_wolf@62.83.50.196.dyn.user.ono.com) 11.47.55 Quit lebellium (Remote host closed the connection) 11.48.31 Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 11.53.59 Quit GodEater (Ping timeout: 260 seconds) 12.06.49 Join lorenzo92 [0] (~chatzilla@host117-104-dynamic.41-79-r.retail.telecomitalia.it) 12.16.16 Quit stoffel (Ping timeout: 245 seconds) 12.20.43 Join GodEater [0] (~whoknows@b0fb2b92.bb.sky.com) 12.23.57 Join petur [0] (~petur@rockbox/developer/petur) 12.38.23 Quit liar (Remote host closed the connection) 12.45.08 *** Saving seen data "./dancer.seen" 12.54.56 Quit lorenzo92 (Remote host closed the connection) 12.55.40 Quit dokan__ (Ping timeout: 252 seconds) 13.05.30 Join Ward [0] (~Mirandaha@bpb01-1-88-162-4-186.fbx.proxad.net) 13.05.54 Nick Ward is now known as Guest85221 (~Mirandaha@bpb01-1-88-162-4-186.fbx.proxad.net) 13.10.26 Quit lebellium (Quit: ChatZilla 0.9.90 [Firefox 20.0/20130313170052]) 13.18.27 Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 13.23.13 Join dokan [0] (~minatani@ac250006.ppp.asahi-net.or.jp) 13.50.58 Quit kaputnik_ (Ping timeout: 245 seconds) 13.56.12 Join mortalis [0] (~mortalis@77.108.98.176) 14.20.44 Nick kugel_ is now known as kugel (~kugel@rockbox/developer/kugel) 14.21.19 Nick [Saint] is now known as this (~saint@rockbox/user/saint) 14.21.28 Nick this is now known as [Saint] (~saint@rockbox/user/saint) 14.23.50 Join kaputnik_ [0] (~kaputnik@p5DD9ECF6.dip.t-dialin.net) 14.42.41 # hey, reverse engineering a usb driver when you have no idea how the usb core works is funny 14.45.12 *** Saving seen data "./dancer.seen" 14.46.56 # can you just sniff what the official app sends? 14.47.56 # if that makes any sense 14.57.34 Quit shamus (Read error: Connection reset by peer) 14.57.52 Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) 14.59.16 # bertrik: I mean the usb driver of the OF 14.59.31 # I don't know the registers 15.00.01 # I don't have any registers anyway, of any peripheral 15.15.20 Quit Xerion (Read error: No route to host) 15.19.35 # Torne: have you seen cortex-m devices where the ranges 0x61000000-0x61ffffff and 0x62000000-0x62ffffff are used by peripherals 15.19.49 # no idea. 15.19.57 # on rknano it seems to be used by usb and these cannot be only data structures in ram 15.20.30 # armv7 manuals says this range is supposed to be cached but it doesn't match what I see here, very confusing 15.22.37 # if it's an M0 that's not v7, though 15.22.47 # M0 is ARMv6-M, which is a weird inbetween thing 15.22.58 # (doesn't implement most of the Thumb2 instruciton set, but does have some of it) 15.23.26 # do you have examples instructions on v7-M but not on v6-M ? 15.23.48 # no idea, i don't have the v[67]-M ARMs handy anywhere 15.29.29 # ok, I think I'll first try to formally identify the core used, I have a master evil plan to do that 16.25.38 # * Torne starts seriously poking at this ipod with an ssd :) 16.31.28 Join Xerion [0] (~xerion@5419F5F4.cm-5-2d.dynamic.ziggo.nl) 16.45.13 *** Saving seen data "./dancer.seen" 17.07.11 Join krabador [0] (~krabador@host24-55-dynamic.244-95-r.retail.telecomitalia.it) 17.14.57 # hm, okay, so this is fairly consistently failing in check_registers in ata.c 17.15.12 # it writes a test pattern to the NSECTOR/SECTOR/LCYL/HCYL registers and reads it back 17.15.16 # and it gets the wrong values every single time 17.15.32 # either they are switched, or duplicated, or corrupt by one bit, or zero 17.15.46 # the device status reported it was ready just fine 17.15.55 # but its registers appear to be useless 17.16.09 # any guesses? :) 17.17.56 # you need a ATA expert it seems 17.18.06 # pamaury: *he* is the ATA expert :) 17.18.50 # i dunno about that 17.18.53 # :) 17.19.07 # but probabyl more than most of us :/ 17.19.11 # and i still have no fucking idea. 17.19.22 # it does this both before and after hardresetting the device 17.19.33 # this is some SATA -> IDE converter interface i'm talking to 17.19.37 # not the SSD itself, which is mSATA 17.19.43 # so its' quite possible that interface is real shitty 17.19.48 # but it works perfectly in the OF 17.20.02 # and it seems to work in the rockbox bootloader as well, it's only in the actual binary that it chokes 17.20.19 # and no, there's no BOOTLOADER dependent code in the ata driver itself :/ 17.20.43 # * pamaury has forgotten everything about ATA 17.21.08 # i have all the specs in front of me :) 17.22.48 # hahaha 17.22.59 # erm, so it looks like if you just comment out check_registers it works ;) 17.23.12 # lol. 17.23.21 # mounts over USB just fine 17.23.28 # though i haven't got a .rockbox directory so it's a bit upset 17.23.46 # some timing issue perhaps? 17.24.17 # actually iw ould guess that the sata/ide converter's chip doesn't implement read back of these registers correctly 17.24.23 # you don't normally need to read them 17.24.28 # since they are just the addresses 17.25.18 # those four registers are N/A on output for almost all commands 17.25.31 # the spec says they are read/write, but hey 17.25.56 # Oh, hmmmm 17.26.02 # actually, okay, they are used for tagged command queueing 17.26.25 # so the SATA interface may be fucking them up because of that ;) 17.26.45 # command queueing is not valid in non-PACKET devices in PATA (i.e. it's only for cdrom drives) 17.26.51 # but it's used in SATA on disks 17.27.18 # * Torne builds a full build with that patch and tests stuff. 17.37.42 Quit kadoban (Read error: Operation timed out) 17.40.21 Join kadoban [0] (~kadoban@ip98-165-177-158.ph.ph.cox.net) 17.44.15 Join Rower [0] (husvagn@v-413-alfarv-177.bitnet.nu) 17.49.04 # hm, this is werid 17.49.07 # it boots, plays music 17.49.20 # and it can write "small" things, like the config file and playlist control 17.49.28 # but if i try to write to it over usb i get errors 17.49.41 # and if i do anything on the device that tries to do large writes it hangs (e.g. initialising database) 17.57.39 # Check Your Filesystem(TM) :) 17.57.47 # pff 17.57.52 # the fs is fine 17.58.05 # rpetty sure the driver is still broken 17.58.13 # kidding :p 17.58.18 # so now i'm wondering why we even have check_registers() in the first place 17.58.25 # given that we *never* rely on reading those registers at all 17.58.36 # and it has been there since the first checked in version of ata.c in 2002 17.58.45 # perhaps git blame can tell 17.58.48 # nope 17.58.54 # it was there in the original copy of the archos ata driver 17.59.02 # in svn r163 :) 18.00.29 # the only change anyone ever made to it is to make it retry 64 times with a 1 tick sleep 18.00.35 # originally it only tried once before failing 18.00.44 # and that was in a commit with a bunch of other changes and doesn't explain why 18.00.49 # the magic of ATA drivers 18.00.57 # i am tempted to just remove it 18.01.18 # it seems that from the day ATA was invented, it was flawn with buggy implementations 18.01.23 # yup 18.01.32 # right, but the original code here doesn't even wait/retry 18.01.46 # it literally just writes some values, reads them back, and if they aren't the same, it dies 18.01.51 # i.e. you can't boot 18.02.05 # the later version retries 64 times 18.02.13 # but if after 64 tries it doesn't work then the same 18.02.23 # so it's not clear how this can be a workaround for a bug 18.02.49 # it seems more like it was just someone's sanity check that sounded like a good idea, and then later it was found not to work on some device but it happened that if you tried over and over it would succeed eventually :) 18.03.00 # but it never succeeds on this thing 18.03.04 # even after 1000 tries ;) 18.03.07 # (10 seconds) 18.03.23 # and the disk is clearly functional because if you skip it then it can read anything you like 18.04.26 # anyway enough for now 18.04.37 # i'll borrow someone's machine to restore it in itunes just to make sure the fs is okay 18.04.48 # and retest what reads/writes work 18.05.01 # but the people with iphones are all out at the moment :) 18.05.47 # at least i now feel less bad about having this guy's expensive ssd ipod 18.05.55 # having made *some* progress ;)o 18.25.39 Join y4n [0] (~y4n@unaffiliated/y4ndexx) 18.36.11 Quit kadoban (Read error: Connection reset by peer) 18.38.34 Join jhMikeS [0] (~jethead71@50.4.240.19) 18.38.34 Quit jhMikeS (Changing host) 18.38.34 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) 18.43.56 Join SuperBrainAK [0] (~Andy@71-36-167-36.phnx.qwest.net) 18.45.16 *** Saving seen data "./dancer.seen" 18.47.54 Quit kaputnik_ (Ping timeout: 264 seconds) 18.57.54 Quit jhMikeS (Ping timeout: 252 seconds) 19.09.13 Part ryan_ramage 19.22.58 Quit shamus (Read error: Connection reset by peer) 19.23.46 Join shamus [0] (~shmaus@ip-206-192-195-49.marylandheights.ip.cablemo.net) 19.25.34 Quit lebellium (Read error: Connection reset by peer) 19.26.04 Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 19.37.44 Join kadoban [0] (~kadoban@ip98-165-177-158.ph.ph.cox.net) 20.00.04 Join lebellium_ [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 20.01.25 Quit XavierGr (Read error: Operation timed out) 20.02.06 Join kaputnik_ [0] (~kaputnik@p5DD9ECF6.dip.t-dialin.net) 20.02.31 Quit lebellium (Ping timeout: 245 seconds) 20.02.45 Nick lebellium_ is now known as lebellium (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 20.06.05 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) 20.07.33 Join XavierGr [0] (~XavierGr@2001:41d0:52:100::2e5) 20.07.44 Quit kaputnik_ (Read error: Operation timed out) 20.15.00 Quit kiwicam (Remote host closed the connection) 20.16.45 Quit jhMikeS (Read error: Connection reset by peer) 20.16.57 Join jhMikeS [0] (~jethead71@50.4.240.19) 20.16.57 Quit jhMikeS (Changing host) 20.16.57 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS) 20.18.23 Join kiwicam [0] (~quassel@101.98.163.139) 20.23.18 Join onyxice [0] (~Onyx@nat.mtp.cmsinter.net) 20.31.47 Quit prof_wolfff (Ping timeout: 245 seconds) 20.34.40 Quit DexterLB (Ping timeout: 252 seconds) 20.35.51 Join DexterLB [0] (~dex@95.43.105.211) 20.37.15 # Torne: which register can I read to identify the ARM core ? 20.37.35 # CPUID ? 20.39.22 # pamaury: should work, yes. 20.39.45 # but it depends on the core where you find this register :-) 20.40.28 # is it standard on all cortex-M ? 20.41.17 # ah, yes, for armv7m it's always 0xesomething 20.41.51 # for the A (and I think also R) profile(s) it's a coprocessor that you need to ask. 20.41.53 # ok, I don't know what the core but let's try ^^ I will take some existing code and patch it, very ugly but let's hope :) 20.42.43 # pamaury: which processor do you have? (In case you know ...) 20.43.34 Quit lebellium (Read error: No route to host) 20.43.41 # the SoC is the RKNano-B, it's an ARM processor, using Thumb/Thumb-2 for sure, but I don't know more than this. Reverse engineering shows some registers at 0xe... 20.43.53 # 0xE000ED00 20.43.54 # my guess is that it's a Cortex-M3 20.44.04 Join lebellium [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 20.44.13 # but I don't have any datasheet, I don't know any register of that thing ^^ 20.45.19 *** Saving seen data "./dancer.seen" 20.45.48 # In case you have questions regarding the architecture. I ported Linux to an M3 and have a good contact into ARM. 20.47.11 # good :) first I need to identify the core, but then well, it will be 100% reverse engineering 20.47.24 # read 0xE000ED00 20.48.35 # it's good to read it, it's better to be able to get the value on something you can read with your eye :) that's why it's tricky 20.51.25 # which ways you currently have to interact with the cpu? 20.53.40 # I managed to descramble a stub send in DFU mode which uses USB. I found a way to modify it and think I will be able to trick it into sending the cpuid value instead of, say, the USB PID or VID 20.55.37 # the expectation is that *0xE000ED00 & 0xf0000 == 0xf0000 21.10.44 # what is simplest way to load 0xE000ED00 into r0 in Thumb ? (I want to avoid Thumb-2 as much as possible since I don't know the core) 21.10.54 # (in a position independent way) 21.12.52 # anyone with an android device around? 21.16.05 # mov r0, #0xe000000 21.16.13 # orr r0, #0xed00 21.16.21 # ldr r0, [r0] 21.16.41 # oh, you could even save another instruction by merging the latter two 21.17.13 # mov r0, #0xe000000; ldr r0, [r0, #0xed00]; 21.26.54 # kugel: i have one 21.31.56 Quit melmothX (Quit: $@) 21.49.17 Join froggyman [0] (~me@msoe-00033403.nebula.msoe.edu) 21.49.17 Quit froggyman (Changing host) 21.49.17 Join froggyman [0] (~me@unaffiliated/froggyman) 21.49.59 Quit mortalis (Quit: KVIrc 4.3.1 Aria http://www.kvirc.net/) 21.52.36 Quit SuperBrainAK (Ping timeout: 248 seconds) 21.54.07 Quit akaWolf (Ping timeout: 256 seconds) 21.55.42 Quit froggyman (Ping timeout: 264 seconds) 22.03.32 # user890104: can you test a patch? 22.05.14 # kugel: sure, can you make a build? i don't have a development machine set up 22.15.54 # user890104: what resolution? 22.16.12 # 320x480 22.18.01 # user890104: which phone is this? 22.18.19 # sony xperia go, android 4.0.3 22.18.49 # what does the patch do? 22.20.00 # rewrite audio playback a bit 22.20.47 # user890104: http://www.alice-dsl.net/simonemartitz/rockbox/rockbox.apk 22.22.44 # ok, installed 22.23.57 # just see if it still plays audio as before :) 22.24.18 # yes, it does 22.24.32 # is there anything specific that could break? 22.24.57 # nope 22.26.07 # ok, so it's fine :) 22.26.10 # great :9 22.27.55 # don't know if this has been discussed, but is it possible to have a single build, regardless of the resolutions, and have the OS choose the correct images on startup? 22.28.31 # no, rockbox can't support this currently 22.30.17 # i see 22.45.20 *** Saving seen data "./dancer.seen" 22.48.29 Join stripwax [0] (~Miranda@rockbox/developer/stripwax) 22.48.52 Quit petur (Quit: Leaving) 22.56.00 Join lebellium_ [0] (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 22.56.14 Quit y4n (Quit: PÆNTS ØLF!) 22.57.31 Quit lebellium (Ping timeout: 245 seconds) 22.57.39 Nick lebellium_ is now known as lebellium (~chatzilla@lns-c10k-ld-02-m-212-194-176-149.dsl.sta.abo.bbox.fr) 23.01.40 Quit kevku (Ping timeout: 245 seconds) 23.03.32 Quit kadoban (Ping timeout: 276 seconds) 23.04.50 Quit ender` (Quit: It's amazing how the the human mind does not process the the fact I used the the word "the" twice each time.) 23.07.22 Join kadoban [0] (~kadoban@ip98-165-177-158.ph.ph.cox.net) 23.18.59 Quit stripwax (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) 23.39.46 Quit Guest85221 (Read error: Connection reset by peer)