Recent blog entries for kroah

Ok, over 6 months with no entry, not good.

I've finally created a log on my own site, and it's at so I'll probably not be updating this site anymore.

See there for boring kernel driver stuff, if you're into those kinds of things...


Having lots of fun with it, made up a script that names your cdrom drive based apon what cd is in it at the time it is plugged in. Just shows how silly and powerful udev is becoming.

Hm, need to remember to use this more often...

Another year gone by...

Let's keep this simple:

kernel stuff

  • Ported the i2c/sensor code to 2.6 and got it in the tree.
  • Took over the maintainership of I2C and PCI in the kernel.
  • Solved the Linux device persistant naming problem with udev
  • Got a zillion patches into the kernel tree.
That's a pretty good year...

Wow, it's been forever, but I'm stalling while I should be working on my paper...

Zaitcev thanks for that USB patch. It was one of those things that I always knew was not quite right, but never bothered me enough to fix properly. Unfortunaly, there's probably lots of tiny pieces of the kernel that exist like that.
And thanks for keeping that broken patch out of Red Hat, I've had to defend not taking that patch too many times, even from people at work, with them pointing to SuSE as a reason to accept it...

Bah, back to the paper...

edd I am very interested in why OHCI is not allowing you to download the firmware, but UHCI does. The USB host controller drivers should not be acting different (but unfortunatly this often isn't the case...) Post to linux-usb-devel, and you should get a response.
plotting world domination
First two of us get called an axis, and then this picture from OLS 2002 gets out, finally people are realizing...
Been playing with Movable Type so as to have a blog on my own site. Pretty fun, and much nicer than the hack of scripts I used to have that I used a long time ago to try to keep a log of what I was doing.

Don't think I'll give up posting here, but we'll see how well it goes over time.
30 Aug 2002 (updated 31 Aug 2002 at 05:52 UTC) »
Finally got out lots of PCI core patches today. Problem was they touched all of the different archs code, so it took quite some time trying to fix up everything, luckily I didn't have to do the majority of the work :)
65 patches in 48 hours, I think I need a rest this weekend away from the computer...

updated later...
goingware I think you might be referring to my entry here. Advogato likes replacing old entries with the latest one and that entry was for yesterday :)

Make that 66 patches, turns out I broke ACPI PCI functionality with the previous pci_ops patches, which Linus needs for his machine to work properly. After guessing at what ACPI is trying to do I came up with a patch that seems to work on one of my boxes, but I don't know about a P4 with it's IO-APIC routing hell.

Ahh goingware is looking at doing embedded work.

I started out doing embedded programming, and over the years realized that I was doing OS programming (right on the hardware, size restrictions, dealing with nasty, undocumented electronics, etc.) and started playing with Linux drivers as I saw somewhere I could help out. Flash forward to today, and I'm doing pure kernel work (but still dealing with the same constraints of embedded work.) In short, if you're comfortable writing kernel driver code, writing embedded code is a very short step.

Unfortunately, I second Zaitcev's statement about embedded programmers personalities and the general state of the environment in which they work. Typically you are working at a hardware based company, and have to live with design decisions made by people focused on the bottom line of product cost (remember, in production the firmware is free, and no one will recall the 6 months that it took you to get a beeper not to warble, even though they could have solved it with a 5 cent part in the design up front.) Because the company started out as a hardware environment, no one will understand the programmer's point of view, and you will be rarely brought into the hardware design process (or if you will, you will be ignored by them, as "they could produce the required code in this size EEPROM").

That being said, I loved it, but hey, I love writing Linux kernel drivers, what kind of a person likes doing that? :)

On a related note, I would like to publicly apologize to the Cygnus employee that I talked to at the 1997 Embedded Programmers Conference, and asked "what are you all doing here, I thought gcc was free?" I later realized what a jerk I sounded like, and I hope you are retired somewhere on an island due to the buyout by Red Hat :)

29 Aug 2002 (updated 30 Aug 2002 at 00:26 UTC) »

Bleah, I've not posted in forever, I'll try to do better next time...

Some things in the past:

OLS 2002 and the Kernel Summit

I went there all nervous about a proposal that Pat Mochel and I were making about driverfs and /sbin/hotplug. Basically we are wanting to move all of the existing device naming policy out into userspace. Well, our worse nightmare happened, everyone loved it and wants it right now :)

So now we're madly scrambling to get this done by 2.6. The main driverfs changes are now in the 2.5 tree and most of the core driver and now class changes are too. The PCI driver code is converted, and I've been posting patches to convert the USB core and driver code to the new model.

We might just make it yet...

PCI Hotplug

The PCI Hotplug code is very broken in 2.5, and need to fix that up. Unfortunately we changed the pci_ops structure, so have a ton of patches to fix all of that up to get in before I can go back to the hotplug stuff.

2.4 is looking good, and the ACPI PCI Hotplug driver is working remarkably well (as well as ACPI can work.)

Linux USB

Zillion of patches sent to Linus to clean up __FUNCTION__ stuff last night. A ton more to Marcelo for 2.4 to backport the usb-serial stuff that has been in 2.5 for a while. Now that this is done, other backporting can happen, depending on what other people really want.


For some reason Linux Journal trusts me enough to write a column. This should be fun...

46 older entries...

New Advogato Features

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!