Re: csr1212 status
Brought to you by:
aeb,
bencollins
From: Ben C. <bco...@de...> - 2003-06-25 18:18:35
|
There's nothing simpler than struct foo { struct foo *next, *prev; ... }; The kernel level lists are there for kernel sanity. It also takes advantage of prefetch. You'd have to port list.h to userspace in order to make csr1212 compile in userspace. Why waste the time to duplicate list.h in userspace when we can contain csr1212 to itself (which is the idea anyway)? Also, I hate seeing libraries that are just a .so/.a of a single source file. csr1212 doesn't even need autoconf cruft, because it should be so simple that it barely needs libc. 99%-100% of it should just be C constructs and not C library calls. I don't think we need to be making the endall csr1212 implementation. This should just be a very simple and basic parser and creator. So small and simple that you can take csr1212.[ch], drop it into your source dir, add csr1212.o to the makefile objs, and start adding calls to it in your code. There shouldn't need to be anything more than that. If someone wanted to make a libcsr1212, they would probably make it a complex wrapper around csr1212.[ch]. > What do you think about this idea... Instead of the kernel generating a > ConfigROM image that gets passed to userspace, parsed by userspace, > modified by userspace, generate updated image by userspace, copied back > to kernel space, parsed and/or used directly by kernel space, we setup > user space to simply create a sub-tree, generate an image, copy the > sub-tree image to kernel space, kernel space parse the sub-tree, > attaches the sub-tree to the root directory, and generates the final > image. What about tools that actually want to parse csr1212 images directly, like gscanbus? Also, I was going to export this image via /sys/ in 2.5 kernels. What about the case you speak of where it wants to add/remove directories on demand? How would it delete it? especially in the case where duplicates may occur. -- Debian - http://www.debian.org/ Linux 1394 - http://www.linux1394.org/ Subversion - http://subversion.tigris.org/ Deqo - http://www.deqo.com/ |