01:53:21 | Sammy | Yo :) |
02:58:27 | Sammy | knee how prpplague :) |
02:58:55 | prpplague | wo han |
02:59:53 | prpplague | how |
06:38:29 | asami | anyone knows clart's flash spec? |
07:11:13 | asami | anyone knows clart's flash spec? |
08:47:37 | asami | anyone knows clart's flash spec? |
09:37:28 | Russ | yes amrutha? |
09:38:04 | Sammy | Yo Russ |
09:55:58 | Sammy | echo " Russ " |
09:56:37 | Sammy | echo " still " |
09:56:40 | Sammy | echo " Kernel panic: No init found. Try passing init= option to kernel. " |
10:05:20 | amrutha | i need a little help regrading the blob |
10:13:37 | Sammy | what help ? |
10:21:08 | Sammy | Yo erikm , you back .... |
10:22:01 | erikm | yes |
10:23:22 | Sammy | erikm : anything new ? |
10:24:28 | erikm | not really |
10:25:40 | Sammy | ohhh... 2.0.5 pre2 a little big ... |
10:26:11 | Sammy | 35364 Dec 5 18:35 blob |
10:26:41 | Sammy | but I add some debug massage |
10:56:06 | erikm | yes, a bootloader with all features and debug messages can be quite large |
11:04:20 | Sammy | Dinner .......time |
12:00:19 | seletz | hi! |
12:02:10 | skanda | seletz: I need help regrading certain aspect of the blob |
12:02:16 | skanda | could you please help me |
12:02:28 | seletz | skanda: what kind of help :) |
12:02:42 | seletz | skanda: i'll helf if i can |
12:02:49 | seletz | s/helf/help/ |
12:02:59 | skanda | ok |
12:03:14 | skanda | I am trying to implement a flash tester on the Assabet |
12:03:31 | seletz | skanda: ok. What's the problem? |
12:03:47 | skanda | All I do is, start the blob, run a Diagnostic to test the flash integrity and move on |
12:04:21 | skanda | since I cannot test the flash while I am executing instructions from the flash itself, I try to branch to the SDRAM |
12:04:47 | seletz | skanda: ok. |
12:04:58 | seletz | skanda: is sdram initialized a that point? |
12:04:59 | skanda | but before that I try to dump the necessary flash testing code to the RAM and start executing instruction from the RAM |
12:05:04 | skanda | yup |
12:05:30 | skanda | initializd as in setting up all critical parameters like SLFRSH |
12:05:37 | seletz | skanda: AFAIK blob already copies itself as soon as possible to ram and starts executing from it. |
12:06:12 | skanda | really, but I thought once you JFlash it, blob sits in the FLASH |
12:06:14 | seletz | skanda: all C code is executed from RAM in fact. |
12:06:21 | skanda | and executes code from there |
12:06:32 | seletz | skanda: yes. thats right. |
12:06:46 | seletz | skanda: blob is stored as a whole in flash |
12:06:49 | skanda | so how will it copy itself to the RAM |
12:06:54 | skanda | ok |
12:06:55 | seletz | skanda: but consists of 2 parts |
12:07:02 | skanda | ok |
12:07:09 | seletz | skanda: one part is pure assembly |
12:07:17 | seletz | skanda: one part is C code |
12:07:41 | skanda | i understand now |
12:08:02 | skanda | no but my idea goes something like this ok |
12:08:06 | seletz | skanda: the assembly part sets up SDRAM, initializes the serial port, checks memory areas to be used, and initializes a C stack. Then it branches to c_main(). |
12:08:21 | skanda | ok I get it |
12:08:49 | skanda | but I am trying to check the flash before C code is reached, |
12:09:09 | skanda | if a flash failure occurs, the blob should never set up a C stack |
12:09:17 | seletz | skanda: why? |
12:09:44 | skanda | lets say as part of a routine check or as part of something like POST |
12:09:50 | skanda | ok |
12:10:33 | seletz | skanda: why do you want to use assebmbly code for that? I'd rather use C as soon as possible. |
12:11:12 | seletz | skanda: even a POST routine can be easy made in C. In fact, diag has quite some bit of C code for that already. |
12:11:55 | skanda | seletz: ...right now..as diag, i have checked the sdram. next on my list is to check the flash.i have to use assembly for everything. |
12:12:05 | seletz | skanda: When your flash is completely hosed up and blob is corrupted, then you're out of luck anyway IMHO. |
12:12:45 | seletz | skanda: Why? Flash access is ready to use in Blob already, and those routines are pure C. |
12:13:06 | skanda | exactly:thats why I need to branch to the SDRAM thru Assembly, perform checks on a random blocks |
12:13:25 | skanda | and continue with normal boot if FLASH is okay |
12:13:58 | seletz | skanda: IMHO what you really want is a CRC checksum of the blob partition. |
12:14:07 | skanda | yup |
12:14:30 | seletz | skanda: and a bit of assembly check of that checksum, stored in BLOB object. |
12:14:39 | skanda | ok |
12:14:53 | skanda | seletz: how do i go about that? |
12:15:47 | seletz | skanda: well, I'm not completely sure, but i guess someone already has written an assebly CRC32 routine for ARM. Maybe it's in the kernel somewhere. |
12:16:49 | seletz | skanda: To be honest, a CRC32 command that calculates CRC32 sums of arbitary Memory blocks is on my wish list for quite some time now. |
12:17:11 | seletz | skanda: Hmm, I'll talk to erik when he's back from lunch. |
12:17:26 | skanda | ok, wow |
12:17:35 | seletz | skanda: He's a bit more into assembly code than myself ... |
12:17:41 | skanda | seletz:lemme clear my doubts..now.. |
12:17:59 | skanda | once the blob is being written..i have modified the blob to check the sdram. |
12:18:20 | skanda | so..u thimk checking the flash is meaningless..?? |
12:18:37 | skanda | since the blob is written into the flash.. |
12:18:47 | seletz | skanda: ok, let me explain my thoughts again. |
12:18:55 | skanda | my idea was.. |
12:19:08 | skanda | one portion of flash is writrten with blob |
12:19:48 | skanda | i needed to check the other blocks of flash.. |
12:19:48 | skanda | how do i do that? |
12:20:36 | skanda | 8well |
12:20:50 | seletz | skanda: ok, take this scenario for a start: I have a handheld-device built in large-scale numbers, delivered to customers who use them |
12:21:04 | seletz | skanda: Blob is used to boot linux. So. |
12:21:05 | skanda | ok |
12:21:09 | skanda | right |
12:21:43 | seletz | skanda: The main concern now is: how does one make sure that blob does not get corrupted during a OS updade/FS update or similar, and |
12:21:55 | seletz | skanda: how does one detect if blob was corrupted. |
12:22:13 | skanda | only at run time |
12:22:23 | seletz | skanda: AND how does one verify that those updates got correctly uploadfed. |
12:22:49 | seletz | skanda: so, if we had a CRC32 routine boild into blob, and if we had a |
12:22:59 | skanda | ok |
12:23:36 | seletz | skanda: pre-calculated (compile-time) crc32 sum compiled into blob, then we could check taht every |
12:23:41 | seletz | skanda: startup. If it does'nt match, we refuse to boot. Service time, basta. |
12:24:14 | seletz | skanda: the crc32 routine checks whole mem blocks, so it is nearly 100% sure |
12:24:23 | seletz | skanda: thet if the sums match |
12:24:29 | skanda | so..the checksum is a constant right. |
12:24:45 | seletz | skanda: yes, say a 32 bit hex number. |
12:25:15 | seletz | skanda: up/downloads _could_ done the same way. |
12:25:21 | seletz | skanda: and more so: |
12:25:44 | seletz | skanda if one writes a flash area with new content (kernel update) |
12:26:02 | seletz | skanda: one could calculate the sum after the write and |
12:26:18 | seletz | skanda: make sure, that the content in flash is ok. |
12:26:39 | seletz | skanda: so, when your flash wears off and you get write errors/or |
12:26:54 | seletz | skanda: "loose" any bits, you detect them immediately. |
12:27:25 | seletz | skanda: agreed? |
12:27:55 | skanda | seletz:don't you think..sum varies for any new right? |
12:28:33 | seletz | skanda: yes, the checksum is different for every version of blob/kernel/whatever. |
12:28:43 | seletz | skanda: the trick is: |
12:29:00 | skanda | sorry.. new write into the flash? |
12:29:08 | seletz | skanda: pre-calculate the sum of a known-good image |
12:29:19 | seletz | skanda: store that image into flash |
12:29:40 | seletz | skanda: re-calculate the checksum using the new content in flash |
12:30:00 | skanda | provided the code remains the same for all the handhelds i write.. |
12:30:10 | seletz | skanda: and compare. the sums (pre-calculated and the online-calculated) must match. |
12:30:41 | seletz | skanda: one could even store the sum in the same image, say the first 4 bytes of the image ist he sum of the rest |
12:31:49 | seletz | skanda: there's even a unix command: "sum" |
12:32:27 | skanda | lemme4 understand.. |
12:32:32 | seletz | skanda: all that packaging of an image could be done in a shell script of, say 4-8 lines. |
12:33:06 | seletz | skanda: on moment pls, let me get som caffeine ... :) |
12:33:11 | seletz | getting coffe |
12:33:19 | skanda | okie..so i have an image..precalsulated...wuith a working flash.. |
12:33:39 | skanda | next i load the next flash...calculate image length there and check right? |
12:46:17 | seletz | back |
12:46:45 | seletz | skanda: yes. right. |
12:47:11 | seletz | skanda: for every flash write you have to calc the checksum of the written flash area. |
12:47:30 | seletz | skanda: and compare the result with the pre-calculated checksum. |
12:48:16 | seletz | skanda: a dedicated flash-tester would write random blocks of data from memory (SDRAM) to |
12:48:35 | seletz | skanda: flash and does the same thing. Compare two checksums. |
12:57:57 | skanda | ok |
12:58:01 | skanda | sorry for the delay |
12:58:19 | seletz | np |
13:02:55 | skanda | thanx a lot seletz, will look into it right now |
13:03:28 | skanda | but I will certainly need more help from you in the course of my implementation |
13:03:31 | skanda | ok |
13:04:15 | seletz | skanda: yes, ok. |
13:04:36 | seletz | ok folks, i'have to boot win2000 (eeeek!) now, so long .... |
14:18:06 | seletz | hi again |
14:19:44 | seletz | Sammy: hi! |
14:20:12 | Sammy | seletz : knee how |
14:25:27 | Sammy | kaun nee ge wa : erikm , seletz , Russ, |
14:26:04 | seletz | "woa heng mang" is all i can say in chinese ... |
14:30:43 | Sammy | ohh...I can't image that word , seletz what's that mean ? |
14:30:54 | seletz | "i am very busy" |
14:30:59 | seletz | sort of. |
14:31:18 | seletz | perhaps "hen mang" |
14:31:29 | seletz | dont know how to write. |
14:31:42 | Sammy | oh, I know , |
14:32:19 | Sammy | let me show you ....want moment |
14:40:48 | Sammy | seletz: check here http://211.75.21.252/chinese.jpg |
14:44:24 | Sammy | and both the same to pronounce , but second line most use on your sex time ( you know ) "a long long time ....". |
14:47:59 | Sammy | change place ... |
14:48:04 | Sammy | later |
14:56:37 | seletz | cool. learning chinese on #blob :) |
15:00:12 | prpplague | monring all |
15:00:27 | seletz | prpplague: evening! |
15:00:34 | seletz | :) |
15:18:39 | sammy_wms | is back again ... |
15:20:54 | sammy_wms | prpplague: some new words you can check out in http://211.75.21.252/chinese.jpg |
15:29:32 | prpplague | cool |
15:56:01 | sammy_wms | remember someone say "tea" is good for health ... suggest everyone can try it :) |
15:56:22 | prpplague | erikm: hey, i'm still a little new to cvs, i'm using the anonymous cvs access to get blob, there isn't anything i could do to screw up the cvs server is there? |
15:57:34 | prpplague | gets his cup and heads to the kitchen for a cup of china green tea.... |
15:57:41 | seletz | prpplague: no, as long as you not doing wild commits of hacked code nothing bat can happen ... |
15:58:51 | prpplague | seletz: no commits on my part |
15:59:22 | prpplague | seletz: except to a crazy house maybe |
15:59:22 | seletz | so nothing bad can happen. ;) |
16:00:37 | prpplague | seletz: it took 3 weeks to convince our winblows sysadm to open up ssh and cvs ports on the firewall |
16:02:45 | seletz | oh my. same over here. |
16:14:40 | prpplague | seletz: winblows sysadm - "i've never heard of this cvs, i'll have to research it make sure its not a security risk" in the mean time the entre sales department is down due to gone.scr |
16:16:16 | seletz | they never hear about anything other than M$ news. There, of course, do no secutity risks in M$ software exist. Only secutity issues in "non-compatible" software. |
16:16:57 | seletz | so, it ends up in everything non-M$-compilant is a secutity hazard per se. |
16:19:03 | prpplague | seletz: i've been pounding our local republican hq about bush's choice of an M$ guy for computer security post |
16:20:11 | seletz | prpplague: what do you expect of someone who making a man as ashcroft responsible for law&order ... |
16:20:55 | prpplague | seletz: well, i'm normally a big bush supporter however, his choices regarding technology have been terrible |
16:22:13 | seletz | prpplague: My guess is that this "unamerican" open-source software movement will be banned sooner or later. |
16:22:55 | prpplague | seletz: ya, i see a battle coming soon over open-source |
16:23:27 | prpplague | seletz: i'm a law abiding citizen, but i'll never use m$ products ever again |
16:23:53 | prpplague | seletz: even if its against the law to use open-source |
16:26:42 | seletz | prpplague: No offense meant, but i always find it funny how an country which has "freedom" on its banner such restrictive laws. I mean freedom of talk etc. |
16:28:11 | seletz | prpplague: _and_ in such a erm, quite funny way, too. One is _not_ allowed to say the f-word, but one can legally deny the holocaust. phew, thats's what i dont understand. |
16:28:13 | prpplague | seletz: i agree, but you have to understand that vast majority of ppl in the U.S. are uneducated, which means complicated issues like open-source can really be mis-understood a large group of ppl |
16:28:35 | seletz | prpplague: agreed, big point. |
16:29:15 | prpplague | seletz: and most people believe that the U.S. is a democracy, its not, its a representative democracy |
16:29:44 | prpplague | seletz: the founders never believed that the average citizen would be educated enough to properly debated an important topic |
16:30:27 | prpplague | seletz: thats why elect an official who sound be trustworthy enough to educate him/herself on the topic and vote his mind |
16:31:08 | seletz | prpplague: Ah, so we don't have a democracy, but a olegarchy (dont know the word in english): There rule few who are "educated" enough to rule. |
16:31:20 | prpplague | seletz: unfortunately, our representatives have become all to concerned with popular vote rather than educated vote |
16:31:48 | seletz | prpplague: btw, much the same is getting on more and more over here. |
16:32:18 | prpplague | seletz: well, its a little different that an olegarchy, because a representative democracy is accountable to the people, olegarchy is not |
16:33:01 | seletz | prpplague: ok, your point. |
16:34:16 | prpplague | sorry for the off topic conversation folks |
16:34:27 | erikm | returns |
16:35:09 | seletz | (hmm, the topic is still 'bout russ needing coffee :D ) |
16:37:22 | erikm | what still wonders me the most about the US is the complete lack of interest about what's going on outside of it |
16:37:45 | seletz | *nod* |
16:38:26 | seletz | _and_ the wide spread believe that the US is always best (no offense meant, tough) |
16:39:12 | erikm | you only see something about a foreign country on TV when: a) the president visits it; b) there is a war going on; c) it's struck by a major disaster |
16:40:13 | prpplague | yes, most ppl in the U.S. barely can name their own state capital much less understand where another country is |
16:41:01 | prpplague | i had to make a trip to canada a few months ago, one of our secretaries asked "isn't that where all those religious wacko's live?" |
16:41:08 | seletz | sorry folks, i lost my time, so im off now .... :( |
16:41:14 | seletz | SIGGIRLFRIEND pending .... |
16:41:18 | prpplague | lol |
16:41:20 | erikm | seletz: heh :) |
16:41:48 | prpplague | seletz: you better hurry before it turns into a kernel OOPS |
16:42:08 | seletz_oopsing | :D |
16:42:30 | erikm | hands seletz kgirlfriendoops |
16:43:59 | prpplague | erikm: ya right, like thats going help debug a girlfriend oops |
16:44:11 | prpplague | erikm: might as be using an m$ product |
16:46:21 | erikm | heh :) |
16:49:24 | prpplague | wahoo, got cvs working behind the firewall |
16:58:08 | prpplague | erikm: hmm, so is the xmodem support working in blob? |
17:04:34 | erikm | prpplague: not yet |
17:08:44 | prpplague | erikm: ok |
17:08:53 | prpplague | erikm: i'm just happy about the cvs |
17:11:15 | erikm | prpplague: heh, me too :) |
17:23:47 | sammy_wms | Amm....here is some problem , with kernel panic : <- he can't find my init ? why ? |
17:24:18 | erikm | sammy_wms: there are usually clues before the kernel panic |
17:24:44 | sammy_wms | but it's the last massage... |
17:26:03 | erikm | sammy_wms: that's what I said |
17:27:40 | sammy_wms | my console root=/dev/mtdblock3 init=/linuxrc |
17:27:56 | sammy_wms | and I am sure have linuxrc in / |
17:29:23 | sammy_wms | but the last massage still show me kernel panic : can 't find init in root , tell me to add command , why ? |
17:31:30 | sammy_wms | even I change init to /sbin/init , it's still can't find , but the file I sure must be there .... |
17:31:32 | erikm | sammy_wms: there are usually clues *before* the last line. something like "can't root fs" or "ramdisk too large" |
17:32:42 | sammy_wms | oh, it's can't root fs ... |
17:38:48 | sammy_wms | my blob size = 0x40000 ,blob param = 0x40000 ,kernel = 0x100000 and all the other's give it to ramfs |
17:39:21 | sammy_wms | and flash is 28F128J3A 2 chips , |
17:40:00 | sammy_wms | and kernel partation size is all the same with this ... |
17:41:07 | erikm | are you using jffs2 or ramdisk? |
17:41:21 | sammy_wms | and flash map = ox40000 from 0x00000000 ~ 0x02000000 |
17:41:27 | sammy_wms | I use jffs2 |
17:41:34 | erikm | on what platform? |
17:41:41 | sammy_wms | puppy |
17:42:08 | erikm | do the kernel and blob agree about the flash partitioning? |
17:43:29 | sammy_wms | when kernel boot , the MTD partition show 0,1,2,3, like I define , is this ? |
17:44:24 | sammy_wms | I also change the sa1100-flash.c to match the blob partition .... |
17:44:56 | sammy_wms | I mean the same size ... |
17:45:57 | sammy_wms | and the jffs2 file image also use " -e 0x40000 -p " option ... |
17:48:04 | sammy_wms | and also use (1)try modify from your lart-jffs2-1.0 file use busybox (2) made by my self without busybox ... |
17:49:06 | sammy_wms | but the kernel still hang on that panic massage ......why ? |
17:51:38 | sammy_wms | even Russ had tell me to change the eraseblock size to build the jffs2 file , and I did it to , but I can't use 0x20000 ,right ? |
17:52:39 | sammy_wms | and even 0x10000.... right ? |
17:54:18 | sammy_wms | so choose 0x40000 to be the eraseblock maybe right,... |
17:54:46 | sammy_wms | erikm: have any idea ? |
18:00:54 | erikm | first try to do without a /linuxrc |
18:01:31 | erikm | and it also won't work if you still have support for ramdisk in your kernel |
18:03:28 | sammy_wms | what's rootfs should I load , ramdisk or jffs2 ? |
18:04:50 | sammy_wms | if I load jffs2 , it's will show me can't find ramdisk image...(but the kernel I always have choose to support) |
18:05:33 | erikm | JFFS2 *only* works if you *disable* support for ramdisk |
18:06:29 | sammy_wms | Oh, my god , so I must into menuconfig to disable the ramdisk support ? |
18:06:50 | sammy_wms | to let the jffs2 work ? |
18:08:03 | erikm | yes |
18:09:49 | sammy_wms | Amm? but in lart , I remember it's sounds like both of three all have choose ....<support ramdisk><MTD support><jffs2 filesystem support> |
18:10:47 | sammy_wms | why is lart can work ? |
18:11:50 | sammy_wms | or because in configure for lart that mtd have depand choose for 28F160 flash chips , so it's can work ? |
18:13:17 | sammy_wms | or I got wrong remember ? |
18:14:38 | sammy_wms | erikm: can you check all the massage I type on here , am I do something wrong or lost anything on it ? |
18:15:16 | erikm | is /linuxrc executable? |
18:15:33 | erikm | does init=/bin/sh give you a shell prompt? |
18:16:30 | sammy_wms | the kernel always scream to want the init .... |
18:17:19 | sammy_wms | I had try init=/bin/sh init=/sbin/init init=/linuxrc ....but no one can pass into _login_ |
18:19:21 | sammy_wms | after your check , if you say no problem , then this maybe the double check , because Russ had help me check once before (Thanx) and help me fix some erase block problem... |
18:19:41 | erikm | did you build this ramdisk yourself? |
18:19:57 | sammy_wms | but , the _HANG_ problem ,still not gone... |
18:20:30 | erikm | did you build this ramdisk yourself? |
18:20:45 | sammy_wms | yeap, |
18:20:59 | erikm | sammy_wms: so did you generate /etc/ld.so.cache? |
18:21:37 | sammy_wms | oh oh , what's that ? |
18:21:53 | erikm | the cache file for the run-time linker |
18:22:07 | erikm | I found out that it doesn't work *without* that file |
18:23:13 | sammy_wms | is that file can only copy it into the director or must build by some step ? |
18:23:33 | sammy_wms | if only use copy , that's file must be there ... |
18:23:48 | Russ | sammy_wms: remember, a jffs2 fs is not a ramdisk |
18:23:48 | erikm | you have to generate it. |
18:24:14 | sammy_wms | how to do it ? |
18:24:39 | sammy_wms | so use copy , won't work right ? |
18:26:54 | erikm | sammy_wms: ldconfig |
18:31:02 | sammy_wms | is now reading some page to get this "lost space"... |
18:44:14 | sammy_wms | erikm: if my ld.so.cache is the problem , that libc.so.5 also my problem too right ? |
18:44:56 | erikm | sammy_wms: libc.so.5 is considered obsolete |
18:47:52 | sammy_wms | oh, so after I ldconfig that dir , also rebuild jffs2 again to load , right ? |
18:48:49 | erikm | yes |
18:50:02 | sammy_wms | ok, this maybe the last hope...hope kernel not barking again... |
18:56:03 | sammy_wms | sun will get up few hours later, must catce some time to sleep... |
18:56:16 | sammy_wms | thanx erikm :) |
18:56:43 | erikm | it works? |
18:56:44 | sammy_wms | night all my friends ... |
18:57:15 | sammy_wms | oh. the board is in my office , so I must try later... |
18:57:43 | sammy_wms | so Sammy will try that ... |
18:58:55 | sammy_wms | night :) |
18:59:34 | sammy_wms | z.z.z |
18:59:39 | erikm | nicght |
18:59:44 | erikm | night, I mean |
19:16:53 | erikm | prpplague: you were looking for gregkh? he's right now on #kernelnewbies and prolly also in #usb |
19:20:54 | prpplague | erikm: whats that? |
19:21:02 | prpplague | erikm: about the xmodem stuff? |
19:21:33 | erikm | prpplague: about the USB stuff |
19:22:11 | erikm | prpplague: or was it seletz who had questions about usb? |
19:24:07 | prpplague | erikm: thats was seletz |
19:25:03 | erikm | prpplague: ok. (/me was a bit jet lagged yesterday %) |
19:25:40 | prpplague | np |