USB host controller implementation

Ian Stirling (root@mauve.demon.co.uk)
Sun, 12 Dec 1999 12:43:24 +0000 (GMT)


<soprano penguin>I want to teach the world to sing....</soprano penguin>

But, as I need some money, while doing this, I'm trying to design
a USB host interface for a portable device, so it can use all those
neat USB devices that are coming out.

The HCI is not, [OU]hci compliant.

Unfortunately, it won't be running linux, but I'd hope to do a large
portion of the hardware development under linux, on a PC, with
some similar hardware to the eventual host controller.

AIUI I can 'simply' copy large chunks of the kernel code, add my own HCI
driver, add something that looks like the kernel, to the USB code,
burn it into flash, and start shipping.

(after quite a large amount of effort, I'll be doing this single handed,
and have not had as much experience as I'd like at this sort of thing)

I could not consider this project, if there was not the large body of
code, contributed by many people, that is the USB layer, as my budget
is very, very limited, and having to buy the IP required would vastly
exceed it. (At least from what I've seen)

This of course brings up the issue of licensing.

The hardware is likely to be relatively straight-forward, the
complex bit being the firm/software.

As any competitor could as easily take a binary copy of the rom, the
only protection I have is from those that at least pay some attention
to the law.

Can I add terms to my code saying "this may not be used in a similar
product, without prior authorisation", even though it's largely under the
GPL, and could, for example be used to implement USB over the paralell port?

If this project is successfull, this would of course result in me wanting
more devices supported, as the current list is rather short, to increase
sales of my adaptor.

These would be basically linux drivers, that I'd help with the writing
of (hardware loans, or giveaways, etc) that I'd edit into a useable
form to work with my fake kernel layer, that would of course be
submitted for use in the kernel.

Any comments, or recommendations of books and such?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/