summaryrefslogtreecommitdiff
path: root/common/serial.c
Commit message (Collapse)AuthorAgeLines
* serial: implement common uart post testMike Frysinger2011-07-26-0/+90
| | | | | | | | | | | | | | | | | | | | | | | The current arch/driver specific UART posts basically boil down to setting the UART to loop back mode, then reading and writing data. If we ignore the loop back part, the rest can be built upon the existing common serial API. So let's do just that. First add a call back for serial drivers to implement loop back control. Then write a post test that walks all of the serial drivers, puts them into loop back mode, and verifies that reading/writing at all the diff baud rates is OK. If a serial driver doesn't support loop back mode (either it can't or it hasn't done so yet), then skip it. This should allow for people to easily migrate to the new post test with existing serial drivers. I haven't touched the few already existing uart post tests as I don't the hardware or knowledge of converting them over. So I've marked the new test as weak which will allow the existing tests to override the default until they are converted. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* serial: drop serial_register return valueMike Frysinger2011-07-26-3/+1
| | | | | | | The serial_register function never fails (always return 0), so change it to a void function to avoid wasting overhead on it. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* serial: push default_serial_console to driversMike Frysinger2011-07-26-68/+0
| | | | | | | | | | | | | | | | | Rather than sticking arch/board/driver specific logic in the common serial code, push it all out to the respective drivers. The serial drivers declare these funcs weak so that boards can still override things with their own definition. Signed-off-by: Mike Frysinger <vapier@gentoo.org> CC: Heiko Schocher <hs@denx.de> CC: Anatolij Gustschin <agust@denx.de> CC: Tom Rix <Tom.Rix@windriver.com> CC: Minkyu Kang <mk7.kang@samsung.com> CC: Craig Nauman <cnauman@diagraph.com> CC: Prafulla Wadaskar <prafulla@marvell.com> CC: Mahavir Jain <mjain@marvell.com> Tested-by: Minkyu Kang <mk7.kang@samsung.com>
* serial: Add Tegra2 serial port supportTom Warren2011-02-21-1/+2
| | | | Signed-off-by: Tom Warren <twarren@nvidia.com>
* Replace CONFIG_RELOC_FIXUP_WORKS by CONFIG_NEEDS_MANUAL_RELOCWolfgang Denk2010-10-29-1/+1
| | | | | | | | | | | By now, the majority of architectures have working relocation support, so the few remaining architectures have become exceptions. To make this more obvious, we make working relocation now the default case, and flag the remaining cases with CONFIG_NEEDS_MANUAL_RELOC. Signed-off-by: Wolfgang Denk <wd@denx.de> Tested-by: Heiko Schocher <hs@denx.de> Tested-by: Reinhard Meyer <u-boot@emk-elektronik.de>
* common: Enable serial for PXA250Marek Vasut2010-10-19-1/+1
| | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
* serial.c: Fix build breakage introduced with commit e3c78c9bStefan Roese2010-10-06-0/+1
| | | | | | | | | | | | | | This patch fixes the compilation problem introduced with commit e3c78c9b [ppc4xx: Remove now unused CONFIG_UART1_CONSOLE]: -> ./MAKEALL TB5200 Configuring for TB5200 board... serial.c: In function '__default_serial_console': serial.c:94: warning: no return statement in function returning non-void I accidentally removed an "#else" line. This patch adds it back. Signed-off-by: Stefan Roese <sr@denx.de>
* ppc4xx: Remove now unused CONFIG_UART1_CONSOLEStefan Roese2010-09-23-4/+1
| | | | | | | | CONFIG_UART1_CONSOLE was a PPC4xx specific implementation and is now removed since the move from the 4xx UART driver to the common NS16550 UART driver. Let's remove all references to this define now. Signed-off-by: Stefan Roese <sr@denx.de>
* ppc4xx: Use common NS16550 driver for PPC4xx UARTStefan Roese2010-09-23-9/+1
| | | | | | | | | | | | | | | | This patch removes the PPC4xx UART driver. Instead the common NS16550 driver is used, since all PPC4xx SoC's use this peripheral device. The file 4xx_uart.c now only implements the UART clock calculation function which also sets the SoC internal UART divisors. All PPC4xx board config headers are changed to use this common NS16550 driver now. Tested on these boards: acadia, canyonlands, katmai, kilauea, sequoia, zeus Signed-off-by: Stefan Roese <sr@denx.de>
* Merge branch 'master' of git://git.denx.de/u-boot-samsungWolfgang Denk2010-09-08-2/+2
|\
| * ARMV7: S5P: rename from CONFIG_S5PC1XX to CONFIG_S5PMinkyu Kang2010-08-26-2/+2
| | | | | | | | | | | | | | Use the same configuration around S5P SoCs. (s5pc100, s5pc110, s5pc210 and so on) Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* | ARM: Add support for MB86R0x SoCsMatthias Weisser2010-08-10-3/+3
|/ | | | Signed-off-by: Matthias Weisser <weisserm@arcor.de>
* x86: Use CONFIG_SERIAL_MULTIGraeme Russ2010-05-06-1/+2
| | | | Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* SAMSUNG: serial: modify name from s5pc1xx to s5pMinkyu Kang2010-04-30-8/+8
| | | | | | | Because of other s5p series SoC will use these serial functions, modify function's name and structure's name. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* mpc512x: add multi serial PSC supportAnatolij Gustschin2010-04-24-0/+23
| | | | | | | | | | | | | | | | | | Extend mpc512x serial driver to support multiple PSC ports. Subsequent patches for PDM360NG board support make use of this functionality by defining CONFIG_SERIAL_MULTI in the board config file. Additionally the used PSC devices are specified by defining e.g. CONFIG_SYS_PSC1, CONFIG_SYS_PSC4 and CONFIG_SYS_PSC6. Support for PSC devices other than 1, 3, 4 and 6 is not added by this patch because these aren't used currently. In the future it can be easily added using DECLARE_PSC_SERIAL_FUNCTIONS(N) and INIT_PSC_SERIAL_STRUCTURE(N) macros in cpu/mpc512x/serial.c. Additionally you have to add code for registering added devices in serial_initialize() in common/serial.c. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* s5pc1xx: support serial driverMinkyu Kang2009-10-13-0/+18
| | | | | | | | This patch includes the serial driver for s5pc1xx. s5pc1xx uart driver needs own register setting and clock configuration. So, need to special driver. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* Conditionally perform common relocation fixupsPeter Tyser2009-10-03-0/+2
| | | | | | | | | | | Add #ifdefs where necessary to not perform relocation fixups. This allows boards/architectures which support relocation to trim a decent chunk of code. Note that this patch doesn't add #ifdefs to architecture-specific code which does not support relocation. Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
* stdio/device: rework function naming conventionJean-Christophe PLAGNIOL-VILLARD2009-07-18-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far the console API uses the following naming convention: ======Extract====== typedef struct device_t; int device_register (device_t * dev); int devices_init (void); int device_deregister(char *devname); struct list_head* device_get_list(void); device_t* device_get_by_name(char* name); device_t* device_clone(device_t *dev); ======= which is too generic and confusing. Instead of using device_XX and device_t we change this into stdio_XX and stdio_dev This will also allow to add later a generic device mechanism in order to have support for multiple devices and driver instances. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Edited commit message. Signed-off-by: Wolfgang Denk <wd@denx.de>
* 8xxx: Second UART port added for MPC85xx, MPC83xx, MPC86xx processorsPoonam Aggrwal2009-07-02-1/+2
| | | | | | | | | | | Defining the next two configs allows to switch the serial port from the console using the setenv stdin and stdout 1. #define CONFIG_SERIAL_MULTI 1 /* Enable both serial ports */ 2. #define CONFIG_SYS_CONSOLE_IS_IN_ENV /* determine from environment */ Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com> Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* ZOOM2 Add serial support.Tom Rix2009-06-12-0/+2
| | | | | | | | | | | | | | | | | | Zoom2 serial is in general supplied by one of the 4 UARTS on the debug board. The default serial is from the USB connector on left side of the debug board. The USB connector will produce 2 of the 4 UARTS. On your host pick the first enumeration. The details of the setting of the serial gpmc setup are not available. The values were provided by another party. The serial port set up is the same with Zoom1. Baud rate 115200, 8 bit data, no parity, 1 stop bit, no flow. The kernel bootargs are console=ttyS3,115200n8 Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
* common/{hush, kgdb, serial}.c: build by COBJS-$(...) in MakefileMike Frysinger2009-02-11-4/+0
| | | | | | | | Move global '#ifdef CONFIG_xxx .... #endif' out of the .c files and into the COBJS-$(CONFIG_xxx) in the Makefile. Also delete unused var in kgdb code in the process. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* rename CFG_ macros to CONFIG_SYSJean-Christophe PLAGNIOL-VILLARD2008-10-18-7/+7
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* ARM: s3c24xx: Multiple serial port supportHarald Welte2008-02-04-0/+15
| | | | | | This patch adds support for CONFIG_SERIAL_MULTI on s3c24x0 CPU's Signed-off-by: Harald Welte <laforge@openmoko.org>
* serial: Make default_serial_console() a weak functionMatthias Fuchs2008-01-09-1/+3
| | | | | | | | | With this patch it is possible to reimplement default_serial_console() in board specific code. This will be done in the upcomming PMC440 U-Boot port. This also allows the lwmon board maintainer to remove the '#if !defined(CONFIG_LWMON) ...' from common/serial.c. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
* ppc4xx: Add PPC405EX supportStefan Roese2007-10-31-2/+4
| | | | Signed-off-by: Stefan Roese <sr@denx.de>
* PXA270: Add support for multiple serial ports.stefano babic2007-09-07-2/+11
| | | | | | | This patch adds support for multiple serial ports to the PXA target. FFUART, BTUART and STUART are supported. Signed-off-by: Stefano Babic <sbabic@denx.de>
* [PATCH] Clean up 40EZ/Acadia supportStefan Roese2007-03-24-2/+2
| | | | | | | This patch cleans up all the open issue of the preliminary Acadia support. Signed-off-by: Stefan Roese <sr@denx.de>
* Make the serial driver framework work with CONFIG_SERIAL_MULTI enabledWolfgang Denk2006-08-30-1/+27
|
* Merge: Add support for AMCC 440SPe CPU based eval board (Yucca).Marian Balakowicz2006-06-30-1/+5
|\
| * Add support for AMCC 440SPe CPU based eval board (Yucca).Marian Balakowicz2006-06-30-1/+5
| |
* | Add support for CONFIG_SERIAL_MULTI on MPC5xxxWolfgang Denk2006-06-16-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Patch by Martin Krause, 8 Jun 2006 This patch supports two serial consoles on boards with a MPC5xxx CPU. The console can be switched at runtime by setting stdin, stdout and stderr to the desired serial interface (serial0 or serial1). The PSCs to be used as console port are definded by CONFIG_PSC_CONSOLE and CONFIG_PSC_CONSOLE2. See README.serial_multi for details.
* | GCC-4.x fixes: clean up global data pointer initialization for all boards.Wolfgang Denk2006-03-31-14/+2
|/
* * Patch by Leif Lindholm, 23 Sep 2004:wdenk2005-01-09-0/+9
| | | | | | | | add support for the AMD db1550 board * Patch by Travis Sawyer, 15 Sep 2004: Add CONFIG_SERIAL_MULTI support for ppc4xx, update README.serial_multi
* Cleanupwdenk2004-10-11-6/+6
|
* * Patch by Pantelis Antoniou, 14 Sep 2004:wdenk2004-10-11-54/+62
| | | | | | | Fix early serial hang when CONFIG_SERIAL_MULTI is defined. * Patch by Pantelis Antoniou, 14 Sep 2004: Kick watchdog when bz-decompressing
* * Code cleanupwdenk2004-08-01-0/+196
* Patch by Sascha Hauer, 28 Jun: - add generic support for Motorola i.MX architecture - add support for mx1ads, mx1fs2 and scb9328 boards * Patches by Marc Leeman, 23 Jul 2004: - Add define for the PCI/Memory Buffer Configuration Register - corrected comments in cpu/mpc824x/cpu_init.c * Add support for multiple serial interfaces (for example to allow modem dial-in / dial-out)