- 18 9月, 2009 13 次提交
-
-
由 Linus Torvalds 提交于
Commit ac89a917 ("pty: don't limit the writes to 'pty_space()' inside 'pty_write()'") removed the pty_space() checking, in order to let the regular tty buffer code limit the buffering itself. That was all good, but as a subtle side effect it meant that we'd be doing a tty_wakeup() even in the case where the buffers were all filled up, and didn't actually make any progress on the write. Which sounds innocuous, but it interacts very badly with the ppp_async code, which has an infinite loop in ppp_async_push() that tries to push out data to the tty. When we call tty_wakeup(), that loop ends up thinking that progress was made (see the subtle interactions between XMIT_WAKEUP and 'tty_stuffed' for details). End result: one unhappy ppp user. Fixed by noticing when tty_insert_flip_string() didn't actually do anything, and then not doing any more processing (including, very much not calling tty_wakeup()). Bisected-and-tested-by: NPeter Volkov <pva@gentoo.org> Cc: stable@kernel.org (2.6.31) Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
由 John(Jung-Ik) Lee 提交于
This is a new pata driver for ARTOP 867X 64bit 4-channel UDMA133 ATA ctrls. Based on the Atp867 data sheet rev 1.2, Acard, and in part on early ide codes from Eric Uhrhane <ericu@google.com>. Signed-off-by: NJohn(Jung-Ik) Lee <jilee@google.com> Reviewed-by: NGrant Grundler <grundler@google.com> Reviewed-by: NGwendal Gringo <gwendal@google.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Robert Hancock 提交于
On a Compaq Presario V3000 laptop (NVIDIA MCP51 chipset), pata_amd selects PIO0 mode for the PATA DVD-RAM drive instead of MWDMA2 which it supports: ata4.00: ATAPI: HL-DT-ST DVDRAM GSA-4084N, KQ09, max MWDMA2 ata4: nv_mode_filter: 0x39f&0x7001->0x1, BIOS=0x0 (0x0) ACPI=0x7001 (60:600:0x11) ata4.00: configured for PIO0 For some reason, the BIOS-set UDMA configuration returns 0 and the ACPI _GTM reports that UDMA2 and PIO0 are enabled. This causes nv_mode_filter to end up allowing only PIO0 and UDMA0-2. Since the drive doesn't support UDMA we end up using PIO0. Since the controllers should always support PIO4, MWDMA2 and UDMA2 regardless of what cable type is used, let's make sure we don't filter out these modes regardless of what wacky settings the BIOS is using. Signed-off-by: NRobert Hancock <hancockrwd@gmail.com> Cc: stable@kernel.org Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Mikael Pettersson 提交于
sata_promise's reset code has deviated quite a bit from the Promise reference driver's, and it has been observed to fail to recover from errors in some cases. This patch thus updates the reset code to more closely match the reference driver: - soft reset (pdc_reset_port): * wait for ATA engine to not be in packet command mode (2nd gen only) * write reset bit in PDC_CTLSTAT before the first read in the loop * for 2nd gen SATA follow up with FPDMA reset and clearing error status registers - hard reset (pdc_sata_hardreset): * wait for ATA engine to not be in packet command mode (2nd gen only) * reset ATA engine via the PCI control register * Tejun's change to use non-waiting hardreset + follow-up SRST I'm not changing the hotplug mask bits since they are taken care of by sata_promise's ->freeze() and ->thaw() operations. And I'm not writing the PMP port # because that's always zero (for now). Tested here on various controllers. In particular, one disk which used to timeout and fail to recover from certain hdparm and smartmonctl commands now works nicely. Signed-off-by: NMikael Pettersson <mikpe@it.uu.se> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Mikael Pettersson 提交于
1st generation Promise SATA chips are prone to generating spurious hotplug events which can disrupt normal operation. This has been observed on 20376 and 20378 chips. This patch thus disables hotplug support on 1st gen chips while leaving it enabled for 2nd gen chips. The pdc_sata_hotplug_offset() function becomes redundant so it is removed. Tested on 1st gen 20376 and 20378 mainboard chips and on a 2nd gen SATA300 PCI card. Signed-off-by: NMikael Pettersson <mikpe@it.uu.se> Tested-by: NKurt Roeckx <kurt@roeckx.be> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Tejun Heo 提交于
Commit 54c38444 makes libata abort qcs after the port is frozen. This is necessary to guarantee that TF registers are accessed after the DMA engine is shutdown after an error. However, this triggers WARN_ON_ONCE() check in ata_qc_complete() spuriously. Move WARN_ON_ONCE() downwards such that failing commands while frozen doesn't trigger it. Signed-off-by: NTejun Heo <tj@kernel.org> Cc: stable <stable@kernel.org> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Tejun Heo 提交于
Commit a5bfc471 dropped explicit pci_intx() manipulation from ahci because it seemed unnecessary and ahci doesn't seem to be the right place to be tweaking it if it were. This was largely okay but there are exceptions. There was one on an embedded platform which was fixed via firmware and now bko#14124 reports it on a HP DL320. http://bugzilla.kernel.org/show_bug.cgi?id=14124 I still think this isn't something libata drivers should be caring about (the only ones which are calling pci_intx() explicitly are libata ones and one other driver) but for now reverting the change seems to be the right thing to do. Signed-off-by: NTejun Heo <tj@kernel.org> Reported-by: NThomas Jarosch <thomas.jarosch@intra2net.com> Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
-
由 Maxime Bizon 提交于
Signed-off-by: NMaxime Bizon <mbizon@freebox.fr> Signed-off-by: NFlorian Fainelli <florian@openwrt.org> Signed-off-by: NDavid S. Miller <davem@davemloft.net> Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
-
由 David Daney 提交于
Signed-off-by: NDavid Daney <ddaney@caviumnetworks.com> Acked-by: NHerbert Xu <herbert@gondor.apana.org.au> Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
-
由 Roel Kluin 提交于
If we reach the test just below the loop with a `timeout' value of 0, this does not mean that the timeout caused the loop to end, but rather the `smi_rd.s.pending', in the last iteration. If timeout caused the loop to end, then `timeout' is -1, not 0. Since this can occur only in the last iteration, it is not very likely to be a problem. By changing the post- to prefix decrement we ensure that a timeout of 0 does mean it timed out. Signed-off-by: NRoel Kluin <roel.kluin@gmail.com> Acked-by: NDavid Daney <ddaney@caviumnetworks.com> Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
-
由 Sathya Perla 提交于
All cmds issued to BE after the creation of mccq must now use the mcc-q (and not mbox) to avoid a hw issue that results in mbox poll timeout. Signed-off-by: NSathya Perla <sathyap@serverengines.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 Jie Yang 提交于
use the wrong API when free dma. So when map dma use a flag to demostrate whether it is 'pci_map_single' or 'pci_map_page'. When free the dma, check the flags to select the right APIs('pci_unmap_single' or 'pci_unmap_page'). set the flags type to u16 instead of unsigned long on David's comments. Signed-off-by: NJie Yang <jie.yang@atheros.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
由 David S. Miller 提交于
Signed-off-by: NJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
-
- 17 9月, 2009 27 次提交
-
-
由 Linus Walleij 提交于
This sets the number of voltages for the AB3100 regulators so that they play well with the voltage listing functions and can be used properly with the MMC regulator integration glue for example. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
Instead of hand rolling our own variant. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Samuel Ortiz 提交于
KEY_1 and KEY_2 definitions conflicts with include/linux/input.h Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This adds support for the regulators found in the AB3100 Mixed-Signal IC. It further also defines platform data for the ST-Ericsson U300 platform and extends the AB3100 MFD driver so that platform/board data with regulation constraints and an init function can be passed down all the way from the board to the regulators. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This adds support for the RTC found inside the AB3100 Mixed Signal chip. The symbols used for communicating with the chip is found in the mfd/ab3100-core.c driver that also provides the platform device. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Acked-by: NAlessandro Zummo <alessandro.zummo@towertech.it> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Samuel Ortiz 提交于
ab3100.h should include linux/workqueue.h for otp to build properly. Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Amit Kucheria 提交于
When the sleep script is loaded before the wakeup script, there is a chance that the system might go to sleep before the wakeup script loading is completed. This will lead to a system that does not wakeup and has been observed to cause non-booting boards. Various options were considered to solve this problem, including modification of the core twl4030 power code to be smart enough to reorder the loading of the scripts. But it felt too over-engineered. Hence this patch just warns the DPS script developer so that they may be reordered in the board-code itself. Signed-off-by: NAmit Kucheria <amit.kucheria@verdurent.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Amit Kucheria 提交于
The TWL4030/5030 family of multifunction devices allows board-specific control of the the various regulators, clock and reset lines through 'scripts' that are loaded into its memory. This allows for Dynamic Power Switching (DPS). Implement board-independent core support for DPS that is then used by board-specific code to load custom DPS scripts. Signed-off-by: NAmit Kucheria <amit.kucheria@verdurent.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This adds the ability to read out OTP (One-Time Programmable) registers in the AB3100 MFD ASIC. It's a simple sysfs file you can cat to prompt. The OTP registers of the AB3100 are used to store various device-unique information such as customer ID, product flags and the 3GPP standard IMEI (International Mobile Equipment Indentity) number. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Sascha Hauer 提交于
This driver provides basic support for the voltage regulators integrated into the Freescale MC13783 PMIC. It is currently only possible to enable/disable outputs, not to actually set the voltage. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Sascha Hauer 提交于
This driver provides the core Freescale MC13783 support. It registers the client platform_devices and provides access to the A/D converter. Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This will make the worker fire interrupt disable the AB3100 IRQ without sync which resolves a race since the interrupt obviously cannot wait for itself to complete while being handled. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This alters the default setting for AB3100_IMRB1 from 0xff to 0xbf. These registers are used for the yet unimplemented ADC and this new setting will deactivate ADC Trigger 1. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This makes ab3100_set_register_interruptible() propagate the error code from suboperations properly so it can be handles properly. (A special case comes from signal interruption.) Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Linus Walleij 提交于
This adds the _interruptible suffix to the AB3100 accessor functions on par with mutex_lock_interruptible() that's used for blocking simultaneous calls to the AB3100 acessor functions. Since these accesses are slow on a 100kHz I2C bus and may line up waiting for the mutex, we need to handle interruption by system shutdown or kill signals and may just as well denote that in the function names. Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of PMICs contain RTC functionality. The hardware provides a 32 bit counter incrementing at 1Hz together with a per tick interrupt and an alarm value. For simplicity the driver chooses to define the epoch for the counter as the Unix epoch - if required platform data can be used in future to customise this. When powered on from a completely cold state the RTC reports that it has not been configured - when this happens an error is returned when attempting to read the RTC in order to avoid use of values we know to be invalid. The hardware also provides security features which mean that it can ignore attempts to set the RTC time in certain circumstances, most notably if the RTC is written to too often. These errors are detected by verifying the written RTC value. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NAlessandro Zummo <a.zummo@towertech.it> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Antonio Ospite 提交于
Right now the pcap core driver passes a reference to its pcap data abusing the subdrivers platform drvdata, this is not good. Get the reference directly from the parent device. Signed-off-by: NAntonio Ospite <ospite@studenti.unina.it> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Daniel Ribeiro 提交于
This is a driver for misc input events for the PCAP2 PMIC, it handles the Power key and the Headphone button. Signed-off-by: NDaniel Ribeiro <drwyrm@gmail.com> Signed-off-by: NIlya Petrov <ilya.muromec@gmail.com> Signed-off-by: NAntonio Ospite <ospite@studenti.unina.it> Acked-by: NDmitry Torokhov <dtor@mail.ru> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Daniel Ribeiro 提交于
Touchscreen driver for the PCAP2 multi function device used in Motorola EZX smartphones. Signed-off-by: NDaniel Ribeiro <drwyrm@gmail.com> Signed-off-by: NStefan Schmidt <stefan@datenfreihafen.org> Signed-off-by: NAntonio Ospite <ospite@studenti.unina.it> Acked-by: NDmitry Torokhov <dtor@mail.ru> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Antonio Ospite 提交于
Register pcap-regulator earlier so it can be used with cpufreq Signed-off-by: NDaniel Ribeiro <drwyrm@gmail.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of PMICs provide two constant current sinks designed to drive strings of serially connected LEDs for applications such as backlights. This driver adds support for those regulators. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of PMICs include a single DC-DC boost convertor. This adds basic support for this convertor. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of PMICs provide two optional outputs for controlling external devices during power sequencing, for example an external regulator. While in essence these are GPIOs the hardware presents them as DCDCs with very little control so provide support via the regulator API in that fashion. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of devices provide three types of LDO: - General purpose LDOs supporting voltages from 0.9-3.3V - High performance analogue LDOs supporting voltages from 1-3.5V - Very low power consumption LDOs intended to support always on functionality. This patch adds support for all three kinds of LDO. Each regulator is probed as an individual platform device with resources used to provide the register map location of the regulator. Mixed hardware and software control of regulators is not current supported. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of devices all have 3 DC-DC buck convertors. This driver implements software control for these regulators via the regulator API. Use with split hardware/software control of individual regulators is not supported, though regulators not controlled by software may be controlled via the hardware control interfaces. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
This is useful for implementing get_status() in terms of get_mode(). Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-
由 Mark Brown 提交于
The WM831x series of PMICs support control of initial power on through the ON pin on the device with soft control of the pin at other times. Represent this to userspace as KEY_POWER. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NDmitry Torokhov <dtor@mail.ru> Signed-off-by: NSamuel Ortiz <sameo@linux.intel.com>
-