Subject: Re: [PATCH 2/4] misc: xgene: Add base driver for APM X-Gene SoC Queue Manager/Traffic Manager

From: Greg KH <[email-masked]>
Date: Sat, 21 Dec 2013 17:01:29 -0800

On Sat, Dec 21, 2013 at 04:43:06PM -0800, Ravi Patel wrote:
> > On Thu, Dec 19, 2013 at 07:41:13PM -0800, Ravi Patel wrote:
> >> There is no need to talk to this driver from userspace.
> >> It is a device which is used by other IO devices to communicate with each
> >> other, including CPU.
> >> For example, if CPU (software) wants to send a message to Ethernet HW (i.e.
> >> send packet),
> >> it used this driver to enqueue a message to Ethernet.
> >> In other direction, if Ethernet HW receives a packet, it uses QM/TM device to
> >> send message to
> >> CPU (software) to process packet.
> >
> > So it's a "bus" type of thing, right?
> >
> > My question of "why isn't this reflected in the driver model" still
> > stands.
> 
> There is no subsystem underneath QMTM, nor QMTM does any enumeration.
> QMTM is a centralized resource manager which manages queues circularly
> for Ethernet, PktDMA (XOR Engine) and Security Engine subsystems.
> Traffic Management feature of QMTM does flow control, QoS for the subsystems.
> Because of this reasons, its not obvious that QMTM can fit as a bus.
> However we are doing further evalution on this.

Just because you can't enumerate a device, doesn't mean it isn't a
"bus".  You say so yourself that this is how devices talk to the
hardware, so that sounds like a "bus" to me...

greg k-h