aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
Commit message (Collapse)AuthorAge
* rtc-ds1307 becomes new-style i2c driverDavid Brownell2007-07-17
| | | | | | | | | | | | | | | | | | Convert the rtc-ds1307 driver into a "new style" driver. Also improve probe() checks: be more correct about switching out of AM/PM mode, and issue a (debug) diagnostic when failing due to bogus register values. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Andrew Victor <andrew@sanpeople.com> Cc: Bill Gatliff <bgat@billgatliff.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Cc: Paul Mackerras <paulus@samba.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Kumar Gala <galak@gate.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc-ds1307: oscillator restart for ds13{37,38,39,40}Rodolfo Giometti2007-07-17
| | | | | | | | | | | | | | | | When we find a ds1337 or ds1339 with the oscillator powered off, turn it on. If the oscillator fault flag was set, clear it and warn that the clock needs to be set. David Brownell: Bugfixes; provide corresponding update for ds1338, and the core of the fix for ds1340. Use a common warning message ("SET TIME!") whenever the clock needs to be set after oscillator fault (or oscillator enable, if fault is not a separate status). Signed-off-by: Rodolfo Giometti <giometti@linux.it> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* RTC driver for DS1216 chipsThomas Bogendoerfer2007-07-17
| | | | | | | | | | | RTC driver for Dallas/Maxim DS126 chips used in SNI RM200/RM400 [akpm@linux-foundation.org: cleanups] Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Acked-by: Alessandro Zummo <a.zummo@towertech.it> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc: add support for the ST M48T59 RTCMark Zhan2007-07-17
| | | | | | | | | [akpm@linux-foundation.org: x86_64 build fix] [akpm@linux-foundation.org: The acpi guys changed the bin_attribute code] Signed-off-by: Mark Zhan <rongkai.zhan@windriver.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc: watchdog support for rtc-m41t80 driverAtsushi Nemoto2007-07-17
| | | | | | | | | | | | Add a watchdog driver interface to rtc-m41t80 driver. This is derived from works by Alexander Bigga <ab@mycable.de> Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Alexander Bigga <ab@mycable.de> Cc: David Brownell <david-b@pacbell.net> Acked-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc: add rtc-m41t80 driverAtsushi Nemoto2007-07-17
| | | | | | | | | | | | | | | | | | | | This is a new-style i2c driver for ST M41T80 series RTC chip, derived from works by Alexander Bigga <ab@mycable.de> who wrote the original rtc-m41txx.c based on drivers/i2c/chips/m41t00.c driver. This driver supports M41T8[0-4] and M41ST8[457]. The old m41t00 driver supports M41T00, M41T81 and M41T85(M41ST85). While the M41T00 chip is now supported by rtc-ds1307 driver, this driver does not include support for the chip. [akpm@linux-foundation.org: remove bogus `static'] Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Alexander Bigga <ab@mycable.de> Acked-by: Mark A. Greer <mgreer@mvista.com> Cc: David Brownell <david-b@pacbell.net> Acked-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* RTC Kconfig tweaxDavid Brownell2007-07-17
| | | | | | | | | | | Minor fix to the Kconfig for RTCs: don't display section headers for I2C or SPI unless they're configured. And depend on SPI_MASTER; having slave support wouldn't help. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* RTC_CLASS is no longer considered EXPERIMENTALAlessandro Zummo2007-07-17
| | | | | | | | RTC class is mature enough. Signed-off-by: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Driver for the Atmel on-chip RTC on AT32AP700x devicesHans-Christian Egtvedt2007-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | Tested on the AT32AP7000/ATSTK1000. Driver does only suport time, wake up and a very simple alarm, because of hardware limitations. Hardware documentation can be found in the AT32AP7000 data sheet, which can be downloaded from http://www.atmel.com/dyn/products/datasheets.asp?family_id=682 From: David Brownell <david-b@pacbell.net> - Strike some alarm setup code that's no longer needed. (This patch seems to have gotten lost somewhere...) - Make the driver name (and its module alias) match what the platform setup code uses, so the driver can bind and hotplug. [akpm@linux-foundation.org: fix several checkpatch.pl warnings] Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com> Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc-dev: return -ENOTTY in ioctl if irq_set_freq is not implemented by driverHans-Christian Egtvedt2007-07-17
| | | | | | | | | Signed-off-by: Hans-Christian Egtvedt <hcegtvedt@atmel.com> Cc: Haavard Skinnemoen <hskinnemoen@atmel.com> Cc: David Brownell <david-b@pacbell.net> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc-rs5c372 becomes a new-style i2c driverDavid Brownell2007-07-17
| | | | | | | | | | | | | | | | | | | | | | | | Convert rtc-rs5c372 to be a "new style" I2C driver, and update the Kconfig text to be more complete.. Verified on an OMAP H4 development platform, along with a board init patch to declare its rv5c387a device. Only one defconfig -- powerpc/linkstation -- uses this driver; but several other platforms use it, just without defconfig support. Such platforms need to be converted so (a) their I2C adapter driver supports new-style drivers, and (b) board init code declares this I2C device. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Voipio Riku <Riku.Voipio@movial.fi> Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: Martin Michlmayr <tbm@cyrius.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: Alessandro Zummo <a.zummo@towertech.it> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* rtc-ds1307 cleanupsDavid Brownell2007-07-17
| | | | | | | | | | | | | | | | | | | | | This updates the rtc-ds1307 driver so that converting it to a "new style" driver (driver model, not legacy i2c model) will involve fewer changes. - Use pointer to i2c_client almost everywhere, so that it's easy to let the i2c core create that object; - Avoid using i2c_client.adapter, since that field is redundant and thus may go away (same object as i2c_client.dev.parent). - Extend type enum to include various RTCs this is expected to work with, and include register support for them. It also cleans up the support for multiple chip types, and fixes a glitch that could appear with an un-initialized RTC. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2o debug output cleanupVasily Averin2007-07-17
| | | | | | | | | | | Fix output of i2o debug messages, extra KERN_ are removed. Signed-off-by: Vasily Averin <vvs@sw.ru> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2o proc reading oopsVasily Averin2007-07-17
| | | | | | | | | | | | Fix oops on reading from some i2o proc files (i2o_seq_show_driver_store() and other) because their handlers uses "exec" field in struct i2o_controller Signed-off-by: Vasily Averin <vvs@sw.ru> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2o message leak in i2o_msg_post_wait_mem()Vasily Averin2007-07-17
| | | | | | | | | | | We need to free i2o msg in case of error. Signed-off-by: Vasily Averin <vvs@sw.ru> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* wrong memory access in i2o_block_device_lock()Vasily Averin2007-07-17
| | | | | | | | | | | | | | This patch fixes access to memory that has not been allocated: i2o_msg_get_wait() can returns errors different from I2O_QUEUE_EMPTY. But the result is checked only against this code. If it is not I2O_QUEUE_EMPTY then we dereference the error code as the pointer later. Signed-off-by: Vasily Averin <vvs@sw.ru> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i2o_cfg_passthru cleanupVasily Averin2007-07-17
| | | | | | | | | | | | | | | | | | | This patch fixes a number of issues in i2o_cfg_passthru{,32}: - i2o_msg_get_wait() return vaile is not checked; - i2o_message memory leaks on error paths; - infinite loop to sg_list_cleanup in passthru32 It's important issue because of i2o_cfg_passthru is used by raidutils for monitorig controllers state, and in case of memory shortage it leads to the node crash or disk IO stall. [akpm@linux-foundation.org: fix null-ptr deref] Signed-off-by: Vasily Averin <vvs@sw.ru> Acked-by: Alan Cox <alan@lxorguk.ukuu.org.uk> Cc: Markus Lidel <Markus.Lidel@shadowconnect.com> Acked-by: Kirill Korotaev <dev@openvz.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* i4l: leak in eicon/idifunc.cArmin Schindler2007-07-17
| | | | | | | | | | | | coverity spotted a possible leak in the idifunc.c file (bug id #1252), in um_new_card(), if the diva_user_mode_idi_create_adapter() fails, we dont free the memory allocated for card Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Acked-by: Armin Schindler <armin@melware.de> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* isdn/capi warning fixesAndrew Morton2007-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | drivers/isdn/capi/capi.c: In function 'handle_minor_send': drivers/isdn/capi/capi.c:552: warning: cast from pointer to integer of different size Of course, the code here might actually be buggy, in which case this patch should not be applied? Answer: No this field is ignored inside linux kernel.Yes this is ugly, but it's the CAPI spec for all OS. CAPI DATA_B3 Request/Indication CAPI Message has a mandatory field which represent the 32 bit buffer address of the payload data. In linux the payload data do not use a sperate buffer, data follows directely after the CAPI Message in the same skb and we use this assumption inside the drivers, so we can ignore this field. Inside the linux CAPI implemetation we never use this field, so it could also have no value, but since random data in a message is bad as well (e.g. displayed in CAPI traces) we set is to the most adequate value. Outside the kernel the capi20 library sets the correct addresses (there is an optional second field for 64 bit adresses for 64 bit systems, we do not use here). Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use menuconfig objects: ISDN: CONFIG_CAPI_EICONJan Engelhardt2007-07-17
| | | | | | | | | | | Transform Kconfig objects from "menu, config" into "menuconfig" so that the user can disable the whole feature without having to enter the menu first. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use menuconfig objects: ISDN: CONFIG_CAPI_AVMJan Engelhardt2007-07-17
| | | | | | | | | | | Transform Kconfig objects from "menu, config" into "menuconfig" so that the user can disable the whole feature without having to enter the menu first. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use menuconfig objects: ISDN: CONFIG_ISDN_CAPIJan Engelhardt2007-07-17
| | | | | | | | | Transform "depends on" into a simpler if-endif block style dependency. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use menuconfig objects: ISDN: CONFIG_ISDNJan Engelhardt2007-07-17
| | | | | | | | | | Transform Kconfig objects from "menu, config" into "menuconfig" so that the user can disable the whole feature without having to enter the menu first. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* sane irq initialization in sedlbauer hisaxKarsten Keil2007-07-17
| | | | | | | | | | | | | The interrupts schould be disabled until the driver is ready and the IRQ function was registered. Thanks to Bastian Friedrich and Thomas Voegtle for spotting this. Signed-off-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Bastian Friedrich <bastian@bastian-friedrich.de> Signed-off-by: Thomas Voegtle <tv@lio96.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Make ISDN CAPI use seq_list_xxx helpersPavel Emelianov2007-07-17
| | | | | | | | | | | The similar code exists here and is called capi_driver_get_idx(). Use generic helpers now and remember to convert list_head to struct capi_driver in .show callback. Signed-off-by: Pavel Emelianov <xemul@openvz.org> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Mismatching declarations of revision strings in HiSaxDavid Woodhouse2007-07-17
| | | | | | | | | The {l1,l2,l3,lli,tei}_revision strings in the HiSax driver are 'const', but have a mismatching declaration as 'extern char *' in config.c. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Use mutex instead of semaphore in CAPI 2.0 driverMatthias Kaehlcke2007-07-17
| | | | | | | | | | The CAPI 2.0 driver uses a semaphore as mutex. Use the mutex API instead of the (binary) semaphore. Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Acked-by: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* use mutex instead of semaphore in SPI core/init codeMatthias Kaehlcke2007-07-17
| | | | | | | | | | The SPI core/init code uses a semaphore as mutex. Use the mutex API instead of the (binary) semaphore. Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Acked-by: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spi_txx9 controller driverAtsushi Nemoto2007-07-17
| | | | | | | | | This is a driver for SPI controller built into TXx9 MIPS SoCs. This driver is derived from arch/mips/tx4938/toshiba_rbtx4938/spi_txx9.c. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* SPI: omap2_mcspi driverSamuel Ortiz2007-07-17
| | | | | | | | | | | | | | | | | | Add OMAP24XX McSPI (Multichannel SPI) controller driver. This driver is tested very well under OMAP GIT tree with N800 - Nokia Internet Tablet, and some other OMAP2 boards. Recent updates included bugfixes, cleanups, speedups, and better conformance to the current SPI programming interface. This doesn't yet understand the third controller instance on the OMAP 2430. [david-b@pacbell.net: more minor cleanups to the omap2_mcspi driver] Signed-off-by: Juha Yrjölä <juha.yrjola@solidboot.com> Signed-off-by: Trilok Soni <soni.trilok@gmail.com> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spi_mpc83xx.c: support QE enabled 83xx CPU's like mpc832xJoakim Tjernlund2007-07-17
| | | | | | | | | | | Quicc Engine enabled mpc83xx CPU's has a somewhat different HW interface to the SPI controller. This patch adds a qe_mode knob that sees to that needed adaptions are performed. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* SPI master driver for Xilinx virtexAndrei Konovalov2007-07-17
| | | | | | | | | | | | | | Simple SPI master driver for Xilinx SPI controller. No support for multiple masters. Not using level 1 drivers from EDK. [akpm@linux-foundation.org: uninlining] Signed-off-by: Yuri Frolov <yfrolov@ru.mvista.com> Signed-off-by: Andrei Konovalov <akonovalov@ru.mvista.com> Cc: Kumar Gala <galak@gate.crashing.org> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* SPI: tle620x power switch driverBen Dooks2007-07-17
| | | | | | | | | | | | Add support for the Infineon TLE62x0 series of low-side driver chips, such as the TLE6220 or TLE6230. These can be viewed as output GPIOs specialized for power switching applications. The driver provides a userspace interface to those GPIOs, and to the switch status they provide. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* S3c24xx SPI controllers both select 'bitbang'David Brownell2007-07-17
| | | | | | | | | | | | Tweak Kconfig for the S3C24XX SPI controller drivers. Both use the bitbang framework; only one previously said that. Plus in this case "select" is the right way to manage that dependency, since folk will not know up front to enable bitbang in order to even see those S3C drivers in order to enable them. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* atmel_spi: don't always deselect chip between messagesDavid Brownell2007-07-17
| | | | | | | | | | | | | | | | | | | | | | Update chipselect handling for atmel_spi: * Teach it how to leave chipselect active between messages; this helps various drivers work better. * Cope with at91rm0200 errata: nCS0 can't be managed with GPIOs. The MR.PCS value is now updated whenever a chipselect changes. (This requires SPI pinmux init for that controller to change, and also testing on rm9200; doesn't break at91sam9 or avr32.) * Fix minor glitches: spi_setup() must leave chipselects inactive, as must removal of the spi_device. Also tweak diagnostic messaging to be a bit more useful. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* atmel_spi: minor updatesDavid Brownell2007-07-17
| | | | | | | | | | | | | | | | | Minor updates to atmel_spi: - DMA: * Comments to explain the DMA policies * Report any mapping errors from spi_transfer() * Remove extra loop for DMA mapping - Diagnostics: report minimum clock rate, if we need to reject a spi_setup() request because that rate is too low. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spi_mpc83xx.c underclocking hotfixClifford Wolf2007-07-17
| | | | | | | | | | | | | | | | | | The MPC83xx SPI controller clock divider can divide the system clock by not more then 1024. The spi_mpc83xx driver does not check this and silently writes garbage to the SPI controller registers when asked to run at lower frequencies. I've tried to run the SPI on a 266MHz MPC8349E with 100kHz for debugging a bus problem and suddenly was confronted with a 2nd problem to debug.. ;-) The patch adds an additional check which avoids writing garbage to the SPI controller registers and warn the user about it. This might help others to avoid simmilar problems. Cc: Kumar Gala <galak@gate.crashing.org> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spi_lm70llp parport adapter driverKaiwan N Billimoria2007-07-17
| | | | | | | | | | | | | | This adds a driver for the LM70-LLP parport adapter, which is an eval board for the LM70 temperature sensor. For those without that board, it may be a simpler example of a parport-to-SPI adapter then spi_butterfly. Signed-off-by: Kaiwan N Billimoria <kaiwan@designergraphix.com> Doc, coding style, and interface updates; build fixes. Minor rename. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* spidev compiler warning goneDavid Brownell2007-07-17
| | | | | | | | | | | | | | | Get rid of annoying GCC warning on 32-bit platforms. drivers/spi/spidev.c: In function 'spidev_message': drivers/spi/spidev.c:184: warning: cast to pointer from integer of different size drivers/spi/spidev.c:216: warning: cast to pointer from integer of different size The trick is to add an extra cast using "ptrdiff_t" to convert the u64 to the correct size integer, and only then casting it into a "void *" pointer. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* SPI: add 3wire mode flagDavid Brownell2007-07-17
| | | | | | | | | | Add a new spi->mode bit: SPI_3WIRE, for chips where the SI and SO signals are shared (and which are thus only half duplex). Update the LM70 driver to require support for that hardware mode from the controller. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* SPI controller drivers: check for unsupported modesDavid Brownell2007-07-17
| | | | | | | | | | | | | | Minor SPI controller driver updates: make the setup() methods reject spi->mode bits they don't support, by masking aginst the inverse of bits they *do* support. This insures against misbehavior later when new mode bits get added. Most controllers can't support SPI_LSB_FIRST; more handle SPI_CS_HIGH. Support for all four SPI clock/transfer modes is routine. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* IBMASM: must depend on CONFIG_INPUTDmitry Torokhov2007-07-17
| | | | | | | | | | | | | IBMASM: must depend on CONFIG_INPUT The driver registers couple of input devices and therefore must depend on CONFIG_INPUT. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cc: Vernon Mauery <vernux@us.ibm.com> Cc: Max Asbock <masbock@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* IBMASM: miscellaneous fixesDmitry Torokhov2007-07-17
| | | | | | | | | | | | | | | | | IBMASM: miscellaneous fixes Fix some minor issues, such as: - properly set up ID of keyboard device (was mixed up with mouse) - constify translation tables - change some variables to #defines - set up input device's parent to form proper sysfs hierarchy - minor formatting changes Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cc: Vernon Mauery <vernux@us.ibm.com> Cc: Max Asbock <masbock@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* IBMASM: dont use extern in function declarationsDmitry Torokhov2007-07-17
| | | | | | | | | | | | IBMASM: don't use extern in function declarations We normally don't use extern in function declarations located in header files. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cc: Vernon Mauery <vernux@us.ibm.com> Cc: Max Asbock <masbock@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* IBMASM: whitespace cleanupDmitry Torokhov2007-07-17
| | | | | | | | | | IBMASM: whitespace cleanup Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Cc: Vernon Mauery <vernux@us.ibm.com> Cc: Max Asbock <masbock@us.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* sb1250-duart.c: SB1250 DUART serial supportMaciej W. Rozycki2007-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a driver for the SB1250 DUART, a dual serial port implementation included in the Broadcom family of SOCs descending from the SiByte SB1250 MIPS64 chip multiprocessor. It is a new implementation replacing the old-fashioned driver currently present in the linux-mips.org tree. It supports all the usual features one would expect from a(n asynchronous) serial driver, including modem line control (as far as hardware supports it -- there is edge detection logic missing from the DCD and RI lines and the driver does not implement polling of these lines at the moment), the serial console, BREAK transmission and reception, including the magic SysRq. The receive FIFO threshold is not maintained though. The driver was tested with a SWARM board which uses a BCM1250 SOC (which is dual MIPS64 CMP) and has both ports of the single DUART implemented wired externally. Both were tested. Testing included using the ports as terminal lines at 1200bps (which is the ports minimum), 115200bps and a couple of random speeds inbetween. The modem lines were verified to operate correctly. No testing was performed with a use as a network interface, like with SLIP or PPP. Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> Acked-by: Ralf Baechle <ralf@linux-mips.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* unregister_blkdev(): delete redundant messageAkinobu Mita2007-07-17
| | | | | | | | | | No need to warn unregister_blkdev() failure by caller. (The previous patch makes unregister_blkdev() print error message in error case) Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* unregister_blkdev() delete redundant messages in callersAkinobu Mita2007-07-17
| | | | | | | | | No need to warn unregister_blkdev() failure by the callers. (The previous patch makes unregister_blkdev() print error message in error case) Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Add support for Xilinx SystemACE CompactFlash interfaceGrant Likely2007-07-17
| | | | | | | | | | | Tested on Xilinx Virtex ppc405, Katmai 440SPe, and Microblaze Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Stefan Roese <sr@denx.de> Cc: Jens Axboe <axboe@kernel.dk> Cc: John William <jwilliams@itee.uq.edu.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* powerpc: 8xx: fix whitespace and indentationVitaly Bordug2007-07-17
| | | | | | | | | | | | | | | | Rolling forward PCMCIA driver, it was discovered that the indentation in existing one, as well as in BSP side are very odd. This patch is just result of Lindent run ontop of culprit files. Signed-off-by: Vitaly Bordug <vitb@kernel.crashing.org> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Olof Johansson <olof@lixom.net> Cc: Dominik Brodowski <linux@dominikbrodowski.net> Cc: Paul Mackerras <paulus@samba.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Kumar Gala <galak@gate.crashing.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>