linux/drivers
Anton Vorontsov 24d481ecae 8250: Now honours baud rate lower bounds
A platform clock drives 8250 ports in most SOC systems, the clock
might run at high frequencies, and so it's not always possible to
downscale uart clock to a desired value.

Currently the 8250 uart driver accepts not supported baud rates, and
what is worse, it is doing this silently, and then passes not accepted
values to a new termios, so userspace has no chance to catch this kind
of errors (userspace verifies that settings were accepted by reading
back and comparing the settings).

This patch fixes the issue by passing minimum baud rate to the
uart_get_baud_rate() call, the call should take care of all bounds,
so userspace should now report:

  # stty -F /dev/ttyS0 speed 300
  115200
  stty: /dev/ttyS0: unable to perform all requested operations

p.s. uart_get_baud_rate() falls back to 9600, which still might be too
     low for some 10 GHz platforms, but that's a separate issue, and
     we can wait with fixing this till we find such a platform.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-19 13:13:20 -07:00
..
accessibility
acpi Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-09-16 07:49:54 -07:00
amba Merge branches 'arm', 'at91', 'bcmring', 'ep93xx', 'mach-types', 'misc' and 'w90x900' into devel 2009-09-12 12:01:34 +01:00
ata libata: Add pata_atp867x driver for Artop/Acard ATP867X controllers 2009-09-17 16:47:06 -04:00
atm
auxdisplay
base Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev 2009-09-15 09:50:49 -07:00
block Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 2009-09-16 08:27:10 -07:00
bluetooth pcmcia: dtl1_cs: fix pcmcia_loop_config logic 2009-09-15 10:17:16 -07:00
cdrom
char tty: Fix a typo noted in passing 2009-09-19 13:13:19 -07:00
clocksource sh: CMT suspend/resume 2009-08-15 12:58:45 +09:00
connector
cpufreq Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq 2009-09-18 09:16:57 -07:00
cpuidle
crypto
dca
dio
dma at_hdmac: Rework suspend_late()/resume_early() 2009-09-14 20:27:00 +02:00
edac amd64_edac: check NB MCE bank enable on the current node properly 2009-09-16 13:05:46 +02:00
eisa
firewire driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
firmware driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
gpio gpio: Add WM831X GPIO driver 2009-09-17 09:47:01 +02:00
gpu PCI/vgaarb: cleanup some warnings + cleanup some comments. 2009-09-09 13:29:41 -07:00
hid Merge branches 'upstream', 'upstream-fixes' and 'debugfs' into for-linus 2009-09-13 20:09:41 +02:00
hwmon Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 2009-09-18 09:22:36 -07:00
i2c i2c: Runtime PM for SuperH Mobile I2C 2009-08-23 18:03:19 +09:00
ide Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-next-2.6 2009-09-15 10:01:16 -07:00
idle
ieee1394 drivers: Kill now superfluous ->last_rx stores 2009-09-02 23:07:36 -07:00
ieee802154 netdev: convert bulk of drivers to netdev_tx_t 2009-09-01 01:14:07 -07:00
infiniband driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
input Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2009-09-18 09:43:09 -07:00
isdn tty: gigaset: really fix chars_in_buffer 2009-09-19 13:13:09 -07:00
leds leds: after setting inverted attribute, we must update the LED 2009-08-26 20:06:53 -07:00
lguest
macintosh Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2009-09-15 09:51:09 -07:00
mca
md Merge branch 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block 2009-09-14 17:55:15 -07:00
media Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-09-16 13:48:32 +09:00
memstick
message Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2009-09-14 17:53:36 -07:00
mfd mfd: Convert WM8350 to use request_threaded_irq() 2009-09-17 15:48:18 +02:00
misc Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 2009-09-18 09:33:07 -07:00
mmc driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
mtd Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 2009-09-18 09:19:26 -07:00
net slip: Clean up create and destroy 2009-09-19 13:13:17 -07:00
nubus
of
oprofile
parisc
parport
pci Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-09-16 07:49:54 -07:00
pcmcia Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pcmcia-2.6 2009-09-16 08:11:23 -07:00
platform hp-wmi: Switch driver to dev_pm_ops 2009-09-14 20:26:59 +02:00
pnp
power
pps pps: fix incorrect verdict check 2009-08-26 20:06:52 -07:00
ps3 powerpc/ps3: Workaround for flash memory I/O error 2009-09-11 11:28:00 +10:00
rapidio
regulator regulator: Voltage count for AB3100 2009-09-17 15:48:24 +02:00
rtc Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2009-09-18 09:43:09 -07:00
s390 driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
sbus
scsi driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
serial 8250: Now honours baud rate lower bounds 2009-09-19 13:13:20 -07:00
sh sh: Fix up simplified multi-evt handling under sparseirq. 2009-08-31 15:15:33 +09:00
sn
spi Merge branch 'master' into devel 2009-09-12 12:04:37 +01:00
ssb ssb/sdio: fix printk format warnings 2009-09-16 16:21:00 -04:00
staging MIPS: Octeon: False positive timeout 2009-09-17 20:07:41 +02:00
tc
telephony
thermal thermal_sys: check get_temp return value 2009-08-26 20:06:52 -07:00
uio Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2009-09-18 09:43:09 -07:00
usb mos7840: remove old dead modem logic 2009-09-19 13:13:19 -07:00
uwb Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb 2009-09-17 09:44:09 -07:00
video Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2009-09-18 09:43:09 -07:00
virtio
vlynq
w1
watchdog [WATCHDOG] sizeof cleanup 2009-09-18 08:39:37 +00:00
xen Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-09-15 09:39:44 -07:00
zorro
Kconfig
Makefile