Thread (5 messages) read the whole thread 5 messages, 2 authors, 2021-01-12

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

From: József Horváth <hidden>
Date: 2021-01-12 17:47:37
Also in: linux-serial, lkml

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:
quoted
On Tue, Jan 12, 2021 at 11:28:08AM +0100, 'Greg Kroah-Hartman' wrote:
quoted
On Tue, Jan 12, 2021 at 10:18:33AM +0000, Jozsef Horvath wrote:
quoted
--- 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?
quoted
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
...
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help