Re: [PATCH v2 2/2] serial: 8250: Add new 8250-core based Broadcom STB driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 18, 2021 at 03:32:57PM -0500, Al Cooper wrote:
> On Mon, Jan 18, 2021 at 12:45 PM Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Fri, Jan 15, 2021 at 04:15:43PM -0500, Al Cooper wrote:
> > > Add a UART driver for the new Broadcom 8250 based STB UART. The new
> > > UART is backward compatible with the standard 8250, but has some
> > > additional features. The new features include a high accuracy baud
> > > rate clock system and DMA support.
> > >
> > > The driver will use the new optional BAUD MUX clock to select the best
> > > one of the four master clocks (81MHz, 108MHz, 64MHz and 48MHz) to feed
> > > the baud rate selection logic for any requested baud rate.  This allows
> > > for more accurate BAUD rates when high speed baud rates are selected.
> > >
> > > The driver will use the new UART DMA hardware if the UART DMA registers
> > > are specified in Device Tree "reg" property. The DMA functionality can
> > > be disabled on kernel boot with the argument:
> > > "8250_bcm7271.disable_dma=Y".
> >
> > Shouldn't that be on a per-device basis, and not a per-driver basis?
> 
> There is only one instance of the UART DMA hardware and it gets muxed
> to just one of the possible UARTS.

But the driver doesn't know/care about that, it binds to any device that
matches it.  per-module/driver flags are not a good idea.

> > And why would you want to disable this, if you have support for this in
> > the DT?  Why not just rely on the DT setting?
> 
> The DMA feature is used when the UART is connected to a Bluetooth
> controller and the BAUD rate is typically 2-3Mbs. The ability to
> easily disable DMA is very useful when debugging BT communication
> problems in the field. DT settings could also be used to disable DMA,
> but knowing the correct modifications to the "reg" and "reg-names"
> properties is a lot more complicated.

So this is a debug-only option?  If so, why not just make it a debugfs
file then?  No need to clutter up a module parameter for this mess.

thanks,

greg k-h



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux