06:53:46 | Sammy | shake shake shake ... |
08:20:40 | Russ | morning erikm |
08:21:15 | Russ | this camion board is the most disorganized board I've ever seen as far as what goes where |
08:23:45 | Russ | you'd think that if there were a keypad of buttons, they would all be handled the same way... |
08:24:00 | Russ | but 4 are with ucb1300 gpio's, and 2 are with sa1110 gpio's |
08:36:08 | Sammy | Russ: the camion board info url is ? |
08:36:24 | erikm | Russ: that sounds awful |
08:42:03 | Sammy | hello erikm ... |
08:43:54 | erikm | hi Sammy |
10:37:57 | seletz | hi |
12:36:57 | Fare | Gakuk! |
12:37:17 | erikm | Fare: you can just use an arm-linux cross compiler |
12:37:47 | erikm | Fare: the gcc-2.95.3 version available from ftp.arm.linux.org.uk or www.lart.tudelft.nl works pretty well |
12:39:21 | Fare | I installed a debian package from wherever. |
12:39:46 | erikm | emdebian.org, I suppose |
12:39:54 | erikm | should work as well |
12:41:45 | Fare | deb http://www.emdebian.org/emdebian unstable main |
12:43:41 | Fare | hum. WinCE is in ROM, not in Flash. |
12:44:12 | Fare | I use a flashcard (seen as ide drive) for persistent RAM. |
12:44:32 | Fare | can blob help me? |
12:44:43 | Fare | (i.e. I *must* run from WinCE 2.11) |
12:46:35 | erikm | Fare: sure, you can also chain-boot into blob |
12:46:54 | erikm | Fare: I've done that for ipaq, chainbooted from bootldr |
12:46:56 | Fare | you mean, using hpcboot to chain into blob? |
12:47:09 | erikm | that's also possible |
12:47:22 | erikm | you need to modify the chain loader to disable the mmu in that case, though |
12:47:28 | Fare | what would you recommend? |
12:47:32 | erikm | Russ might have code for that |
12:47:48 | erikm | if hpcboot works, it's the easiest to let it chain-boot into blob |
12:48:03 | Fare | how can I check whether it activated the mmu, or whether it's just the framebuffer being physically mapped at 0xc0000000 ? |
12:48:04 | erikm | later on you can do a native blob boot |
12:48:20 | Fare | (the latter seems more plausible) |
12:48:38 | erikm | Fare: check out the SA1100 manual. there are some registers in coprocessor 15 |
12:49:22 | Fare | ok |
12:49:26 | Fare | wait, lunchtime |
12:49:34 | erikm | Fare: the sa1100 manual is available at www.lart.tudelft.nl |
13:32:29 | Fare | is back |
14:04:53 | Fare | should I start my "port" with a mimick of the jornada 720 port, or with a mimick of some SA1100 board? |
14:06:17 | erikm | better take an sa1100 board |
14:06:35 | erikm | LART is a good one to take, it's waht I always work on |
14:06:51 | Fare | ok |
14:07:05 | erikm | the jornada 720 needs some kind of extra flash board |
14:07:29 | erikm | if you're first going to do the chain loader, you don't have to bother with the memory settings |
14:08:06 | erikm | (yet) |
14:09:12 | Fare | hum. will blob read files from the compactflash card? |
14:09:56 | erikm | Fare: the CVS version contains code to do that, but it's not yet mature. seletz is working on it |
14:10:07 | Fare | I think the 720 has flash ram. The 820 only has ROM, but it has a CompactFlash extension (reduced-size and reduced-functionality PCMCIA slot, where memory appears as an IDE device) |
14:10:29 | erikm | Fare: does it run WinCE right now? if so, it has RAM |
14:10:35 | Fare | yes it does |
14:10:43 | erikm | ok, so there is ram as well |
14:10:59 | Fare | doesn't even imagine a computer without RAM. |
14:11:13 | Fare | but well yes, it has a RAMdisk |
14:11:15 | erikm | some embedded controllers don't have any |
14:11:48 | Fare | I'm sure they have at least a few hundred bytes of on-board scratch RAM. |
14:12:17 | Fare | but ok, I see what you mean. |
14:12:45 | erikm | *nod* some 128 bytes of scratch ram. or a large register set |
14:14:37 | Fare | what should I put instead of BLOB_FLASH_OBJS="intel32.o" ? |
14:15:07 | erikm | just go with the dummy flash driver for the time being |
14:15:47 | Fare | what's its name? |
14:16:17 | erikm | dummy.o, IIRC |
14:17:32 | erikm | no, nullflash.o |
14:17:44 | Fare | thanks |
14:21:13 | Fare | for 190MHz, what should CPU_SPEED be? |
14:21:32 | erikm | 0x09, IIRC, but you don't have to care for the chain loader |
14:21:51 | Fare | ok |
14:22:00 | erikm | just make a note that you have to check that later on |
14:22:24 | Fare | the J820 has 16MB of RAM. I can't imagine that it'd be more than one bank, but who knows? |
14:22:55 | Fare | there is an optional 16MB RAM extension (wish I had one), and I don't know how to detect it. |
14:23:57 | erikm | don't care about the RAM. blob will detect it automatically and tell the kernel about the banks |
14:24:21 | Fare | lart has 0xb, jornada720 (210MHz) has 0x9 |
14:25:11 | erikm | it depends on the core crystal and the exact sa1100 version |
14:25:22 | Fare | ok |
14:26:09 | Fare | there is a LED on the batteries. I don't know if they are GPIO-programmed, or directly wired to some circuit in the batteries (indicate if it's charging, etc.) |
14:27:34 | Fare | the j720 has a lot of additional #defines in arch/jornada720.h |
14:31:29 | Fare | I suppose the ARCH number is the one rmk sent to me... |
14:34:07 | erikm | yes |
14:35:45 | Fare | what about stuff in memsetup-sa1100.c ? |
14:35:53 | Fare | just copy the LART entry? |
14:37:30 | erikm | yes |
14:37:46 | Fare | do I need a flash descriptor for the nullflash, or can I do without? |
14:47:29 | Fare | ? |
14:47:40 | erikm | *nod* |
14:52:37 | Fare | checking whether the C compiler (/usr/bin/arm-linux-gcc ) works... no |
14:52:41 | Fare | ??? |
14:52:53 | Fare | yet I've compiled a kernel with it |
14:53:39 | erikm | check configure.log |
14:54:24 | Fare | /usr/arm-linux/bin/ld: cannot open crt1.o: No such file or directory |
14:54:34 | erikm | hmm |
14:54:54 | erikm | hmm. probably a compiler without libc |
14:55:10 | erikm | shouldn |
14:55:22 | erikm | shouldn't mater, but configure checks for it |
14:55:37 | erikm | try to install an arm-linux libc as well |
14:55:48 | erikm | strange that emdebian broke it up in several packages |
14:55:57 | Fare | yup |
14:56:09 | Fare | anwhen I apt-get'ed it, the libc was broken |
14:56:20 | Fare | let's see if it's fixed since my bug report.. |
15:03:45 | Fare | do I need C++? I hope not |
15:04:32 | erikm | no |
15:04:44 | erikm | blob is plain C and some assembly |
15:06:04 | Fare | hum. |
15:06:11 | Fare | using dselect was a bad idea |
15:07:41 | Fare | cancels and apt-gets packages on the command line |
15:09:04 | Fare | wonders why the debian people use text files everywhere |
15:09:41 | Fare | Err http://www.emdebian.org unstable/main libc6-dev-arm 2.1.3-8e4 |
15:09:42 | Fare | ouch |
15:09:51 | Fare | not found |
15:09:52 | erikm | because that's the only way to do it right |
15:10:10 | erikm | Fare: just get the tarball from ftp.arm.linux.org.uk or www.lart.tudelft.nl |
15:11:20 | seletz | hi again |
15:11:26 | seletz | reding back |
15:13:42 | Fare | Hi, seletz |
15:13:47 | seletz | hi |
15:13:59 | seletz | Fare: live-porting session, eh? |
15:14:24 | seletz | prpplague: hi |
15:15:40 | Fare | yup |
15:16:05 | Fare | the .deb is _all in the repository, but the _all is missing in the listing files. |
15:16:09 | Fare | gets the .deb by hand |
15:16:45 | seletz | Fare: why dont you just take Erik's pre-compiled tool chain? |
15:18:44 | erikm | seletz: nah, if he can get the libc deb he's already ok, and it's less stuff to download |
15:19:00 | seletz | well, ok |
15:19:01 | Fare | the one from january 25th 2001 ? |
15:19:31 | erikm | Fare: don't know the date. the 2.95.3 version is ok |
15:20:24 | Fare | should I --enable-maintainer-mode ? |
15:21:17 | Fare | ok, now I get configure: error: Unknown board name, bailing out |
15:21:26 | Fare | I suppose I have missed a step in porting.txt |
15:23:12 | seletz | have you added your board to configure.in? |
15:23:13 | erikm | --enable-maintainer-mode is nice, it automatically recreates things like configure, Makefile, etc. when you edit the source files |
15:24:41 | Fare | in configure.in, yes |
15:25:02 | erikm | after editing configure.in you need to run tools/rebuild-gcc |
15:25:32 | seletz | ok, i need a break |
15:25:39 | seletz | brb |
15:26:07 | Fare | erikm: ok, that was the missing step |
15:26:13 | Fare | where was it documented? |
15:26:24 | Fare | maybe I should add it to porting.txt ? |
15:26:27 | erikm | Fare: possible that I forgot :) |
15:26:36 | erikm | Fare: sure. make it a separate patch |
15:26:56 | Fare | hum. I don't know how to make separate patches |
15:27:06 | Fare | but well, ok |
15:32:08 | Fare | hum. ./configure now runs fine. |
15:32:34 | Fare | compilation is underway |
15:33:01 | Fare | it fails on diag |
15:33:18 | erikm | doesn't matter |
15:33:21 | Fare | should I also dummy-port diag, or should I exclude it from compilation? |
15:33:39 | erikm | just let it break on that, blob is alredy compiled |
15:33:43 | Fare | ok |
15:33:52 | Fare | now for testing? |
15:33:59 | erikm | a dummy port is fairly easy to do, it needs even less changes than blob |
15:34:48 | Fare | blob-chain? |
15:34:58 | erikm | yes |
15:37:25 | Fare | ok, I dummy-ported diag, too |
15:42:40 | Fare | hpcboot tells me: boot failed, can't jump into the kernel |
15:43:28 | Russ | prpplague: do you have any idea what connector that debugging connector is (ie, who makes it) |
15:43:55 | Fare | shouldn't I be using something like "blob-chain-elf32" ? |
15:44:17 | Fare | because hpcboot obviously wants an elf binary to boot |
15:45:29 | erikm | Fare: sounds broken. blob is a plain bootloader, no ELF involved |
15:46:32 | Fare | yes, but hpcboot is an elf bootloader |
15:46:37 | erikm | Fare: see if hpcboot can load non-ELF objects. if it is also able to jump to arbitrary locations, you're saved |
15:46:42 | Fare | so if I want to chain from hpcboot, I need blob to be elf |
15:47:04 | Fare | maybe just objcopy blob into an elf ? |
15:47:29 | erikm | Fare: that could do the trick |
15:47:53 | Fare | I see other -elf32 blob files. maybe just copy the way they are? |
15:48:05 | erikm | Fare: if not, you can use objcopy to put blob-chain in an .o file with the contents in the .data section. make sure there also is an entry point |
15:48:21 | prpplague | Russ: no, i did a search for that but didn't find it |
15:48:23 | erikm | Fare: then make a small piece of code that jumps to the entry point, and you'rer set |
15:48:52 | erikm | Fare: you can't use the -elf32 stuff. it's what the compiler generates, but you can't use it to boot |
15:51:15 | Fare | Hum. |
15:51:50 | Fare | I hav something urgent to do, then I'll be back |
15:52:11 | Fare | should I make it a statically loaded elf at 0xc0000000 ? |
15:52:20 | Fare | or at another address? |
15:52:31 | Fare | is it relocatable code? |
15:52:44 | Fare | or must I execute it from a fixed address? |
15:55:00 | erikm | Fare: the chain loader will relocate itself |
15:55:22 | erikm | Fare: but be careful that source and destination don't overlap |
15:56:33 | Fare | hum. How can I determine source and destination? |
15:56:43 | Fare | can't it do a safe memcpy ? |
15:57:08 | Fare | I mean , memmove |
15:57:34 | Russ | prpplague: thats where jtag is |
15:58:41 | erikm | Fare: the chain loader will do that for you . you aonly have to take care that the chain loader doesn't overlap with its destination |
15:59:11 | erikm | so if your BLOB_START is at 0xc01000000 don't put the ELF start entry at 0xc0000000 |
16:04:17 | Fare | I'm a bit baffled |
16:06:44 | Fare | vmlinux has LOAD off 0x00008000 vaddr 0xc0008000 paddr 0xc0008000 align 2**15 |
16:06:47 | prpplague | Russ: ya thats what i found out, time to get the soldering iron |
16:07:07 | Fare | should I do the same with blob ? or otherwise? |
16:07:20 | Fare | apparently, this information is heeded by hpcboot |
16:10:09 | Fare | or should I use 0xc0100000 0xc0100000 for blob? |
16:11:37 | Fare | BLOB_RAM_BASE is 0xc0100000 |
16:12:39 | erikm | Fare: don't look at what linux does |
16:12:46 | erikm | Fare: blob will take care about that |
16:13:34 | erikm | Fare: if BLOB_RAM_BASE is 0xc0100000, you have to take care that whereever you load the blob ELF'ed image, it shouldn't overlap with BLOB_RAM_BASE |
16:16:41 | Fare | ok |
16:16:56 | Fare | then would 0xc0000000 be ok? |
16:17:08 | Fare | or 0xc0008000 ? |
16:17:56 | erikm | nope |
16:18:11 | erikm | better take 0xc0100000 as the entry point |
16:18:25 | erikm | that's BLOB_RAM_BASE, and that's guaranteed free |
16:18:39 | erikm | was confused |
16:19:01 | erikm | I don't have the source ready right here, so I'm doing things from memory |
16:19:16 | erikm | BLOB_RAM_BASE is where blob should download a new blob image to |
16:19:31 | erikm | there is another variable, BLOB_START IIRC |
16:19:41 | erikm | that's the blob-rest entry point |
16:20:01 | erikm | so the start of the blob-chain loader should not overlap with BLOB_START |
16:25:23 | Fare | I can't find BLOB_START by grepping |
16:26:28 | Fare | ld -Ttext 0xc0008000 -b binary blob-chain -o blob-chain-elf32 seems to works, but produces 32KB of 0 |
16:26:29 | erikm | Fare: check chain.S and see what destination it uses. again I don't have the source right here, I'm doing things from memory |
16:26:40 | erikm | Fare: that wil most definatively fail |
16:27:09 | Fare | BLOB_START: .word BLOB_ABS_BASE_ADDR |
16:27:25 | Fare | I was only grepping in *.[hc] which explains why I didn't find it |
16:27:29 | erikm | Fare: for starters 0xc0008000 usually is BLOB_ABS_BASE_ADDR |
16:27:49 | erikm | and copying the second stage loader over the first stage loader *will* fail |
16:28:42 | Fare | include/blob/arch/jornada820.h:#define BLOB_ABS_BASE_ADDR (0xc0200400) |
16:28:49 | Fare | (same as lart and jornada720) |
16:29:29 | erikm | ok, there is *something* at 0xc0008000. I can't remember what, but there is something |
16:31:12 | Fare | can't get rid of those 32kb of 0, but that's ok, since hpcboot will handle a blob.gz |
16:32:41 | Fare | it blanked the screen |
16:32:49 | Fare | I suppose it worked |
16:33:06 | erikm | blob doesnt' touch he screen |
16:33:30 | erikm | how did you upload? through serial port? |
16:33:31 | Fare | hum. |
16:33:40 | Fare | through ethernet, while in wince |
16:34:08 | erikm | but I suppose the jornada has some kind of serial port |
16:34:19 | Fare | I download files onto the compactflash card using internet explorer, from a hidden directory on my web server |
16:34:42 | erikm | I mean: it would be a bad idea not to do, especially if you get the serial ports for free in the CPU |
16:35:35 | Fare | the jornada has a serial port with a proprietary cable that I tested to work ok in WinCE (with some horrible software to synch with windows 98) |
16:36:01 | erikm | ok, same with the compaq ipaq. the cable is proprietary, but it works |
16:36:53 | Fare | both lart and j720 said they had serial3, so I left serial 3 here |
16:40:27 | Fare | just tested the cable at 19200 under WinCE -- can talk to kernmit just fine! |
16:42:28 | Fare | ok, tried again with hpcboot & blob.gz |
16:42:30 | erikm | Fare: blob usually starts at 9k6 unless you changed that |
16:42:39 | Fare | I got ~` in my serial console... |
16:42:51 | Fare | oh, I didn't change anything |
16:42:55 | erikm | ok, that's usually a sign that the baud rate is wrong |
16:42:56 | Fare | ok, will retry at 9600 |
16:42:59 | erikm | switch to 9k6 |
16:45:15 | Fare | wow I just saw WinCE ask me a question in text mode ! |
16:46:05 | Fare | blob booted! |
16:46:10 | Fare | bFFFF!c@Fcc# |
16:46:12 | Fare | Consider |
16:46:28 | Fare | it rul3z! |
16:46:50 | Fare | ahem. well, now what? |
16:47:37 | erikm | cool! |
16:48:13 | erikm | ok, now for the kernel. |
16:48:49 | erikm | what blob version did you take , 2.0.5-pre2 or the CVS version? |
16:49:15 | Fare | -pre2 |
16:49:29 | Fare | sure. |
16:49:39 | Fare | ok, so where should I begin from? |
16:49:48 | Fare | I'll remove those mov r1, #MACH_SA* |
16:50:00 | erikm | yes, that's no longer necessary |
16:50:28 | erikm | IIRC blob-2.0.5-pre2 automatically includes the xmodem download code |
16:50:48 | erikm | otherwise see if ./configure --help mentions it |
16:51:08 | erikm | the xmodem download is much faster than the uuencode downloader, especially if you use a 1k blocksize |
16:52:44 | erikm | for kernel port: take lart as an example so you get a basic port |
16:53:27 | erikm | first try to get the kernel at the point that it starts complaining about missing ramdisks |
16:54:33 | Fare | wouldn't zmodem be better? though not if I'm sending a zImage, I suppose |
16:54:34 | erikm | from that point you can get the lart-ramdis-1.0 from http://www.lart.tudelft.nl/lartware/ramdisk/ , upload it as a ramdisk to blob and see if the kernel is able to boot it |
16:54:51 | erikm | Fare: zmodem is overkill. we might want to do ymodem, though |
16:55:41 | erikm | Fare: zmodem has all kind of nice features that allow it to work on bad telephone lines, but that's really overkill for direct serial lines |
16:55:49 | Fare | ok |
16:55:56 | erikm | Fare: plus that zmodem requires a lot of code to do it right |
16:56:07 | Fare | hum |
16:56:14 | erikm | Fare: and one of the design rules of blob is to keep it simple |
16:57:42 | Fare | ok |
16:58:10 | Fare | I suppose I should configure the kernel to have a kernel console |
16:58:32 | Fare | could I configure blob and the kernel to work at 19200, 38400 or 115200 ? |
16:58:58 | erikm | yes, there are hacks for that |
16:59:25 | erikm | there already is a large #ifdef in src/blob/main.c that does it for certain args |
16:59:33 | Fare | certain args? |
17:00:03 | erikm | architectures |
17:00:09 | Fare | blob seems hung after it prints "Consider " |
17:00:22 | erikm | strange |
17:00:25 | erikm | shouldn't happen |
17:00:36 | erikm | if it prints something it means that it reaches main |
17:00:50 | erikm | chech main.c to see what's happening after the consider part |
17:05:00 | Russ|werk | I saw a computer once |
17:05:10 | Russ|werk | where someone tweaked the settings in bios |
17:05:14 | Russ|werk | and it booted, and said |
17:05:19 | Fare | Consider yourself LARTed!\n\n |
17:05:28 | Russ|werk | "Press DEL if you want to" |
17:06:00 | Russ|werk | kind of taunting you, press DEL if you want to, it won't get you back into bios, but try it anyway |
17:06:00 | erikm | BZFlag: hiya tim |
17:06:13 | Russ|werk | (the full message would be "Press DEL if you want to enter setup" |
17:13:51 | Fare | 115200 doesn't look like it worked - I get `````````````````````` |
17:14:50 | Russ|werk | Fare: do you have any leds? |
17:15:34 | erikm | Fare: for some designs 115k2 is too fast. try a bit slower |
17:15:38 | Fare | there is one on the batteries, but I'm not sure it's software-controllable |
17:17:21 | Russ|werk | Fare: what about the backlight? |
17:19:54 | Fare | at 38400, I get the Consider yourself LARTed!\n\n |
17:20:14 | Fare | I suppose I should tell kermit to do lf->crlf translation |
17:20:49 | Fare | it's still a crash |
17:20:57 | Fare | because main.c outputs lots of things |
17:21:08 | Fare | accelerating output makes me get more stuff before crash |
17:21:24 | Fare | I suppose some interrupt is generated and the system crashes |
17:21:32 | Fare | maybe a FIQ? |
17:21:44 | Fare | backlight? the LCD dies black |
17:22:35 | Fare | It smells like a crash |
17:22:39 | erikm | Fare: blob expects interrupts to be disabled because it normally runs as the first program |
17:22:57 | Fare | erikm: maybe that's a bug in hpcboot |
17:23:19 | erikm | Fare: it *could* be that the CPU is not in SVC mode, and blob tries to enable the I-cache, which is a priviledged instruction |
17:23:56 | erikm | Fare: so the CPU generates a trap, and it tries to execute the trap handler which might already be overwritten |
17:24:08 | Fare | hum. |
17:24:25 | Fare | it crashes while outputing stuff on serial |
17:25:12 | Fare | the current function is SerialOutputString(...) |
17:26:47 | Fare | at that point, it's not trying to mess with SVC mode |
17:27:10 | erikm | well, I know there is some kind of deadlock on the serial input driver, haven't seen it crash in the output stuff |
17:27:10 | Fare | it looks like only one of the two \n got printed, too |
17:28:16 | Fare | my guess is that it isn't the serial driver, but another interrupt source, that is causing trouble |
17:28:43 | Fare | a source that leaves us just enough time to print a few characters |
17:29:33 | Fare | (also, the first line I get is fffffffffff~`f so maybe the ~` does indicate trouble with the serial line) |
17:30:02 | Fare | the fact that the faster the console, the more characters I get might mean a clock interrupt after a fixed time or so. |
17:30:04 | erikm | could be garbage still in the output queue |
17:31:05 | Fare | let's assume it's garbage. |
17:32:15 | Fare | or maybe my eth nic is generating interrupts? |
17:32:36 | erikm | could be |
17:33:20 | erikm | there is some code in the sa1100-start.S that disables all interrupts, you could try to paste that into chain.S |
17:35:16 | Fare | by setting the console at 19200, I can see that the first line was actually HPCBOOT sending stuff |
17:35:39 | Fare | and without the pcmcia NIC, it dies after "Consider y" |
17:35:39 | erikm | set blob to 19k2 as well, so you can see what it says |
17:35:55 | Fare | I did set blob to 19.2 too of course |
17:38:17 | Fare | where is sa1100-start.S ? |
17:38:46 | Fare | you mean memsetup-sa1100.S ? |
17:40:34 | erikm | Fare: sorry, I'm confused with the CVS version |
17:40:42 | erikm | Fare: in your case it's in start.S |
17:47:12 | Fare | pasting the code that says "disable all interrupts" early into chain.S prevents anything from being output by serial line. |
17:48:08 | erikm | so probably the CPU doesn't run in SVC mode |
17:48:35 | Fare | hum. Bad. |
17:48:58 | Fare | So I need to hack hpcboot ? |
17:49:01 | Fare | baaaad |
17:49:40 | erikm | I'm affraid so |
17:49:43 | Fare | is there some way to detect whether we are in SVC mode, and to output it to the console during our fraction of second of life? |
17:50:29 | erikm | yes, there is. check head-armv kernel stuff in the linux tree. it checks out if it runs in SVC mode for the Assabet+angel bootloader |
17:50:47 | erikm | (well, angel is not a real bootloader, it's actually a piece of crap) |
17:54:55 | Fare | I won't discuss that |
18:07:10 | BZFlag | notes that erikm's option might be biased, but it is accurate none the less. ;-) |
18:07:18 | BZFlag | er opinion... |
18:07:23 | erikm | BZFlag: lol :) |
18:14:17 | erikm | goes home |
18:38:51 | Fare | damn |
19:19:02 | Fare | Grrr! |
19:19:05 | Fare | I'm doomed |
19:19:12 | Fare | I can't even print stuff anymore! |
19:25:10 | Fare | I'm baffled |
19:25:28 | Fare | now I can't get blob to output anything on serial anymore! |
19:25:45 | Russ|werk | Fare: like I said, do you know how to control the backlight |
19:25:57 | Russ|werk | its probably either a gpio or in the BCR (if there is one) |
19:26:00 | Fare | do I? |
19:26:08 | Fare | no I don't know how to do it |
19:26:25 | Fare | I suppose it's in a gpio |
19:26:30 | Fare | where would I find out? |
19:26:32 | Russ|werk | what do you know about the hardware besides "assabet-like" |
19:26:48 | Fare | I've been told more "brutus-like", but then, that's all. |
19:27:02 | Russ|werk | have you cataloged the chips on it? |
19:29:00 | Fare | a friend has gathered docs around http://crista.uni-wuppertal.de/people/oleg/jor820/ |
19:31:30 | Russ|werk | very nice |
19:32:51 | Russ|werk | where is the LED? |
19:33:01 | Fare | on the front - in the batteries |
19:33:11 | Fare | I wouldn't bet that it is GPIO-controlled |
19:33:19 | Russ|werk | where does the trace go? |
19:33:24 | Fare | might as well be hardwired to the led charge/discharge status |
19:33:33 | Fare | the trace from the GPIO ? |
19:33:39 | Fare | the trace from the LED ? |
19:33:43 | Russ|werk | the LED |
19:33:54 | Fare | I haven't dismembered the batteries yet |
19:34:06 | Fare | I would rather program the backlight, actually |
19:34:20 | Russ|werk | you want to locate the rs232 transceivers and see where the line goes that turns them off and on |
19:34:43 | Russ|werk | you may have a BCR, which would be a set of d flip flops, or a CPLD |
19:34:57 | Russ|werk | you want to find out what's controlling the backlight ower |
19:35:00 | Russ|werk | er, power |
19:35:13 | Russ|werk | basically, you just get some probes, and place one at the signals you are looking for |
19:35:27 | Russ|werk | and run the other one down the sides of the chips you think it might go to |
19:35:42 | Russ|werk | if you put the first probe between two pins, you can search for two at once |
19:36:10 | Russ|werk | a lot of times, all the pins an the bga will be available on the opposite side of the board in a feild of via's |
19:37:06 | Russ|werk | the ucb1200 has its io lines going out to places |
19:37:23 | Russ|werk | too bad all the vias are masked |
19:39:05 | Russ|werk | if you are probing, and you think it matches the brutus pretty close |
19:39:12 | Russ|werk | then check the brutus locations first |
19:39:18 | Fare | hum. |
19:39:26 | Fare | Can it be done all in software? |
19:39:55 | Russ|werk | some of its easier in software, some of its easier in hardware |
19:39:56 | Fare | It's not like I've ever been a hardware hacker (or have any hardware probing tools) |
19:40:11 | Russ|werk | you use an ohmmeter |
19:40:23 | Russ|werk | ones that beep when they get 0ohms are helpfull |
19:40:33 | Russ|werk | just make sure its not one thats putting big voltages in |
19:42:57 | Fare | hum |
19:43:10 | Fare | I don't trust my ohmmeter, and it doesn't have useful tips |
19:43:16 | Fare | but I will consider that |
19:46:23 | Russ|werk | I have a cheap rat shack one I use |
19:47:08 | Russ|werk | its also usefull to grab all the sa1100 registers while CE is running (or after you've chain booted blob) |
19:47:13 | Fare | what baffles me is why I can't capture any blob output anymore, while I could a few hours ago |
19:47:30 | Russ|werk | it gives a good indication about whats an interrupt, whats an input/output, memory timings, what serial port does what, etc |
19:47:42 | Russ|werk | do you have flow control turned on or off |
21:14:04 | Fare | hum |
21:14:11 | Fare | how can I tell about flow control? |
21:14:29 | Fare | it's hardware flow control, as far as I know, but I'm not sure |
21:56:27 | Fare | hum. Now hpcboot rejects my files with "not a native architecture. machine = 3" |
21:56:34 | Fare | I seem to be *regressing* |
21:57:12 | Fare | maybe erikm emitted computrons while he was here, and now there's only I left, who emit bogons |
22:07:16 | russ_ | flashes the router again |
22:10:01 | russ_ | ah, cool |
22:10:09 | russ_ | the ircd connection stayed up though the router reset |
22:18:20 | Fare | hum. |
22:28:45 | Fare | CPSR :600000df |
22:28:51 | Fare | looks like we are in SVC mode |
23:09:14 | Fare | hpcboot reports CPSR :600000df which seems just WRONG |
23:09:53 | Fare | my ARMv7 spec sheet reports no mode with mode bits 11111 |
23:18:50 | Russ|werk | so? |
23:20:15 | Russ|werk | are the others reserved? |
23:51:27 | russ_ | is having too much fun with make image ftp |