aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)Author
2009-04-02ixgbe: feature - driver to default with FC on.Don Skidmore
In the past flow control wasn't enabled by default under the incorrect assumption that this opened up us to a denial of service attack. However since any switch that forwarded flow control would be extremely msiconfigured and/or buggy, this concern no longer out weighs the preformance gains from having FC enabled. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Acked-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix DCB netlink layer for 82599 to enable Priority Flow ControlPJ Waskiewicz
The priority flow control settings from the netlink layer aren't taking effect in the base driver. The boolean pfc_mode_enable in the dcb_config struct isn't being set, so the hardware configuration code is never reached. Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: Fix ethtool output with advertised mode.Don Skidmore
Ethtool tries to get advertised speed from phy.autoneg_advertised. However for copper media this wasn't happening until later do to an other fix which moved mac.ops.setup_link_speed placement in ixgbe_link_config(). This patch will display the default advertised speeds if it can't yet get this information from phy.autoneg_advertised. Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com> Acked-by: Mallikarjuna R Chilakala <mallikarjuna.chilakala@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02ixgbe: fix build when DEBUG is definedAlexander Duyck
The ixgbe driver had issues when DEBUG was defined because the hw_dbg macro was incomplete. This patch completes the code based off of the code that already existed in the igb module. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Acked-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/igb: Fix kexec with igb (rev. 3)Rafael J. Wysocki
Impact: Fix Yinghai Lu found one system with 82575EB where, in the kernel that is kexeced, probe igb failed with -2, the reason being that the adapter could not be brought back from D3 by the kexec kernel, most probably due to quirky hardware (it looks like the same behavior happened on forcedeth). Prevent igb from putting the adapter into D3 during shutdown except when we going to power off the system. For this purpose, seperate igb_shutdown() from igb_suspend() and use the appropriate PCI PM callbacks in both of them. Signed-off-by: "Rafael J. Wysocki" <rjw@sisk.pl> Reported-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: cleanup igb loopback pathAlexander Duyck
The code path for setting up phy loopback testing was out of date and was setting bits it didn't need to. This change cleans up the code path and removes some code that has no effect on teh driver. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: increase delay for copper link setupAlexander Duyck
Increase the delay for copper phy init from 15ms to 100ms. This is to address issues seen in which ethtool -t was failing in some cases on 82576 based adapters. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: set num_rx/tx_queues to 0 when queues are freedAlexander Duyck
An issue was seen on suspend in which the system reported a page fault. This was due to the new reg_idx code being called after the queues were freed. This update prevents any for loops from going through the queues by setting the number of queues to 0 when they are freed. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02igb: add support for x2 link width configurationsAlexander Duyck
When device is on PCIe link trained as x2 the driver is currently reporting link width as "unknown". The original patch provided by Myron adds the x2 link support and my changes are cosmetic to clean up the readability of the conditional operators. Based on work by: Myron Stowe <myron.stowe@hp.com> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: Don't dereference phy_device if it is NULLGrant Likely
The FEC Ethernet device isn't always attached to a phy. Be careful not to dereference phy_device if it is NULL. Also eliminates an unnecessary extra function from the ioctl path. Reported-by: Henk Stegeman <henk.stegeman@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: Migrate to net_device_ops.Henk Stegeman
Since not using net_device_ops gets you shunned out the cool crowd, this patch modifies the fec_mpc52xx Ethernet driver to provide the management hooks via a struct net_device_ops. Reported-by: Henk Stegeman <henk.stegeman@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02net/fec_mpc52xx: fix BUG on missing dma_opsGrant Likely
The driver triggers a BUG_ON() when allocating DMA buffers because the arch/powerpc dma_ops aren't in the net_device's struct device. This patch fixes the problem by using the parent of_device which does have the correct dma_ops set. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Becky Bruce <beckyb@kernel.crashing.org> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Kconfig and MakefileRamkrishna Vepa
- Kconfig and Makefile related changes for vxge driver. - No changes in current submission. - Changes from previous submission - - Incorporated the following review comments as per Bill Flink: - Add dependancy on INET along with PCI - Remove dependancy on INET_LRO and add GRO support. - Made this patch as last patch as per Ben Hutchings comments. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Driver versionRamkrishna Vepa
- Driver version - Changes from previous submission - - Updated driver version. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Ethtool relatedRamkrishna Vepa
This patch implements all ethtool related entry point functions for the driver. - Changes in this submission - - Removed redundant #include statements - Changes in previous submissions - - Removed unused statistics. - General clean up - removed unused variables and macros. - Incorporated following comments from Ben Hutchings - No need to restart the interface in vxge_ethtool_sset - Do not use #ifdef ADVERTISED_XX - Remove unnecessart intermediate copy in vxge_ethtool_gdrvinfo - Use strlcpy() to ensure null-termination. - Use ethtool_op_get_tso, ethtool_op_set_tx_hw_csum instead of redefining the same code. - Implement get_strings_count instead of deprecated get_stats_count. - Don't report reporting the EEPROM length as we don't supprt get/set eeprom. - Don't set self_test_count as we don't support any self tests. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Main entry pointsRamkrishna Vepa
This patch implements all the driver entry point functions. - Definition of all module loadable paramters. - Implementation of all driver entry point functions. - Changes in this submission - - Fixed compilation error when enabling debug statements - Fixed few warnings when CONFIG_PCI_MSI is not defined - Removed unnecessary volatile variables - Removed compare_ether_addr as it causes unaligned memory access on the sparc64 platform. - Changes in previous submissions - - As per Stephen Hemminger's comments removed the following loadable parameters - gro, rx_& tx max_indicate_pkts, exec_mode, rx & tx pause_enable, tx_steering_type and intr_type. - Added Device ID definition in vxge-main.h instead of include/linux/pci_ids.h file - Reported by David Miller - Incorporated following review comments from Ben Hutchings - NAPI is always enabled (no option to turn it OFF). - Loadable parameters rx_steering_type: This loadable option is removed. ring_blocks: This loadable option is removed. The driver default settings work well in most if not all cases. Another patch to configure these parameters with ethtool will be released in the future. - LRO has been deprecated in favour of GRO - Bill Fink & Dave Miller's comment - Fixed sparse warnings - Reported by Andi Kleen - Removed unused variables Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Traffic & alarm handlerRamkrishna Vepa
This patch takes care of trafic handling related APIS. - Interrupt Enable and disable - Mask / Unmask Interrupt - Traffic Interrupt handling. - Alarm Interrupt handling. - Changes in this submission - - General clean up - removed redundant includes, defines and macros. - Changes in previous submissions - - General cleanup - removed unused functions and variables. - Use asserts where necessary - Reported by Andi Kleen - Fixed sparse warnings - Reported by Andi Kleen - Use a prefix, "__vxge" in front of hw functions to make them globally unique - Ben Hutchings Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: Hardware init & configurationRamkrishna Vepa
This patch takes care of Initialization and configuration steps of Neterion Inc's X3100 Series 10GbE PCIe I/O Virtualized Server Adapter. - Device Initialization. - Verification and setting of device config parameters. - Allocation of Tx FIFO and Rx Ring descriptors (DTR). - APIs to get various type of hw stats - APIs to configure RTS (Receive Traffic Steering) - Changes in this submission - - Include vmalloc header without which a compilation error occured on sparc64, ppc64 and IA64 plaforms. - Fixed compilation warning in register_poll, write32_upper, write32_lower and the special write64 functions on ppc64. - General cleanup - removed redundant includes and defines. - Changes in previous submissions - - Add readq/writeq implementation for the driver for 32 bit systems - reported by Dave Miller. - Incorporated following comments from Ben Hutchings - Start a comment with "/**" to make it a kernel-doc comment. - Use prefix, "__vxge" in front of hw functions to make them globally unique. - Fixed unnecessary clearing members of *channel just before freeing - Use backslashes only for macro definitions and not in multi-line statements. - Used pci_find_capability instead of redefining it. - Used device and revision ids that are already in pdev - no need to read them again. - Used pci_save_state() and pci_restore_state() around resets. - Used udelay and mdelay directly instead of wrapper. - In __vxge_hw_device_register_poll() reset i to 0 after the microsecond delay loop to commence the millisecond delay loop. - Corrected spelling "sapper" - should be "swapper" - Remove too much vertical whitespace. - Replaced magic numbers with appropriate macros - Incorporated following comments from Andi Kleen [andi@firstfloor.org] - Reduced the arguments in functions or refactored them into smaller functions. - Allocate page sized memories used in slow path with vmalloc. - Use asserts where necessary. - Use macros instead of magic numbers. - Use the pci layer code instead of defining own functions - Remove driver wrappers such as xge_hw_device_private_set(). - Fixed sparse warnings. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-02Neterion: New driver: register set - vxge-reg.hRamkrishna Vepa
- Complete Register map details of Neterion Inc's X3100 Series 10GbE PCIe I/O Virtualized Server Adapter. - No change from previous submission. - Changes in previous submissions - - Incorporated following comments from Ben Hutchings - Use original macros for endian checks - Remove VXGE_OS_PLATFORM_* macros as they are unused. - Converted multiple bVALX macros into single with additional width parameter and renamed it to vxge_bVALn. - Using __packed instead of pragma pack(1) - Added a comment of the use of a hw swapper so driver code is portable (does not have to change the byte order for register access as well as dma operations) on different ENDIAN platforms. - Using the <linux/pci_regs.h> definitions instead of redefing them. - Using the PCI capabilities registers in <linux/pci_regs.h> instead of redefing them. Signed-off-by: Sivakumar Subramani <sivakumar.subramani@neterion.com> Signed-off-by: Rastapur Santosh <santosh.rastapur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-31sfc: Call netif_napi_add() before registering our interrupt handlerBen Hutchings
If we use a shared legacy IRQ then our interrupt handler may be called as soon as it is registered even though IRQs are disabled on the NIC. Now that the legacy interrupt handler also checks for event delivery, it may decide to schedule polling in this case. Ensure that the NAPI context is valid but disabled at this point. Signed-off-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-31Merge branch 'master' of ↵David S. Miller
git://git.kernel.org/pub/scm/linux/kernel/git/jaswinder/net-next-2.6
2009-03-31ETHOC: fix build breakage on s390Heiko Carstens
Let driver depend on HAS_IOMEM to avoid build breakage on s390: CC drivers/net/ethoc.o drivers/net/ethoc.c: In function 'ethoc_read': drivers/net/ethoc.c:221: error: implicit declaration of function 'ioread32' drivers/net/ethoc.c: In function 'ethoc_write': drivers/net/ethoc.c:226: error: implicit declaration of function 'iowrite32' drivers/net/ethoc.c: In function 'ethoc_rx': drivers/net/ethoc.c:405: error: implicit declaration of function 'memcpy_fromio' drivers/net/ethoc.c: In function 'ethoc_start_xmit': drivers/net/ethoc.c:828: error: implicit declaration of function 'memcpy_toio' Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Acked-by: Thierry Reding <thierry.reding@avionic-design.de> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-30smc91c92_cs: use request_firmwareJaswinder Singh Rajput
Added osi_load_firmware() instead of copying same thing twice Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
2009-03-303C359: use request_firmwareJaswinder Singh Rajput
Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
2009-03-30yam: use request_firmwareJaswinder Singh Rajput
Added predef variable in add_mcs() to support predefined mcs data Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
2009-03-29wireless: remove duplicated .ndo_set_mac_addressAlexander Beregalov
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-29Merge branch 'master' of /home/davem/src/GIT/linux-2.6/David S. Miller
2009-03-29tg3: Add GRO support.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-29niu: Add GRO support.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-29ucc_geth: Fix use-after-of_node_put() in ucc_geth_probe().David S. Miller
We can't put 'mdio' until after we've used it in the fsl_pq_mdio_bus_name() call. Also fix error return values. Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-29gianfar: Fix use-after-of_node_put() in gfar_of_init().David S. Miller
We can't put 'mdio' until after we've used it in the fsl_pq_mdio_bus_name() call. Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-28netpoll: store local and remote ip in net-endianHarvey Harrison
Allows for the removal of byteswapping in some places and the removal of HIPQUAD (replaced by %pI4). Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-28dmascc: fix incomplete conversion to network_device_opsAlexander Beregalov
drivers/net/hamradio/dmascc.c:587: error: 'struct net_device' has no member named 'set_mac_address' Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-28ni5010: convert to net_device_opsAlexander Beregalov
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-03-28Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6Linus Torvalds
* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6: i2c-core: Some style cleanups i2c-piix4: Add support for the Broadcom HT1100 chipset i2c-piix4: Add support to SB800 SMBus changes i2c-pca-platform: Use defaults if no platform_data given i2c-algo-pca: Use timeout for checking the state machine i2c-algo-pca: Rework waiting for a free bus i2c-algo-pca: Add PCA9665 support i2c: Adapt debug macros for KERN_* constants i2c-davinci: Fix timeout handling i2c: Adapter timeout is in jiffies i2c: Set a default timeout value for all adapters i2c: Add missing KERN_* constants to printks i2c-algo-pcf: Handle timeout correctly i2c-algo-pcf: Style cleanups eeprom/at24: Remove EXPERIMENTAL i2c-nforce2: Add support for MCP67, MCP73, MCP78S and MCP79 i2c: Clarify which clients are auto-removed i2c: Let checkpatch shout on users of the legacy model i2c: Document the different ways to instantiate i2c devices
2009-03-28Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds
* 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (422 commits) [ARM] 5435/1: fix compile warning in sanity_check_meminfo() [ARM] 5434/1: ARM: OMAP: Fix mailbox compile for 24xx [ARM] pxa: fix the bad assumption that PCMCIA sockets always start with 0 [ARM] pxa: fix Colibri PXA300 and PXA320 LCD backlight pins imxfb: Fix TFT mode i.MX21/27: remove ifdef CONFIG_FB_IMX imxfb: add clock support mxc: add arch_reset() function clkdev: add possibility to get a clock based on the device name i.MX1: remove fb support from mach-imx [ARM] pxa: build arch/arm/plat-pxa/mfp.c only when PXA3xx or ARCH_MMP defined Gemini: Add support for Teltonika RUT100 Gemini: gpiolib based GPIO support v2 MAINTAINERS: add myself as Gemini architecture maintainer ARM: Add Gemini architecture v3 [ARM] OMAP: Fix compile for omap2_init_common_hw() MAINTAINERS: Add myself as Faraday ARM core variant maintainer ARM: Add support for FA526 v2 [ARM] acorn,ebsa110,footbridge,integrator,sa1100: Convert asm/io.h to linux/io.h [ARM] collie: fix two minor formatting nits ...
2009-03-28Merge git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-async-for-30: fastboot: remove duplicate unpack_to_rootfs() ide/net: flip the order of SATA and network init async: remove the temporary (2.6.29) "async is off by default" code Fix up conflicts in init/initramfs.c manually
2009-03-28Merge branch 'percpu-cpumask-x86-for-linus-2' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'percpu-cpumask-x86-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (682 commits) percpu: fix spurious alignment WARN in legacy SMP percpu allocator percpu: generalize embedding first chunk setup helper percpu: more flexibility for @dyn_size of pcpu_setup_first_chunk() percpu: make x86 addr <-> pcpu ptr conversion macros generic linker script: define __per_cpu_load on all SMP capable archs x86: UV: remove uv_flush_tlb_others() WARN_ON percpu: finer grained locking to break deadlock and allow atomic free percpu: move fully free chunk reclamation into a work percpu: move chunk area map extension out of area allocation percpu: replace pcpu_realloc() with pcpu_mem_alloc() and pcpu_mem_free() x86, percpu: setup reserved percpu area for x86_64 percpu, module: implement reserved allocation and use it for module percpu variables percpu: add an indirection ptr for chunk page map access x86: make embedding percpu allocator return excessive free space percpu: use negative for auto for pcpu_setup_first_chunk() arguments percpu: improve first chunk initial area map handling percpu: cosmetic renames in pcpu_setup_first_chunk() percpu: clean up percpu constants x86: un-__init fill_pud/pmd/pte x86: remove vestigial fix_ioremap prototypes ... Manually merge conflicts in arch/ia64/kernel/irq_ia64.c
2009-03-28i2c-core: Some style cleanupsZhenwen Xu
Some lines over 80. The printk(KERN_ERR ... ) should be dev_err. And some blankspace should be deleted. Signed-off-by: Zhenwen Xu <helight.xu@gmail.com> Signed-off-by: Jean Delvare <khlai@linux-fr.org>
2009-03-28i2c-piix4: Add support for the Broadcom HT1100 chipsetFlavio Leitner
Add support for the Broadcom HT1100 LD chipset (SMBus function.) Signed-off-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c-piix4: Add support to SB800 SMBus changesShane Huang
Add support for the AMD SB800 Family series of products. Major changes include the changes to addressing the SMBus registers at different location from the locations in the previous compatible parts from AMD such as SB400/SB600/SB700. For SB800, the main features and register definitions of SMBus and other interfaces are still compatible with the previous products with the only change being in how to access the internal registers for these blocks. Signed-off-by: Shane Huang <shane.huang@amd.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c-pca-platform: Use defaults if no platform_data givenWolfram Sang
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c-algo-pca: Use timeout for checking the state machineWolfram Sang
We now timeout also if the state machine does not change within the given time. For that, the driver-specific completion-functions are extended to return true or false depending on the timeout. This then gets checked in the algorithm. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c-algo-pca: Rework waiting for a free busWolfram Sang
Waiting for a free bus now accepts the timeout value in jiffies and does proper checking using time_before. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c-algo-pca: Add PCA9665 supportMarco Aurelio da Costa
Add support for the PCA9665 I2C controller. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Jean Delvare <khali@linux-fr.org>
2009-03-28i2c: Adapt debug macros for KERN_* constantsFrank Seidel
According to kerneljanitors todo list all printk calls (beginning a new line) should have an according KERN_* constant. Those are the changes to the debug macros in the i2c subsystem to meet this requirement. Also changing no-debug statements to raw printks again. Signed-off-by: Frank Seidel <frank@f-seidel.de> Signed-off-by: Jean Delvare <khali@linux-fr.org> Tested-by: Wolfram Sang <w.sang@pengutronix.de>
2009-03-28i2c-davinci: Fix timeout handlingJean Delvare
Properly set the adapter timeout value in jiffies, and then use that value in the driver, rather than a hard-coded constant. Signed-off-by: Jean Delvare <khali@linux-fr.org> Tested-by: Troy Kisky <troy.kisky@boundarydevices.com> Cc: Kevin Hilman <khilman@mvista.com>
2009-03-28i2c: Adapter timeout is in jiffiesJean Delvare
i2c_adapter.timeout is in jiffies. Fix all drivers which thought otherwise. It didn't really matter as long as the value was only used inside the driver, but soon i2c-core will use it too so it must have the proper unit. Note: for the i2c-mpc driver, this fixes a bug in polling mode. Timeout would trigger after 1 jiffy, which is most probably not what the author wanted. Signed-off-by: Jean Delvare <khali@linux-fr.org> Cc: Clifford Wolf <clifford@clifford.at> Acked-by: Sean MacLennan <smaclennan@pikatech.com> Cc: Stefan Roese <sr@denx.de> Acked-by: Lennert Buytenhek <kernel@wantstofly.org> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Grant Likely <grant.likely@secretlab.ca> Acked-by: Mark A. Greer <mgreer@mvista.com>
2009-03-28i2c: Set a default timeout value for all adaptersJean Delvare
Setting a default timeout value on a per-algo basis doesn't make any sense. Move the default value setting to i2c-core. Individual adapter drivers can specify a different (non-zero) value if they wish. Also express the timeout value in a way which results in the same duration regarless of the value of HZ. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Wolfram Sang <w.sang@pengutronix.de>
2009-03-28i2c: Add missing KERN_* constants to printksFrank Seidel
According to kerneljanitors todo list all printk calls (beginning a new line) should have an according KERN_* constant. Those are the missing pieces here for the i2c subsystem. Signed-off-by: Frank Seidel <frank@f-seidel.de> Signed-off-by: Jean Delvare <khali@linux-fr.org>