Commit Graph

270493 Commits

Author SHA1 Message Date
张晴
1edcdb2eab rk3168:support act8846 set sleep voltage 2012-12-26 11:09:23 +08:00
黄涛
3d45bb432b rk3168: tb: remove unused code 2012-12-25 18:06:18 +08:00
黄涛
c2d5e8a674 rk29-pwm-regulator: pwm_voltage_map as const, fix gcc warning: initialization discards qualifiers from pointer target type 2012-12-25 18:05:22 +08:00
黄涛
3400011225 rk: usb_detect: add irq debounce for gpio detect 2012-12-25 18:00:08 +08:00
hxy
3b07097f9f rk3168: modidied key map in rk3168 top board 2012-12-25 17:39:56 +08:00
张晴
a8f3e82f3d rk3168:act8846:modify some error 2012-12-25 16:40:10 +08:00
kfx
889b469633 rk2928&rk30&rk3066b: new iomux support 2012-12-25 11:50:21 +08:00
黄涛
8e031bb647 pack-kernel.sh: open source every file 2012-12-25 09:55:43 +08:00
张晴
ca5addfee8 rk292x:move pwm set suspend voltage 2012-12-24 17:28:55 +08:00
zyc
7add70c62f camera:query max camera resolution failed ,fix it 2012-12-24 13:04:22 +08:00
hxy
9f0e7069dc rk3168: add BT support in rk3168 top board 2012-12-24 14:47:54 +08:00
张晴
2bf1fbda7e rk3168:modify act8846,addldo9 init 2012-12-24 10:38:34 +08:00
黄涛
433a41b195 rk30: pm: support sram_log 2012-12-21 19:34:52 +08:00
黄涛
19f4483969 rk30: pm: use pm_emit_log_char to log 2012-12-21 19:34:51 +08:00
黄涛
ebaf5512a6 rk: printk: add pm_emit_log_char 2012-12-21 19:34:51 +08:00
黄涛
4b01e8ed2e rk30: ds975: defconfig: rm TEST_POWER and FIQ_DEBUGGER_CONSOLE_DEFAULT_ENABLE 2012-12-21 19:12:23 +08:00
chenxing
44cc3cf9ed rk3066: uart0 auto support 3M 2012-12-21 18:26:29 +08:00
chenxing
d60a6d84e5 rk3066b: uart0 auto support 3M 2012-12-21 18:17:43 +08:00
邱建斌
e961d3a999 rk30 i2s : fix CONFIG_SND_I2SO_USE_EIGHT_CHANNELS error 2012-12-21 17:58:31 +08:00
hxy
9d89f056c2 rk3168:add camera support in rk3168 top board 2012-12-21 17:53:29 +08:00
邱建斌
2f18c497f0 rk3066 i2s : add I2S0 channels choose,default using two channels 2012-12-21 17:49:18 +08:00
许盛飞
e5d4ce84a6 adc_battery:the bug otg can not identification host 2012-12-21 09:58:16 +08:00
张晴
1aa5034fb1 rk3168:modify defult voltage,modify some warnings 2012-12-20 16:47:10 +08:00
hxy
afb55f8cc6 rk3168:add act8846 pmu support in boardconfig 2012-12-20 15:29:39 +08:00
许盛飞
ffdb90f037 suspend: power optimization for vccio(usb to uart bypass) 2012-12-20 10:14:42 +08:00
hhb
966f8f27c5 DS975: change BATTERY_RK30_ADC to BATTERY_RK30_ADC_FAC 2012-12-20 10:05:11 +08:00
hwg
76786e4b5e rk3066: support mt5931 wifi and mt6622 bt power control 2012-12-19 20:01:33 +08:00
hwg
391f5264f6 support RK903 BT 2012-12-19 17:36:08 +08:00
xxx
6ed45d832f change pll resume times in pm.c 2012-12-19 16:47:40 +08:00
hhb
6c3ad70101 DS975: set backlight min_brightness to 70 2012-12-19 10:47:42 +08:00
Dmitry Shmidt
0bb376064e net: wireless: bcmdhd: Postpone taking wd_wake lock
Change-Id: I3926d7a1a357d173144f408996f35f0929db711e
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-12-18 14:43:34 -08:00
邱建斌
9e329ef41d rt5631 phone: standby enable micbias 2012-12-18 17:01:24 +08:00
黄涛
2b57125c3d Merge remote-tracking branch 'aosp/android-3.0' into develop-3.0
Conflicts:
	drivers/net/wireless/bcmdhd/Makefile
	drivers/net/wireless/bcmdhd/bcmsdh.c
	drivers/net/wireless/bcmdhd/bcmsdh_linux.c
	drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c
	drivers/net/wireless/bcmdhd/bcmsdh_sdmmc_linux.c
	drivers/net/wireless/bcmdhd/dhd.h
	drivers/net/wireless/bcmdhd/dhd_cfg80211.c
	drivers/net/wireless/bcmdhd/dhd_custom_gpio.c
	drivers/net/wireless/bcmdhd/dhd_linux.c
	drivers/net/wireless/bcmdhd/dhd_sdio.c
	drivers/net/wireless/bcmdhd/include/bcmutils.h
	drivers/net/wireless/bcmdhd/include/epivers.h
	drivers/net/wireless/bcmdhd/include/sbchipc.h
	drivers/net/wireless/bcmdhd/include/sdioh.h
	drivers/net/wireless/bcmdhd/include/wlioctl.h
	drivers/net/wireless/bcmdhd/wl_android.c
	drivers/net/wireless/bcmdhd/wl_cfg80211.c
	drivers/net/wireless/bcmdhd/wl_cfg80211.h
	drivers/net/wireless/bcmdhd/wl_cfgp2p.c
	drivers/net/wireless/bcmdhd/wl_cfgp2p.h
	drivers/net/wireless/bcmdhd/wldev_common.c
2012-12-18 16:25:10 +08:00
黄涛
418c235ca8 Revert "Merge branch 'develop-3.0' of ssh://10.10.10.29/rk/kernel into develop-3.0"
This reverts commit dd2610d92e, reversing
changes made to 78bf84a2dd.
2012-12-18 16:23:28 +08:00
gwl
dd2610d92e Merge branch 'develop-3.0' of ssh://10.10.10.29/rk/kernel into develop-3.0 2012-12-18 14:35:35 +08:00
gwl
cd57be725d update network protcol to support bcm direct 2012-12-18 14:35:17 +08:00
hhb
78bf84a2dd add DS975 board and defconfig 2012-12-18 10:46:49 +08:00
hhb
4bddb7c26d modify lcd_LG_LP097X02 driver 2012-12-18 10:45:56 +08:00
hhb
6cc22826ca add ct36x_ts driver 2012-12-18 10:42:22 +08:00
hhb
1322b7dcdc UART: fix bug about BOTH_EMPTY V1.3 2012-12-18 10:35:05 +08:00
Greg Kroah-Hartman
881c0a027c Linux 3.0.57 v3.0.57 2012-12-17 10:56:46 -08:00
Anton Blanchard
3882a18f5f powerpc: Keep thread.dscr and thread.dscr_inherit in sync
commit 00ca0de02f upstream.

When we update the DSCR either via emulation of mtspr(DSCR) or via
a change to dscr_default in sysfs we don't update thread.dscr.
We will eventually update it at context switch time but there is
a period where thread.dscr is incorrect.

If we fork at this point we will copy the old value of thread.dscr
into the child. To avoid this, always keep thread.dscr in sync with
reality.

This issue was found with the following testcase:

http://ozlabs.org/~anton/junkcode/dscr_inherit_test.c

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Haren Myneni <haren@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:05 -08:00
Anton Blanchard
1758e55fd0 powerpc: Update DSCR on all CPUs when writing sysfs dscr_default
commit 1b6ca2a6fe upstream.

Writing to dscr_default in sysfs doesn't actually change the DSCR -
we rely on a context switch on each CPU to do the work. There is no
guarantee we will get a context switch in a reasonable amount of time
so fire off an IPI to force an immediate change.

This issue was found with the following test case:

http://ozlabs.org/~anton/junkcode/dscr_explicit_test.c

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Haren Myneni <haren@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:05 -08:00
Dan Carpenter
7a09a2fff8 ftrace: Clear bits properly in reset_iter_read()
commit 70f77b3f7e upstream.

There is a typo here where '&' is used instead of '|' and it turns the
statement into a noop.  The original code is equivalent to:

	iter->flags &= ~((1 << 2) & (1 << 4));

Link: http://lkml.kernel.org/r/20120609161027.GD6488@elgon.mountain

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:05 -08:00
Sarah Sharp
dadc9f9ce8 xhci: Extend Fresco Logic MSI quirk.
commit bba18e33f2 upstream.

Ali reports that plugging a device into the Fresco Logic xHCI host with
PCI device ID 1400 produces an IRQ error:

 do_IRQ: 3.176 No irq handler for vector (irq -1)

Other early Fresco Logic host revisions don't support MSI, even though
their PCI config space claims they do.  Extend the quirk to disabling
MSI to this chipset revision.  Also enable the short transfer quirk,
since it's likely this revision also has that quirk, and it should be
harmless to enable.

04:00.0 0c03: 1b73:1400 (rev 01) (prog-if 30 [XHCI])
        Subsystem: 1d5c:1000
        Physical Slot: 3
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 51
        Region 0: Memory at d4600000 (32-bit, non-prefetchable) [size=64K]
        Capabilities: [50] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
                Address: 00000000feeff00c  Data: 41b1
        Capabilities: [80] Express (v1) Endpoint, MSI 00
                DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <2us, L1 <32us
                        ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
                DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
                        RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
                        MaxPayload 128 bytes, MaxReadReq 512 bytes
                DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-
                LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 unlimited, L1 unlimited
                        ClockPM- Surprise- LLActRep- BwNot-
                LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- Retrain- CommClk+
                        ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
                LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
        Kernel driver in use: xhci_hcd

This patch should be backported to stable kernels as old as 2.6.36, that
contain the commit f5182b4155 "xhci:
Disable MSI for some Fresco Logic hosts."

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Reported-by: A Sh <smr.ash1991@gmail.com>
Tested-by: A Sh <smr.ash1991@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:05 -08:00
Alan Stern
e22045df69 USB: OHCI: workaround for hardware bug: retired TDs not added to the Done Queue
commit 50ce5c0683 upstream.

This patch (as1636) is a partial workaround for a hardware bug
affecting OHCI controllers by NVIDIA at least, maybe others too.  When
the controller retires a Transfer Descriptor, it is supposed to add
the TD onto the Done Queue.  But sometimes this doesn't happen, with
the result that ohci-hcd never realizes the corresponding transfer has
finished.  Symptoms can vary; a typical result is that USB audio stops
working after a while.

The patch works around the problem by recognizing that TDs are always
processed in order.  Therefore, if a later TD is found on the Done
Queue than all the earlier TDs for the same endpoint must be finished
as well.

Unfortunately this won't solve the problem in cases where the missing
TD is the last one in the endpoint's queue.  A complete fix would
require a signficant amount of change to the driver.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:04 -08:00
Zhang Rui
ffedea0f00 ACPI / video: ignore BIOS initial backlight value for HP Folio 13-2000
commit 129ff8f8d5 upstream.

Or else the laptop will boot with a dimmed screen.

References: https://bugzilla.kernel.org/show_bug.cgi?id=51141
Tested-by: Stefan Nagy <public@stefan-nagy.at>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:04 -08:00
Rafael J. Wysocki
cb2bf59bcc ACPI / PNP: Do not crash due to stale pointer use during system resume
commit a6b5e88c0e upstream.

During resume from system suspend the 'data' field of
struct pnp_dev in pnpacpi_set_resources() may be a stale pointer,
due to removal of the associated ACPI device node object in the
previous suspend-resume cycle.  This happens, for example, if a
dockable machine is booted in the docking station and then suspended
and resumed and suspended again.  If that happens,
pnpacpi_build_resource_template() called from pnpacpi_set_resources()
attempts to use that pointer and crashes.

However, pnpacpi_set_resources() actually checks the device's ACPI
handle, attempts to find the ACPI device node object attached to it
and returns an error code if that fails, so in fact it knows what the
correct value of dev->data should be.  Use this observation to update
dev->data with the correct value if necessary and dump a call trace
if that's the case (once).

We still need to fix the root cause of this issue, but preventing
systems from crashing because of it is an improvement too.

Reported-and-tested-by: Zdenek Kabelac <zdenek.kabelac@gmail.com>
References: https://bugzilla.kernel.org/show_bug.cgi?id=51071
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:04 -08:00
Kamil Iskra
fd013d71a5 ACPI / battery: Correct battery capacity values on Thinkpads
commit 4000e62615 upstream.

Add a quirk to correctly report battery capacity on 2010 and 2011
Lenovo Thinkpad models.

The affected models that I tested (x201, t410, t410s, and x220)
exhibit a problem where, when battery capacity reporting unit is mAh,
the values being reported are wrong.  Pre-2010 and 2012 models appear
to always report in mWh and are thus unaffected.  Also, in mid-2012
Lenovo issued a BIOS update for the 2011 models that fixes the issue
(tested on x220 with a post-1.29 BIOS).  No such update is available
for the 2010 models, so those still need this patch.

Problem description: for some reason, the affected Thinkpads switch
the reporting unit between mAh and mWh; generally, mAh is used when a
laptop is plugged in and mWh when it's unplugged, although a
suspend/resume or rmmod/modprobe is needed for the switch to take
effect.  The values reported in mAh are *always* wrong.  This does
not appear to be a kernel regression; I believe that the values were
never reported correctly.  I tested back to kernel 2.6.34, with
multiple machines and BIOS versions.

Simply plugging a laptop into mains before turning it on is enough to
reproduce the problem.  Here's a sample /proc/acpi/battery/BAT0/info
from Thinkpad x220 (before a BIOS update) with a 4-cell battery:

present:                 yes
design capacity:         2886 mAh
last full capacity:      2909 mAh
battery technology:      rechargeable
design voltage:          14800 mV
design capacity warning: 145 mAh
design capacity low:     13 mAh
cycle count:              0
capacity granularity 1:  1 mAh
capacity granularity 2:  1 mAh
model number:            42T4899
serial number:           21064
battery type:            LION
OEM info:                SANYO

Once the laptop switches the unit to mWh (unplug from mains, suspend,
resume), the output changes to:

present:                 yes
design capacity:         28860 mWh
last full capacity:      29090 mWh
battery technology:      rechargeable
design voltage:          14800 mV
design capacity warning: 1454 mWh
design capacity low:     200 mWh
cycle count:              0
capacity granularity 1:  1 mWh
capacity granularity 2:  1 mWh
model number:            42T4899
serial number:           21064
battery type:            LION
OEM info:                SANYO

Can you see how the values for "design capacity", etc., differ by a
factor of 10 instead of 14.8 (the design voltage of this battery)?
On the battery itself it says: 14.8V, 1.95Ah, 29Wh, so clearly the
values reported in mWh are correct and the ones in mAh are not.

My guess is that this problem has been around ever since those
machines were released, but because the most common Thinkpad
batteries are rated at 10.8V, the error (8%) is small enough that it
simply hasn't been noticed or at least nobody could be bothered to
look into it.

My patch works around the problem by adjusting the incorrectly
reported mAh values by "10000 / design_voltage".  The patch also has
code to figure out if it should be activated or not.  It only
activates on Lenovo Thinkpads, only when the unit is mAh, and, as an
extra precaution, only when the battery capacity reported through
ACPI does not match what is reported through DMI (I've never
encountered a machine where the first two conditions would be true
but the last would not, but better safe than sorry).

I've been using this patch for close to a year on several systems
without any problems.

References: https://bugzilla.kernel.org/show_bug.cgi?id=41062
Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:04 -08:00
Greg Kroah-Hartman
092082a9f2 USB: mark uas driver as BROKEN
commit fb37ef9801 upstream.

As reported https://bugzilla.kernel.org/show_bug.cgi?id=51031, the UAS
driver causes problems and has been asked to be not built into any of
the major distributions.  To prevent users from running into problems
with it, and for distros that were not notified, just mark the whole
thing as broken.

Acked-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-12-17 10:49:04 -08:00