Re: [PATCH v8 1/2] Serial: silabs si4455 serial driver

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

 



On Tue, Jan 12, 2021 at 05:13:16PM +0100, 'Greg Kroah-Hartman' wrote:
> On Tue, Jan 12, 2021 at 03:43:22PM +0000, József Horváth wrote:
> > On Tue, Jan 12, 2021 at 11:28:08AM +0100, 'Greg Kroah-Hartman' wrote:
> > > On Tue, Jan 12, 2021 at 10:18:33AM +0000, Jozsef Horvath wrote:
> > > > --- a/include/uapi/linux/serial_core.h
> > > > +++ b/include/uapi/linux/serial_core.h
> > > > @@ -279,4 +279,7 @@
> > > >  /* Freescale LINFlexD UART */
> > > >  #define PORT_LINFLEXUART	122
> > > >  
> > > > +/* Silicon Labs SI4455 */
> > > > +#define PORT_SI4455     123
> > > 
> > > What userspace tool is going to need this value?
> > 
> > The PORT_SI4455 is defined for using as port type value in struct uart_port.
> > I checked other serial drivers under drivers/tty/serial and the port types
> > used by serial drivers are defined in two places:
> > 
> > include/uapi/linux/serial_core.h
> > include/uapi/linux/serial.h
> > 
> > The port type is required by serial_core, and its value goes back to
> > user space with TIOCGSERIAL ioctl call.
> 
> What is it required for?  Who uses this?
> 
> > I can't set port type value to 0(PORT_UNKNOWN).
> 
> Why not?

In drivers/tty/serial/serial_core.c
1784:	uart_port_activate(...)
1799:		->	uart_startup(...)
260:			->	uart_port_startup(...)

183:	static int uart_port_startup(struct tty_struct *tty, struct uart_state *state,
184:			int init_hw)
...
191:		if (uport->type == PORT_UNKNOWN)
192:			return 1;
...
221:		retval = uport->ops->startup(uport);	<--This is the reason. The drivers
 startup function is not get called if type==PORT_UNKNOWN
...

> 
> > I think my drivers source is not the best place to defining PORT_SI4455,
> >  but I can't find better place then include/uapi/linux/serial_core.h
> > 
> > Could you please help me where is the correct location for this definition?
> 
> I ask as I am trying to figure out why we keep adding these ids, yet no
> tool that i know of seems to actually use them.
> 
> If you don't have a tool that needs to use a new id, then I would
> recommend not adding it, right?

This definition is not my requirement, but I would avoid collision with other
 drivers port type value.
At this point as I understand your words, these definitions will be obsolete
 or optional soon and I can choose any value for drivers port type.

Right?

I would ask you about dev name (ttySSi).
Is it okay?

I didnt find any similar.

> 
> thanks,
> 
> greg k-h

Üdvözlettel / Best regards:
József Horváth




[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