Re: [PATCH v4 1/9] serial: 8250: dw: Move definitions to the shared header

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

 



On Wed, Mar 30, 2022 at 03:20:30PM +0200, Miquel Raynal wrote:
> From: Phil Edworthy <phil.edworthy@xxxxxxxxxxx>
> 
> Move the per-device structure and a helper out of the main .c file, into
> a shared header as they will both be reused from another .c file.
> 
> There is no functional change.

Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>

> Signed-off-by: Phil Edworthy <phil.edworthy@xxxxxxxxxxx>
> [miquel.raynal@xxxxxxxxxxx: Extracted from a bigger change]
> Signed-off-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx>
> ---
>  drivers/tty/serial/8250/8250_dw.c    | 21 ---------------------
>  drivers/tty/serial/8250/8250_dwlib.h | 26 ++++++++++++++++++++++++++
>  2 files changed, 26 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/tty/serial/8250/8250_dw.c b/drivers/tty/serial/8250/8250_dw.c
> index 96a62e95726b..1666041513a5 100644
> --- a/drivers/tty/serial/8250/8250_dw.c
> +++ b/drivers/tty/serial/8250/8250_dw.c
> @@ -42,27 +42,6 @@
>  #define DW_UART_QUIRK_ARMADA_38X	BIT(1)
>  #define DW_UART_QUIRK_SKIP_SET_RATE	BIT(2)
>  
> -struct dw8250_data {
> -	struct dw8250_port_data	data;
> -
> -	u8			usr_reg;
> -	int			msr_mask_on;
> -	int			msr_mask_off;
> -	struct clk		*clk;
> -	struct clk		*pclk;
> -	struct notifier_block	clk_notifier;
> -	struct work_struct	clk_work;
> -	struct reset_control	*rst;
> -
> -	unsigned int		skip_autocfg:1;
> -	unsigned int		uart_16550_compatible:1;
> -};
> -
> -static inline struct dw8250_data *to_dw8250_data(struct dw8250_port_data *data)
> -{
> -	return container_of(data, struct dw8250_data, data);
> -}
> -
>  static inline struct dw8250_data *clk_to_dw8250_data(struct notifier_block *nb)
>  {
>  	return container_of(nb, struct dw8250_data, clk_notifier);
> diff --git a/drivers/tty/serial/8250/8250_dwlib.h b/drivers/tty/serial/8250/8250_dwlib.h
> index 83d528e5cc21..72e7dbcccad0 100644
> --- a/drivers/tty/serial/8250/8250_dwlib.h
> +++ b/drivers/tty/serial/8250/8250_dwlib.h
> @@ -1,10 +1,15 @@
>  /* SPDX-License-Identifier: GPL-2.0+ */
>  /* Synopsys DesignWare 8250 library header file. */
>  
> +#include <linux/notifier.h>
>  #include <linux/types.h>
> +#include <linux/workqueue.h>
>  
>  #include "8250.h"
>  
> +struct clk;
> +struct reset_control;
> +
>  struct dw8250_port_data {
>  	/* Port properties */
>  	int			line;
> @@ -16,5 +21,26 @@ struct dw8250_port_data {
>  	u8			dlf_size;
>  };
>  
> +struct dw8250_data {
> +	struct dw8250_port_data	data;
> +
> +	u8			usr_reg;
> +	int			msr_mask_on;
> +	int			msr_mask_off;
> +	struct clk		*clk;
> +	struct clk		*pclk;
> +	struct notifier_block	clk_notifier;
> +	struct work_struct	clk_work;
> +	struct reset_control	*rst;
> +
> +	unsigned int		skip_autocfg:1;
> +	unsigned int		uart_16550_compatible:1;
> +};
> +
>  void dw8250_do_set_termios(struct uart_port *p, struct ktermios *termios, struct ktermios *old);
>  void dw8250_setup_port(struct uart_port *p);
> +
> +static inline struct dw8250_data *to_dw8250_data(struct dw8250_port_data *data)
> +{
> +	return container_of(data, struct dw8250_data, data);
> +}
> -- 
> 2.27.0
> 

-- 
With Best Regards,
Andy Shevchenko





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux