aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/serial/samsung.c
Commit message (Collapse)AuthorAge
* serial: samsung.c: mark s3c24xx_serial_remove as __devexitPeter Korsgaard2009-06-22
| | | | | | | | | | | Mark the remove function as __devexit so it gets eliminated in CONFIG_HOTPLUG=n builds. Saves ~100 bytes. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Acked-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [ARM] S3C: Add UDIVSLOT support for newer UARTSBen Dooks2009-05-01
| | | | | | | Add support for the UDIVSLOT register on the newer UART blocks which gives the capability of 1/16ths adjustment to the baud rate. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] 5449/1: S3C: Use disable_irq_nosync() to fix boot lockupsMark Brown2009-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | With 2.6.30-rc1 on SMDK6410 I experience a soft lockup on bootup when the Samsung serial driver attempts to disable the transmit interrupt from within the transmit interrupt handler: it calls disable_irq() which locks up due to attempting to synchronise with the running handler. Fix this by using disable_irq_nosync(). Also make the same change in the recieve path. Backtrace: [<c002a914>] (__irq_svc+0x34/0x80) from [<c00696c0>] (synchr) [<c00696c0>] (synchronize_irq+0xc/0xcc) from [<c018d434>] (s) [<c018d434>] (s3c24xx_serial_stop_tx+0x1c/0x3c) from [<c018d) [<c018d54c>] (s3c24xx_serial_tx_chars+0xf8/0x104) from [<c00) [<c0068bcc>] (handle_IRQ_event+0x74/0x118) from [<c006ab04>]) [<c006ab04>] (handle_level_irq+0x100/0x118) from [<c00349c4>) [<c00349c4>] (s3c_irq_demux_uart+0x94/0xc4) from [<c002a050>) [<c002a050>] (_text+0x50/0x6c) from [<c002a914>] (__irq_svc+) Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] S3C: Remove cpufreq warnings for unset serial informationBen Dooks2008-12-18
| | | | | | | | As noted by Russell King, do not print any warnings if the uinfo or tty fields are not set when a CPU frequency change is sent. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C: Update CONFIG_SERIAL_SAMSUNG_UARTS handlingBen Dooks2008-12-18
| | | | | | | | | Fix the usage of CONFIG_SERIAL_SAMSUNG_UARTS in several places in the kernel where it had been missed. This finishes fixing a long standing issue where S3C2443 and S3C64XX could not use the 4th UART Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C: Update number of serial portsBen Dooks2008-12-18
| | | | | | | Update the serial driver to handle the 4 ports of the S3C2443 and S364XX series. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C: Update serial driver IRQ handlingBen Dooks2008-12-15
| | | | | | | | The S3C64XX code changes the order of the serial interrupts, so change the registration process to pickup the extra IRQ resources. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C6400: serial support for S3C6400 and S3C6410 SoCsBen Dooks2008-12-15
| | | | | | | Add support to the Samsung serial driver for the S3C6400 and S3C6410 serial ports. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C24A0: Serial port definitions and driver support.Sandeep Patil2008-12-15
| | | | | | | | | | Add serial support for S3C24A0, based on current S3C2410 UART driver. It adds necessary new defines in regs-serial.h for S3C24A0 and the code to support this device in drivers/serial/s3c24a0.c Signed-off-by: Sandeep Patil <sandeep.patil@azingo.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] CPUFREQ: S3C24XX serial CPU frequency scaling support.Ben Dooks2008-12-15
| | | | | | | Add support for CPU frequency scalling to the S3C24XX serial driver. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] S3C24XX: Move files out of include/asm-arm/plat-s3c*Ben Dooks2008-10-07
| | | | | | | | | | | First move of items out of include/asm-arm/plat-s3c* to their new homes under arch/arm/plat-s3c/include/plat and arch/arm/plat-s3c24xx/include/plat directories. Note, we have to create a dummy arch/arm/plat-s3c/Makefile to allow us to add arch/arm/plat-s3c/include/plat to the path. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
* [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/machRussell King2008-08-07
| | | | | | This just leaves include/asm-arm/plat-* to deal with. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* [ARM] Remove asm/hardware.h, use asm/arch/hardware.h insteadRussell King2008-08-07
| | | | | | | | | Remove includes of asm/hardware.h in addition to asm/arch/hardware.h. Then, since asm/hardware.h only exists to include asm/arch/hardware.h, update everything to directly include asm/arch/hardware.h and remove asm/hardware.h. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* port_fixups: Fix ups for tty port changesAlan Cox2008-07-22
| | | | | | | | I missed the cpm_uart one. Thanks to Kumar Gala for reporting it. A double check found samsung also needed fixing up. Signed-off-by: Alan Cox <alan@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* [ARM] S3C24XX: Split serial driver into core and per-cpu driversBen Dooks2008-07-03
The S3C2410 serial driver in drivers/serial/s3c2410.c has been growing bigger with the addition of more variants of this hardware with the growing Samsung SoCs range. As such, it would be easier to split this code up into a core and per-cpu drivers to make driver addition easier, and the core smaller. Signed-off-by: Ben Dooks <ben-linux@fluff.org>