Much Linux USB fun has been had lately.
Had lots of fun rewriting usbdevfs to use the VFS a lot better. Got everything working and the code turns out to be smaller, which shows how much the VFS code rocks. Wow, manipulating inodes by hand (like usbdevfs used to do) took up more code than the dentry manipulation stuff that I added. Posted the patch to linux-usb-devel if anyone is interested.Usenet
After hearing about Google's latest usenet archives, I (like almost everyone else) went to find my old postings. Thankfully I didn't write anything that I don't mind anyone reading. Unfortunatly all of my messages are not there. It does show me as having the second ever post to alt.surfing, and third post to alt.skate-board, but both of those posts are me responding to a message from someone else. So that proves that the archives aren't complete :(
I remember reading comp.os.minux back in 1988 or so, but I didn't post anything there. I can't remember when I started posting to alt.surfing, but I think it was right after the group was created. I did find the post over 9 years ago about a trip that my girlfriend at the time and I took across the country. That trip proved that we got along great. We're married now :)
The PCI Hotplug core and Compaq driver got merged into 2.4.15 with the great -ac flush. This exposed the code to a lot more people, and a potential security problem was pointed out to me and quickly fixed.Linux USB
Because some people kept complaining that I had broken the old PCI Hotplug GUI tools, I knocked together pciview using GTK+. It came out quite well. GTK+ rocks, as it is so easy to create GUI programs. Glade also helps out a lot in prototyping different layouts.
Well, I'm now the official maintainer, instead of just the temporary maintainer. Should be an interesting time... :)
Wee, got the PCI Hotplug core code and Compaq PCI Hotplug driver into the -ac kernel tree.
The PCI Hotplug core is one of the first drivers to be a filesystem. It uses a ram based file system to interace with userspace, instead of the ugly /proc or /dev nodes with ioctls and such. Just mount the pcihpfs file system where ever you want and you get a tree that looks something like:. |-- 2 | |-- adapter | |-- attention | |-- latch | |-- power | `-- test |-- 3 | |-- adapter | |-- attention | |-- latch | |-- power | `-- test |-- 4 | |-- adapter | |-- attention | |-- latch | |-- power | `-- test |-- 5 | |-- adapter | |-- attention | |-- latch | |-- power | `-- test `-- 6 |-- adapter |-- attention |-- latch |-- power `-- testThen just read the status of the different slots, and change the values by using 'echo' and 'bash'. So to turn on slot 6, you would do:echo 1 > ./6/power
The PCI Hotplug core also is the first chunk of kernel code that uses the EXPORT_SYMBOL_GPL() macro instead of the traditional EXPORT_SYMBOL() one. People at Intel are going to love that one :)
Wow, I never thought I would be arguing licensing issues on any mailing list, let alone lkml. The whole thing got started on the LSM mailing list with this posting.
Time to go write some code to clense myself...
The Hotplug PCI driver is coming along nicely. The new structures for the core code look workable and should enable others to implement their drivers quite easily (others in this context is probably me...)
Did just find out about the "Atlas" project that Intel and other companies are working on. It's like PCI Hotplug, but think of adding and removing entire PCI busses at once. Hope it works out to something that actually is useful.
Well, I'm the current Linux USB maintainer for a bit, while the "real" maintainer takes a vacation and gets settled into a new job. Previously when I have been the temporary maintainer, big, contriversial patches have been sent in (HID happened, along with a big usb-uhci vs. uhci debate), but so far it's been pretty smooth...
Unless you count the whole "swap over USB devices" debate :)
Yeah, got all of the USB Clie devices now working! Just sent off a patch, which should show up in the next -ac kernel. Now all Palm OS USB devices are supported on Linux, it's about time :)
Now to get pilot-link to work with the Palm 4.0 USB protocol properly...
Released a small "dietHotplug" package that implements the /sbin/hotplug functionality in a C program instead of the current linux-hotplug scripts. Huge size savings!
I did this not to replace the current scripts, which are still necessary for a system to work with different kernels, and are much easier to add new hooks and do other fun scripting things with, but because the 2.5 kernel initrd structure will need it. Think loading only the pci drivers for the devices that you have in the system at boot time. That is what dietHotplug is good for.
Embedded systems / rescue boot discs might find it handy, if they don't want to have a version of bash or awk on their system to still be able to do hotplug stuff.
And it was fun to write, which was the biggest reason for doing it :)
Finally got my first report of a Clie 710 working with my Linux kernel driver. Made me very happy (hint, a short note to a open source developer about how their code works great for you is a very nice thing to do.) Also got the patch into 2.4.8-ac10 so that it should get a lot more widespread testing. I have gotten lots of reports of it not working, so there is something going on here. I'm still waiting for Sony to get back to me after my last round of questions.
Finally signed all of the GPG keys that I got at the keysigning party and pushed them out to the keyservers. Took me forever.
Put up my slides and paper of my talk right here.
Had such a good time, I need to think up another paper topic so I can go next year...
Finding someone to review my PCI Hotplug patch has been very difficult. No one wants to read through 9,000 lines of code, and I don't blame them... I'll get it into the kernel tree eventually, at least it's in Red Hat's latest kernels in their 7.2 beta.
Been doing lots of other little USB patches for different things. It seems that people are actually using the usb-skeleton.c driver to base their USB drivers on, so I've been getting some very strange emails about bugs in drivers that I have never heard of before.
Very fun so far. Nice to see people who you have only known by email. I give a talk on Linux Hotplugging stuff in a few minutes. Hopefully no one will come to see it :) Or if they do, at least they can ask some good questions. Talks without feedback aren't that much fun.Wireless is great. I need to get this set up for my house.
Been working a bunch on the Linux kernel driver for this lately. Released another patch based on comments from some people. Only one major thing left to do to it before I try to get it into the kernel tree.
Been doing lots of little patches lately. Nothing major.
I did get a signed NDA from Sony back that should now let me get some information from them on how they have implemented the USB interface in their Clie devices. This is good.
Now if only the Pilot Link people would get their m500 and m505 code checked into the tree, I can stop answering all of this email that I'm getting with "They are working on it." :)
Finally got my plane ticket. Just saw that they are going to be having a keysigning party so I might finally get someone to sign my GPG key...
Yumm...USB Clie support on Linux
Funny thing is that my bios doesn't detect some things that Linux handles just fine. Had to upgrade my old util-linux package to get access to the whole disc, but that was the only problem. My eyes are thanking me.
I'm actually talking with someone from Sony about this. Now they want me to sign an NDA. I gave my stock, "Sure, as long as I can write a driver released under the GPL with the information learned." and they weren't phased at all. Should be interesting to see how it all turns out. Hopefully better than hacker's Sony experience.ols
Gotta get a plane ticket and start writing my slides up. Procrastination is good :)
New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!