irclog2html for blob on 2001.08.31

00:21:19Sammymorning ~ all
04:14:24Sammyis also update the LART into blob_2_0_4
04:14:48Sammyblob> status
04:14:49SammyBootloader    : blob
04:14:50SammyVersion       : 2.0.4
04:14:51SammyRunning from  : internal flash
04:14:52SammyBlocksize     : 0x00800000
04:14:53SammyDownload speed: 115200 baud
04:14:54SammyBlob          : from flash
04:14:55SammyKernel        : from flash
04:14:56SammyRamdisk       : from flash
04:14:57Sammyblob>
04:16:10sammy_lunch . lunch .
06:33:49sammyRuss : suggest me which debian should I use ? why ?
06:36:17sammywoody or sid  ?
06:43:44BZFlagon arm or x86?
06:44:10BZFlagon arm, potato is the only one I've used that works.
06:44:49BZFlagon x86 I use sid everyplace as I submit patches to a lot of developers and I'm sick of hearing "try the latest package out and see if it happens there"
06:45:10BZFlagwith sid, I keep fairly close to the latest all the time.
06:45:56BZFlagI don't think I'd recommend that for everybody. testing (woody) might be a better choice
06:59:04sammythanx BZFlag : )
06:59:15sammydownloading ....
07:48:05erikmmorning
07:57:27sammymorning erikm
10:18:15erikmre
13:50:55jeffrey_whi erik , i cmpiled a blob-1.0.8-pre2 , may i just put and run it in ipaq's Ramdisk ( don't to replace bootldr)?
13:51:42jeffrey_wjust to test running..
14:03:12jeffrey_wmy ipaq have no jtag, so running  it have risk ..(will write to flash?)  i no courage to do it. ;)
15:14:05erikmsorry, had SIGMANAGEMENT
15:14:33erikmjeffrey_w: ramdisks don't depend on bootloaders
16:05:20Russmorning
16:16:27BZFlagmorning. I went to bed last night as well.
16:32:25erikmevening, guys :)
16:34:36Russwhat do you think of the code?
16:35:15erikmehm, which code?
16:35:37erikmah, wait.
16:35:41erikmcvs updates
16:36:39Russneed to add a protection is the parsing of bootdelay to make sure its not somehow 0
16:36:59Russits already there in mkparamblock, but it should be in blob too
16:38:12Russaway
16:45:32erikmRuss: ehm, please no *generated* files in CVS
16:46:02erikmRuss: so utils/mkparamblock/mkparamblock should not be there
17:45:27erikmre, Russ
17:49:09Russ|werkthanks
17:54:27erikmRuss: ehm, please no *generated* files in CVS
17:54:28erikmRuss: so utils/mkparamblock/mkparamblock should not be there
17:54:43erikm(I think you didn't get that because you already left)
17:55:17Russ|werkdid I accidentally commit the binary?
17:57:55erikmyes :)
17:59:15erikmhmm. I'll think of a nice way to use something like HOSTCC
18:00:32erikmbtw, I was thinking of making the command stuff also a separate ELF section
18:01:24erikmso we can conditionally compile source files with extra commands without having to mess with the command line parser in main.c
18:02:27erikmI'll also have to rewrite the command line parser, but that would mean better modularity which is a Good Thing [tm]
18:03:00Russ|werkyou liked rmk's .taglist section?
18:03:30Russ|werkI was bored and adapted tims splash.c, just by adding a tag parser to it and compiling it in
18:03:51Russ|werknot quite working perfect yet
18:04:14Russ|werkI don't think a tag in the paramater block for a splash screen is a paticularly bad idea
18:04:52erikmehm, but a splash screen would mean that we have the program the LCD controller, which *is* a bad idea
18:05:23Russ|werkthats bad for linux?
18:05:36erikmI mean: what's the point of having a splash screen? it's a boot loader, not an OS
18:06:16Russ|werkright, the amount of bytes it actually takes to implement it is actually *very* small
18:06:21erikmthat's also one of the things I don't like about bootldr: it displays a splash screen. for god sake, it's a boot loader! it should boot the OS!
18:06:56Russ|werkset the 4 registers, set the gpio's, copy to DRAM, and you are set
18:07:10Russ|werkI'll show you the patch when I'm done
18:07:15erikmand what functionality would that buy us?
18:07:26Russ|werka deflated image that just says BLOB! in big white letters is 1.8k
18:07:36Russ|werkits just one of those things....
18:07:45erikmyes, but that's 1.8K without *any* functionality
18:08:04Russ|werkright, but it doesn't go in the bootloader
18:08:11Russ|werkit goes in the paramater block
18:08:17erikmin the normal case we boot the OS in less than 1 second
18:08:30Russ|werkin which, there is loads of extra space
18:08:43Russ|werkthe OS takes 3 seconds to bring up the fb
18:08:53Russ|werkits just a toy
18:09:03erikmforget about toys
18:09:13Russ|werkI'm not recommending that it be integrated, its just a cool example
18:09:48erikmthe parameter block is not a bucket in which we dump all our shit. it's small, it only contains parameters for the bootloader. nothing more
18:11:09Russ|werkits 64k
18:11:32erikmyeah, but that doesn't mean that we should waste it
18:12:53Russ|werkits just a gee wizz thing (althogh, it could be used for rudentary debugging, since the tuxscreen doesn't have blob accessable LED's, just write a pixel on and off)
18:13:23erikmthe tuxscreen has LEDs. a couple of them, even
18:13:43erikmthe only question is which GPIO to use :)
18:14:00erikm(should be easy to find out with a binary search)
18:14:15Russ|werkno, it uses the DSP
18:14:36Russ|werkwhich is connected through a makeshift SPI bus of GPIO's
18:14:43Russ|werkso you need to send serial command to it
18:14:47Russ|werk(After initializing it)
18:15:13erikmgrrr, why couldn't they use the KISS principle when designing it?
18:15:42Russ|werkyou should see some source that comes with it
18:15:54Russ|werkthe most horrid code you have ever seen
18:16:15erikmI'm told that BSD telnet is the most horrible code the world ever saw
18:16:21erikm:-P
18:16:51Russ|werkactually, its zli
18:16:57Russ|werker
18:16:57Russ|werkzlib
18:17:13Russ|werkwonder if that thing has won any obfuscation awards
18:17:37erikmlooks outside and wonders if the rain will ever stop
18:18:27BZFlaghas a thought at the risk of being flamed....
18:19:06BZFlagthe lcd code is useful if and when there are boot choices that device buttons can select.
18:19:17BZFlagas with bootloader, displaying the menu.
18:19:37Russ|werkthen you need to talk to the ucb1300
18:19:51Russ|werkthe lcd code is around 100 bytes I thing
18:19:59Russ|werker, think
18:20:09BZFlagnah, just say press "foo" button. some devices will have readable buttons.
18:20:27BZFlagI'm not suggesting a ts driver in the bootloader.
18:21:07Russ|werkideally, blob should be under 32k
18:21:19erikmBZFlag: but the normal operation is "plug in tuxscreen and run linux". same as with ipaq: "power on and boot linux"
18:21:35erikmBZFlag: if you want to do more, you connect a serial cable and talk to the device
18:21:35Russ|werktftp, jffs2, etc will push it up to the 30k range
18:21:39BZFlagand I do feel strongly that any such code has to be a build time option. it should NOT add to the size of a minimal blob
18:21:59Russ|werkalthough gpio's will probably be considered at boot
18:22:10BZFlagerikm: I'd like to be able to "press foo to reflash from cf"
18:22:41Russ|werkI'm thinking 32 "boot settings", then each tag has a set of options, along with a mask
18:23:05BZFlagthough perhaps just the existance of a cf storage card with named files on vfat is enough to decide to take that route.
18:23:19Russ|werkso, (tag.hdr.mask & curr_settings) == tag.hdr.settings then process tag
18:23:40Russ|werksome of the setting bits will be gpio's, others will be other things
18:24:41BZFlagthe zaurus has "boot with c and a down to update from cf"
18:24:53Russ|werkfailure is doing a paticular tag (ie, netboot), can set a flag, and start the tag parsing over
18:25:18Russ|werkthe only problem is, you don't want to get into a loop
18:25:24BZFlagwell, headed to work.
18:25:33Russ|werkse you'd probably want to set a tag counter, and for every tag parsed, increment it
18:25:50Russ|werkif it goes over a value, drop to blob
18:26:09erikmRuss: so what's the basic design idea behind the parameter block?
18:26:30erikmRuss: it's like rmk's tagged list for kernels, but what's in it?
18:27:06erikmRuss: (maybe we should add a "doc" directory to CVS and put such documentation in it)
18:29:25Russ|werkwell, right now its just a skeleton for what we want it to be
18:30:01Russ|werkI think the option/mask thing can be very powerfull
18:31:10Russ|werkalso, there can be a xor, or maybe and mask that should be set if the tag fails, and the parsing can be restarted from the head (maybe optionally)
18:31:48erikmbut why would a tag fail?
18:32:14Russ|werklike a netboot tag, or a load kernel from jffs2 tag
18:32:48Russ|werk(the load kernel from jffs2 tag would be tim's "is there a CF card" thing)
18:33:06erikmok, like that. I thought you meant an error in the tags itself
18:33:16Russ|werkyou could even make tags that check simple things, like is there a gzip signiture on bootldr partition x
18:33:51Russ|werkbut right now, its all just the skeleton
18:35:43erikmehm that would mean that we need some kind of scripting language in blob
18:36:06erikmand in that case I think we'd better go directly for OpenProm
18:36:30Russ|werkit wouldn't be a scripting language
18:36:45Russ|werkall of that would be done in mkparamblock
18:37:29Russ|werkthere would be 32 "current config flags"
18:37:51Russ|werkmaybe 4 or so of them would be set by the gpio's, one could be set by resume maybe
18:38:02Russ|werkso it would be a u32 bitmask
18:38:34Russ|werkeach paramater block hdr would have a mask, a config, and a fail mask
18:38:51Russ|werkif the mask is zero, its a global tag
18:39:32Russ|werkwhen parse_tags looks at a tag, it checks an sees it the (hdr.mask & hdr.config) == the current config mask
18:39:43erikmyes, but checking for gzip signatures would and making decisions based on that would mean that we need if-then-else and that's pretty close to a programming language
18:39:45Russ|werkif it does, it proccesses the tag
18:40:48Russ|werkif the tag returns failure, then it does something with the current config bitmask, and hdr.fail_mask (maybe xor's it, make or it, don't know)
18:41:51Russ|werkthen it maybe restarts the parsing of the tags, or continues (don't know that yet either, maybe thats another flag)
18:42:19Russ|werkif the number of tags processes goes over a limit, it drops to blob (to avoid loops)
18:42:58erikmbut it won't loop, right? the list is not without boundaries
18:43:18Russ|werkso the only decision would really be whether or not to process the current tag based on the tags masks, and the current config
18:43:33Russ|werkit could if you wanted it to
18:43:49Russ|werkif something fails, and changes the mask, you could restart the parsing of tags
18:43:57Russ|werkI don't know why that would be usefull
18:44:48Russ|werkI don't know why a boot attempt would be anything but linear
18:46:06Russ|werkbrb, kernel change
20:38:06erikmhmm, john dorsey released a new bootldr
20:42:18erikmgoes zzz
20:42:21erikm'night

Generated by irclog2html.pl by Jeff Waugh - find it at freshmeat.net! Modified by Tim Riker to work with infobot logs, split per channel and by date, etc.