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] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 15 Mar 2010 10:24:49 +0000 (GMT)
From:	waltergoossens@...e.nl
To:	nios2-dev@...c.et.ntust.edu.tw
Cc:	Andrew Morton <akpm@...ux-foundation.org>, gregkh@...e.de,
	linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org
Subject: Re: [Nios2-dev] [PATCHv3 1/2] serial: Add driver for the Altera	JTAG
 UART

----- Origineel bericht -----
Van: Tobias Klauser <tklauser@...tanz.ch>
Datum: maandag, maart 15, 2010 10:21
Onderwerp: Re: [Nios2-dev] [PATCHv3 1/2] serial: Add driver for the Altera	JTAG UART
Aan: Andrew Morton <akpm@...ux-foundation.org>
Cc: nios2-dev@...c.et.ntust.edu.tw, gregkh@...e.de, linux-kernel@...r.kernel.org, linux-serial@...r.kernel.org


> On 2010-03-12 at 21:48:35 +0100, Andrew Morton 
> <akpm@...ux-foundation.org> wrote:
> > On Fri,  5 Mar 2010 17:52:22 +0100
> > Tobias Klauser <tklauser@...tanz.ch> wrote:
> > 
> > > Add an UART driver for the JTAG UART component available as a SOPC
> > > (System on Programmable Chip) component for Altera FPGAs.
> > > 
> > > ...
> > >
> > > --- a/drivers/serial/Kconfig
> > > +++ b/drivers/serial/Kconfig
> > > @@ -1490,4 +1490,25 @@ config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
> > >  	help
> > >  	Support for running a console on the GRLIB APBUART
> > >  
> > > +config SERIAL_ALTERA_JTAGUART
> > > +	bool "Altera JTAG UART support"
> > > +	select SERIAL_CORE
> > > +	help
> > > +          This driver supports the Altera JTAG UART port.
> > > +
> > > +config SERIAL_ALTERA_JTAGUART_CONSOLE
> > > +	bool "Altera JTAG UART console support"
> > > +	depends on SERIAL_ALTERA_JTAGUART
> > > +	select SERIAL_CORE_CONSOLE
> > > +	help
> > > +          Enable a Altera JTAG UART port to be the system console.
> > > +
> > > +config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
> > > +	bool "Bypass output when no connection"
> > > +	depends on SERIAL_ALTERA_JTAGUART_CONSOLE
> > > +	select SERIAL_CORE_CONSOLE
> > > +	help
> > > +          Bypass console output and keep going even if there is no
> > > +          JTAG terminal connection with the host.
> > 
> > So this driver will be available on all CPU architectures.
> > 
> > I'm guessing that the hardware _isn't_ available on all CPU
> > architectures?  Maybe that's wrong.
> 
> In principle it is available on all CPU. I can think of a hardware
> component with an Altera FPGA containing this UART. But at the moment 
> no
> such implementation is known to me and the UART is only usable on the
> nios2 CPU architecture  (which is not in mainline yet - we're planning
> to change that, submitting the arch-sepcific drivers is the first step
> towards this).
> 
We are actually working on a project without a Nios2 where a PCIe core connected to a powerPC is the avalon-master. So I'm in favor of not getting everything too nios2 specific.

> > If this hardware is only available on certain CPUs then we face
> > tradeoffs.  By making it universally available, the code gets better
> > compile tesst coverage and that can detect problems (usually minor
> > ones).  otoh, it can increase your maintenance load a bit, and adds 
> a
> > risk that people will ship unusable kernel modules and will see
> > increased build times.  I have no particular opinion either way.
> 
> I'd like to have this universally available if no one objects. It'd be
> nice to get better test coverage and I don't really mind the additional
> maintanance load. AFAICS other UART driver are only available on one
> single architecture too, so I hoped it would be fine to go the same way
> with the altera_{jtag,}uart drivers.
> 
> > >  endmenu
> > > diff --git a/drivers/serial/Makefile b/drivers/serial/Makefile
> > > index 5548fe7..6228b6e 100644
> > > --- a/drivers/serial/Makefile
> > > +++ b/drivers/serial/Makefile
> > > @@ -82,3 +82,4 @@ obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
> > >  obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
> > >  obj-$(CONFIG_SERIAL_TIMBERDALE)	+= timbuart.o
> > >  obj-$(CONFIG_SERIAL_GRLIB_GAISLER_APBUART) += apbuart.o
> > > +obj-$(CONFIG_SERIAL_ALTERA_JTAGUART) += altera_jtaguart.o
> > > diff --git a/drivers/serial/altera_jtaguart.c b/drivers/serial/altera_jtaguart.c
> > > new file mode 100644
> > > index 0000000..f9b49b5
> > > --- /dev/null
> > > +++ b/drivers/serial/altera_jtaguart.c
> > > @@ -0,0 +1,504 @@
> > > +/*
> > > + * altera_jtaguart.c -- Altera JTAG UART driver
> > > + *
> > > + * Based on mcf.c -- Freescale ColdFire UART driver
> > > + *
> > > + * (C) Copyright 2003-2007, Greg Ungerer <gerg@...pgear.com>
> > > + * (C) Copyright 2008, Thomas Chou <thomas@...ron.com.tw>
> > > + * (C) Copyright 2010, Tobias Klauser <tklauser@...tanz.ch>
> > > + *
> > > + * This program is free software; you can redistribute it and/or 
> modify
> > > + * it under the terms of the GNU General Public License as 
> published by
> > > + * the Free Software Foundation; either version 2 of the License, 
> or
> > > + * (at your option) any later version.
> > > + */
> > > +
> > > +#include <linux/kernel.h>
> > > +#include <linux/init.h>
> > > +#include <linux/interrupt.h>
> > > +#include <linux/module.h>
> > > +#include <linux/console.h>
> > > +#include <linux/tty.h>
> > > +#include <linux/tty_flip.h>
> > > +#include <linux/serial.h>
> > > +#include <linux/serial_core.h>
> > > +#include <linux/platform_device.h>
> > > +#include <linux/io.h>
> > > +#include <linux/altera_jtaguart.h>
> > 
> > Does it make sense to put altera_jtaguart.h into include/linux?  Could
> > we put it in drivers/serial/?
> 
> It is stored in include/linux and not in drivers/serial because we need
> to include it from arch/nios2 for the platform device setup. Including
> <linux/altera_jtaguart.h> looks nicer than including
> "../drivers/serial/altera_jtaguart.h". The same holds true for the
> altera_uart driver.
> 
> Thanks a lot,
> Tobias
> _______________________________________________
> Nios2-dev mailing list
> Nios2-dev@...c.et.ntust.edu.tw
> http://sopc.et.ntust.edu.tw/cgi-bin/mailman/listinfo/nios2-dev
--
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