summaryrefslogtreecommitdiff
path: root/drivers/serial
Commit message (Collapse)AuthorAgeLines
* Switch from archive libraries to partial linkingSebastien Carlier2010-11-17-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols". This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired. The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts. This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by: Sebastien Carlier <sebastien.carlier@gmail.com>
* Merge branch 'master' of git://git.denx.de/u-boot-samsungWolfgang Denk2010-10-29-14/+18
|\
| * Add generic support for samsung s3c2440C Nauman2010-10-28-13/+13
| | | | | | | | | | | | | | | | | | | | | | This patch adds generic support for the Samsung s3c2440 processor. Global s3c24x0 changes to struct members converting from upper case to lower case. Signed-off-by: Craig Nauman <cnauman@diagraph.com> Cc: kevin.morfitt@fearnside-systems.co.uk Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
| * ARMV7: S5P: serial: support the s5pc210Minkyu Kang2010-10-19-1/+5
| | | | | | | | | | | | | | | | | | This patch is for s5pc210 support. Due to the resigter of baudrate is changed from slot to value, add both of them to uart structure. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* | Coding Style cleanupWolfgang Denk2010-10-27-1/+1
| | | | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* | PXA: pxa-regs.h cleanupMarek Vasut2010-10-19-45/+49
|/ | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
* ns16550: Add WATCHDOG_RESET to putc for short watchdog timeout boardsStefan Roese2010-10-13-0/+9
| | | | | | | | | | | | | | | | | | | | Call watchdog_reset() upon newline. This is done here in putc since the environment code uses a single puts() to print the complete envrironment upon "printenv". So we can't put this watchdog call in puts(). This is needed for boards with a very short watchdog timeout, like the lwmon5 with a 100ms timeout. Without this patch this board resets in the commands with long outputs, like "printenv" or "fdt print". Note that the image size is not increased with this patch when CONFIG_HW_WATCHDOG or CONFIG_WATCHDOG are not defined since the compiler optimizes this additional code away. Signed-off-by: Stefan Roese <sr@denx.de> Fix typo in comment. Signed-off-by: Wolfgang Denk <wd@denx.de>
* ARMV7: Fixed baudrate setting in pl01x driverMatt Waddel2010-10-13-55/+38
| | | | | | | | | The pl01x serial driver was lacking the code to switch baudrates from the command line. Fixed by simply saving the new baudrate and calling serial_init() again. Also fixed CamelCase variables, I/O accessors and comment style. Signed-off-by: Matt Waddel <matt.waddel@linaro.org>
* Merge branch 'at91' of git://git.denx.de/u-boot-atmelWolfgang Denk2010-10-11-46/+46
|\
| * atmel_usart: change register access to C structureAndreas Bießmann2010-10-05-46/+46
| | | | | | | | | | | | | | This patch introduces C structure definition for register footprint of atmel's usart. Signed-off-by: Andreas Bießmann <biessmann@corscience.de>
* | MXC: Add watchdog support to serial driverStefano Babic2010-09-29-2/+5
|/ | | | | | | Calls WATCHDOG_RESET() inside serial driver for boards enabling watchdog. Signed-off-by: Stefano Babic <sbabic@denx.de>
* ppc4xx: Remove now unused CONFIG_UART1_CONSOLEStefan Roese2010-09-23-5/+0
| | | | | | | | 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>
* ARMV7: S5P: separate the peripheral clocksMinkyu Kang2010-08-30-2/+2
| | | | | | | | | | Because of peripheral devices can select clock sources, separate the peripheral clocks. (pwm, uart and so on) It just return the pclk at s5pc1xx SoC, but s5pc210 SoC must be calculated by own clock register setting. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* ARMV7: S5P: rename from CONFIG_S5PC1XX to CONFIG_S5PMinkyu Kang2010-08-26-1/+1
| | | | | | | Use the same configuration around S5P SoCs. (s5pc100, s5pc110, s5pc210 and so on) Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* S5P: Use accessor functions instead of SoC specific defines to access the ↵Minkyu Kang2010-08-17-5/+1
| | | | | | | | | | | base address This patch is intended to prepare the other S5P SoC. (s5pc210) If use SoC specific defines then can't share with other SoC. So, make the accessor functions for access the base address by common way. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* SAMSUNG: serial: remove compiler warningsMinkyu Kang2010-07-09-2/+2
| | | | | | | | | | | remove below warnings serial_s5p.c: In function 'serial_getc_dev': serial_s5p.c:136: warning: dereferencing type-punned pointer will break strict-aliasing rules serial_s5p.c: In function 'serial_putc_dev': serial_s5p.c:152: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
* Add Orion5x support to 16550 device driverAlbert Aribaud2010-06-17-0/+3
| | | | | | | This patch provides access to the 16550-compatible serial device of the Orion5x SoC. Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
* Coding style cleanup, update CHANGELOG.Wolfgang Denk2010-05-26-10/+12
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* SERIAL: Enable port-mapped accessGraeme Russ2010-05-06-30/+39
| | | | | | | | | The x86 architecture exclusively uses Port-Mapped I/O (inb/outb) to access the 16550 UARTs. This patch mimics how Linux selects between Memory-Mapped and Port-Mapped I/O. This allows x86 boards to use CONFIG_SERIAL_MUTLI and drop the custom serial port driver Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
* SAMSUNG: serial: modify name from s5pc1xx to s5pMinkyu Kang2010-04-30-16/+16
| | | | | | | 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>
* Merge branch 'next' of git://git.denx.de/u-boot-niosWolfgang Denk2010-04-27-2/+10
|\
| * altera_jtag_uart: bypass when no jtag connectionThomas Chou2010-04-24-2/+10
| | | | | | | | | | | | | | | | | | | | | | This patch adds an option to bypass output waiting when there is no jtag connection. This allows the jtag uart work similar to a serial uart, ie, boot even without connection. This option is enabled with CONFIG_ALTERA_JTAG_UART_BYPASS Signed-off-by: Thomas Chou <thomas@wytron.com.tw> Signed-off-by: Scott McNutt <smcnutt@psyent.com>
* | serial: struct serial_device: add uninit() entry for driversAnatolij Gustschin2010-04-24-0/+6
|/ | | | | | | | | | | | | | | Subsequent patch extends mpc512x serial driver to support multiple PSC ports. The driver will provide an uninit() function to stop the serial controller and to disable the controller's clock. Adding uninit() entry to struct serial_device allows disabling the serial controller after usage of a stdio serial device. This patch adds uninit() entry to the struct serial_device and fixes initialization of this structure in the code accordingly. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* Move arch/ppc to arch/powerpcStefan Roese2010-04-21-1/+1
| | | | | | | | | | | | | | | | | As discussed on the list, move "arch/ppc" to "arch/powerpc" to better match the Linux directory structure. Please note that this patch also changes the "ppc" target in MAKEALL to "powerpc" to match this new infrastructure. But "ppc" is kept as an alias for now, to not break compatibility with scripts using this name. Signed-off-by: Stefan Roese <sr@denx.de> Acked-by: Wolfgang Denk <wd@denx.de> Acked-by: Detlev Zundel <dzu@denx.de> Acked-by: Kim Phillips <kim.phillips@freescale.com> Cc: Peter Tyser <ptyser@xes-inc.com> Cc: Anatolij Gustschin <agust@denx.de>
* nios2: Fix outx/writex parameter order in io.hScott McNutt2010-04-02-9/+9
| | | | | | | | | The outx/writex macros were using writex(addr, val) rather than the standard writex(val, addr), resulting in incompatibilty with architecture independent components. This change set uses standard parameter order. Signed-off-by: Scott McNutt <smcnutt@psyent.com>
* nios2: Move serial drivers to individual files in drivers/serialScott McNutt2010-04-02-0/+355
| | | | | | | | The standard Altera UART & JTAG UART as well as the OpenCores YANU driver are now in individual files in drivers/serial rather than a single file uner cpu/nios2. Signed-off-by: Scott McNutt <smcnutt@psyent.com>
* ColdFire: Update uart_port_conf in serial driverTsiChung Liew2010-03-24-2/+2
| | | | | | Provide proper port passing from serial_init to uart_part_conf. Signed-off-by: TsiChung Liew <tsicliew@gmail.com>
* mod change 755 => 644 for multiple filesThomas Weber2010-03-21-0/+0
| | | | | | | | I executed 'find . -name "*.[chS]" -perm 755 -exec chmod 644 {} \;' Signed-off-by: Thomas Weber <swirl@gmx.li> Add some more: neither Makefile nor config.mk need execute permissions. Signed-off-by: Wolfgang Denk <wd@denx.de>
* Add support for Freescale MX25 SOCJohn Rigby2010-03-07-5/+5
| | | | | | | | | ARM926EJS core with MX31 peripherals. Signed-off-by: John Rigby <jcrigby@gmail.com> Earlier Version Signed-off-by: Wolfgang Denk <wd@denx.de> CC: Fred Fan <fanyefeng@gmail.com> CC: Tom <Tom.Rix@windriver.com>
* serial_mxc: add support for MX51 processorStefano Babic2010-03-07-6/+12
| | | | | | | The patch adds support for the Freescale mx51 processor. Signed-off-by: Stefano Babic <sbabic@denx.de> Signed-off-by: Fred Fan <fanyefeng@gmail.com>
* convert common files to new SoC accessJens Scharsig2010-02-12-0/+12
| | | | | | | | * add's a warning to all files, which need update to new SoC access * convert common files in cpu/../at91 and a lot of drivers to use c stucture SoC access Signed-off-by: Jens Scharsig <js_at_ng@scharsoft.de>
* ns16550: kick watchdog while waiting for a characterLadislav Michl2010-02-03-0/+2
| | | | | | | | ns16550 busyloops waiting for incoming byte causing watchdog to reboot while waiting for a key press. A call to WATCHDOG_RESET in NS16550_getc loop fixes it. Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
* SPEAr : usbd driver support for SPEAr SoCsVipin KUMAR2010-01-23-0/+2
| | | | | | | | | | | | | SPEAr SoCs contain a synopsys usb device controller. USB Device IP can work in 2 modes - DMA mode - Slave mode The driver adds support only for slave mode operation of usb device IP. This driver is used along with standard USBTTY driver to obtain a tty interface over USB on the host Signed-off-by: Vipin <vipin.kumar@st.com>
* OMAP3 Add usb device supportTom Rix2009-12-20-0/+2
| | | | | | | | | | | | This change adds the usb device support for musb. Omap3 platform support added at the same level as davinci. The interface for usbtty to use the musb device support was added. Verified on omap3 beagle, zoom1 and zoom2. Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
* Add a unified s3c24x0 header filekevin.morfitt@fearnside-systems.co.uk2009-11-27-5/+1
| | | | | | | | | | This patch adds a unified s3c24x0 cpu header file that selects the header file for the specific s3c24x0 cpu from the SOC and CPU configs defined in board config file. This removes the current chain of s3c24-type #ifdef's from the s3c24x0 code. Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* s5pc1xx: serial: fix the error check logicMinkyu Kang2009-11-27-7/+17
| | | | | | | Because of Frame error, Parity error and Overrun error are occured only receive operation, need to masking when error checking. Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* s3c64xx: move s3c64xx header files to asm-arm/arch-s3c64xxMinkyu Kang2009-11-27-1/+1
| | | | | | | This patch moves the s3c64xx header files from include/ to include/asm-arm/arch-s3c64xx Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* Move s3c24x0 header files to asm-arm/arch-s3c24x0/kevin.morfitt@fearnside-systems.co.uk2009-11-27-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch moves the s3c24x0 header files from include/ to include/asm-arm/arch-s3c24x0/. checkpatch.pl showed 2 errors and 3 warnings. The 2 errors were both due to a non-UTF8 character in David M?ller's name: ERROR: Invalid UTF-8, patch and commit message should be encoded in UTF-8 #489: FILE: include/asm-arm/arch-s3c24x0/s3c2410.h:3: + * David M?ller ELSOFT AG Switzerland. d.mueller@elsoft.ch As David's name correctly contains a non-UTF8 character I haven't fixed these errors. The 3 warnings were all because of the use of 'volatile' in s3c24x0.h: WARNING: Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt #673: FILE: include/asm-arm/arch-s3c24x0/s3c24x0.h:35: +typedef volatile u8 S3C24X0_REG8; +typedef volatile u16 S3C24X0_REG16; +typedef volatile u32 S3C24X0_REG32; I'll fix these errors in another patch. Tested by running MAKEALL for ARM8 targets and ensuring there were no new errors or warnings. Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* s5pc1xx: SMDKC100: fix compile warningsMinkyu Kang2009-10-24-1/+1
| | | | | | | fix the following compile warnings warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* Clean-up of s3c24x0 drivers excluding nand driverkevin.morfitt@fearnside-systems.co.uk2009-10-13-69/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch re-formats the arm920t s3c24x0 driver files, excluding the nand driver, in preparation for changes to add support for the Embest SBC2440-II Board. The changes are as follows: - re-indent the code using Lindent - make sure register layouts are defined using a C struct - replace the upper-case typedef'ed C struct names with lower case non-typedef'ed ones - make sure registers are accessed using the proper accessor functions - run checkpatch.pl and fix any error reports It assumes the following patch has been applied first: - [U-Boot][PATCH-ARM] CONFIG_SYS_HZ fix for ARM902T S3C24X0 Boards, 05/09/2009 - patches 1/4 and 2/4 of this series Tested on an Embest SBC2440-II Board with local u-boot patches as I don't have any s3c2400 or s3c2410 boards but need this patch applying before I can submit patches for the SBC2440-II Board. Also, temporarily modified sbc2410x, smdk2400, smdk2410 and trab configs to use the mtd nand driver (which isn't used by any board at the moment), ran MAKEALL for all ARM9 targets and no new warnings or errors were found. Signed-off-by: Kevin Morfitt <kevin.morfitt@fearnside-systems.co.uk> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
* s5pc1xx: support serial driverMinkyu Kang2009-10-13-0/+196
| | | | | | | | 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>
* stdio/device: rework function naming conventionJean-Christophe PLAGNIOL-VILLARD2009-07-18-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* arm: Kirkwood: Basic SOCs supportPrafulla Wadaskar2009-07-06-0/+3
| | | | | | | | | | | | | | | | | | | | | | Kirkwood family controllers are highly integrated SOCs based on Feroceon-88FR131/Sheeva-88SV131/arm926ejs cpu core. SOC versions supported:- 1) 88F6281-A0 define CONFIG_KW88F6281_A0 2) 88F6192-A0 define CONFIG_KW88F6192_A0 Other supported features:- 1) get_random_hex() fucntion 2) PCI Express port initialization 3) NS16550 driver support Contributors: Yotam Admon <yotam@marvell.com> Michael Blostein <michaelbl@marvell.com Reviewed-by: Ronen Shitrit <rshitrit@marvell.com> Acked-by: Stefan Rose <sr@denx.de> Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
* serial_mx31: allow it to work with mx27 too and rename to serial_mxcIlya Yanok2009-06-21-1/+22
| | | | | | | UART hardware on i.MX27 is the same as on the i.MX31 so we just need to provide the driver with correct address of the registers. Signed-off-by: Ilya Yanok <yanok@emcraft.com>
* ZOOM2 Add serial support.Tom Rix2009-06-12-2/+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>
* lh7a40x: move serial driver to drivers/serialJean-Christophe PLAGNIOL-VILLARD2009-06-12-0/+185
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* pxa: move serial driver to drivers/serialJean-Christophe PLAGNIOL-VILLARD2009-06-12-0/+386
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* arm/dcc: add xscale supportJean-Christophe PLAGNIOL-VILLARD2009-06-12-0/+16
| | | | Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* arm/dcc: use static support to allow to use it at anytimeJean-Christophe PLAGNIOL-VILLARD2009-06-12-114/+42
| | | | | | the dcc can be used at the start of the cpu Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
* Fix e-mail address of Gary Jennejohn.Detlev Zundel2009-05-15-2/+2
| | | | Signed-off-by: Detlev Zundel <dzu@denx.de>