Messages in this thread | | | Date | Thu, 18 Nov 2010 11:21:46 -0600 | From | Scott Wood <> | Subject | Re: How do I choose an arbitrary minor number for my tty device? |
| |
On Thu, 18 Nov 2010 10:03:12 -0600 Timur Tabi <timur@freescale.com> wrote:
> I'm not so sure. Like I said, I still don't see where there's a bus. I have a > single driver that has multiple devices. It sounds to me like one call to > tty_register_driver() and multiple calls to tty_register_device() would be > sufficient. > > For instance, there is no code in drivers/char/ that makes a call to > bus_register(), so I don't see any precedent for a tty driver to register a bus > first.
The tty driver doesn't register the bus, but rather a driver for some type of device on that bus. The code to create the bus goes elsewhere, and would not be specific to byte channels.
> Also, this is an Open Firmware driver. I already have a mechanism whereby I get > probed for each instance of a byte channel. Isn't that my "bus"?
It would be if you actually had it -- but it looks like you just loop over the nodes.
We should add a proper bus for the "handles" node. Then sysfs should show the link between the tty device and a device tree node -- which is really what we're after, the handle is just a means to that end.
> I'm really trying to do the right thing here, Greg, but every time I try to > solve one problem, I'm being told that I need to make things way more > complicated first.
s/make things way more complicated/use the existing infrastructure rather than reinvent the wheel/
And getting rid of the redundant chardev driver would be a simplification...
-Scott
| |