lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Tue, 6 Oct 2015 10:36:38 +0200
From:	Mason <slash.tmp@...e.fr>
To:	Mans Rullgard <mans@...sr.com>,
	Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
	Jiri Slaby <jslaby@...e.com>
Cc:	linux-serial@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [RESEND][PATCH] serial: 8250: simplify ralink/alchemy register
 remap selection

On 02/10/2015 12:15, Mans Rullgard wrote:
> Some SoCs, including Ralink/Mediatek and Alchemy Au1xxx, have a
> 16550-like UART with a non-standard register layout.  These are
> supported by a simple mapping table in 8250_port.c  Rather than
> list every SoC type using this access mode in the ifdefs there,
> allow selecting the SERIAL_8250_RT288X Kconfig option with any
> system and default it to y for the known cases needing it.  The
> help text is reworded accordingly.
> 
> This change simplifies adding support for other SoCs also using
> the same UART.

I approve this change, as my platform (Sigma Designs Tango4) uses
this UART.

> The name of the option is a little misleading, but not knowing
> the true origin of this UART, it is as good a choice as any.

Now that you know the UART is probably a Palmchip IP block, would
it make sense to rename the CONFIG option?
(CONFIG_SERIAL_8250_PALMCHIP?)

> Signed-off-by: Mans Rullgard <mans@...sr.com>
> ---
>  drivers/tty/serial/8250/8250_port.c | 4 ++--
>  drivers/tty/serial/8250/Kconfig     | 9 +++++----
>  2 files changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c
> index 54e6c8d..a2ff31c 100644
> --- a/drivers/tty/serial/8250/8250_port.c
> +++ b/drivers/tty/serial/8250/8250_port.c
> @@ -276,7 +276,7 @@ static void default_serial_dl_write(struct uart_8250_port *up, int value)
>  	serial_out(up, UART_DLM, value >> 8 & 0xff);
>  }
>  
> -#if defined(CONFIG_MIPS_ALCHEMY) || defined(CONFIG_SERIAL_8250_RT288X)
> +#ifdef CONFIG_SERIAL_8250_RT288X
>  
>  /* Au1x00/RT288x UART hardware has a weird register layout */
>  static const s8 au_io_in_map[8] = {
> @@ -427,7 +427,7 @@ static void set_io_from_upio(struct uart_port *p)
>  		p->serial_out = mem32be_serial_out;
>  		break;
>  
> -#if defined(CONFIG_MIPS_ALCHEMY) || defined(CONFIG_SERIAL_8250_RT288X)
> +#ifdef CONFIG_SERIAL_8250_RT288X
>  	case UPIO_AU:
>  		p->serial_in = au_serial_in;
>  		p->serial_out = au_serial_out;
> diff --git a/drivers/tty/serial/8250/Kconfig b/drivers/tty/serial/8250/Kconfig
> index e1de118..a51c75c 100644
> --- a/drivers/tty/serial/8250/Kconfig
> +++ b/drivers/tty/serial/8250/Kconfig
> @@ -294,11 +294,12 @@ config SERIAL_8250_EM
>  
>  config SERIAL_8250_RT288X
>  	bool "Ralink RT288x/RT305x/RT3662/RT3883 serial port support"
> -	depends on SERIAL_8250 && (SOC_RT288X || SOC_RT305X || SOC_RT3883 || SOC_MT7620)
> +	depends on SERIAL_8250
> +	default y if MIPS_ALCHEMY || SOC_RT288X || SOC_RT305X || SOC_RT3883 || SOC_MT7620
>  	help
> -	  If you have a Ralink RT288x/RT305x SoC based board and want to use the
> -	  serial port, say Y to this option. The driver can handle up to 2 serial
> -	  ports. If unsure, say N.
> +	  Selecting this option will add support for the alternate register
> +	  layout used by Ralink RT288x/RT305x, Alchemy Au1xxx, and some others.
> +	  If unsure, say N.
>  
>  config SERIAL_8250_OMAP
>  	tristate "Support for OMAP internal UART (8250 based driver)"

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ