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 123What 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