[PATCH v2 2/2] tty: serial: samsung_tty: cast the interrupt's void *id just once
Jiri Slaby
jirislaby at kernel.org
Thu Aug 8 00:31:24 PDT 2024
On 07. 08. 24, 13:58, André Draszik wrote:
> The interrupt handler routines and helpers are casting the 'void *'
> pointer to 'struct exynos_uart_port *' all over the place.
>
> There is no need for that, we can do the casting once and keep passing
> the 'struct exynos_uart_port *', simplifying the code and saving a few
> lines of code.
>
> No functional changes.
...
> @@ -944,17 +939,17 @@ static irqreturn_t s3c24xx_serial_tx_irq(void *id)
> /* interrupt handler for s3c64xx and later SoC's.*/
> static irqreturn_t s3c64xx_serial_handle_irq(int irq, void *id)
> {
> - const struct s3c24xx_uart_port *ourport = id;
> - const struct uart_port *port = &ourport->port;
> + struct s3c24xx_uart_port *ourport = id;
> + struct uart_port *port = &ourport->port;
> u32 pend = rd_regl(port, S3C64XX_UINTP);
> irqreturn_t ret = IRQ_HANDLED;
>
> if (pend & S3C64XX_UINTM_RXD_MSK) {
> - ret = s3c24xx_serial_rx_irq(id);
> + ret = s3c24xx_serial_rx_irq(ourport);
> wr_regl(port, S3C64XX_UINTP, S3C64XX_UINTM_RXD_MSK);
> }
> if (pend & S3C64XX_UINTM_TXD_MSK) {
> - ret = s3c24xx_serial_tx_irq(id);
> + ret = s3c24xx_serial_tx_irq(ourport);
> wr_regl(port, S3C64XX_UINTP, S3C64XX_UINTM_TXD_MSK);
> }
> return ret;
> @@ -963,19 +958,19 @@ static irqreturn_t s3c64xx_serial_handle_irq(int irq, void *id)
> /* interrupt handler for Apple SoC's.*/
> static irqreturn_t apple_serial_handle_irq(int irq, void *id)
> {
> - const struct s3c24xx_uart_port *ourport = id;
> - const struct uart_port *port = &ourport->port;
> + struct s3c24xx_uart_port *ourport = id;
> + struct uart_port *port = &ourport->port;
No need to remove const from port here and above, right? (Only from
ourport.)
Other than that, LGTM.
thanks,
--
js
suse labs
More information about the linux-arm-kernel
mailing list