Commit Graph

63580 Commits

Author SHA1 Message Date
yxj
024dbf593e board rk30 sdk,LR097 DS1006H,rk3168 tb:use get_fb_size instead of RK30_FB0_MEM_SIZE 2013-01-23 11:39:30 +08:00
黄涛
52f00e5c34 Revert "move rk_screen.h from board.h"
This reverts commit 1e2026750b.
2013-01-23 11:33:56 +08:00
XieKedi
efde9d0386 rk3168 ds1006h : config do not set "Disable external hubs" by default 2013-01-23 11:26:18 +08:00
黄涛
ba3b02ae4b rk: usb_detect: enable bvalid irq when usb uart enabled 2013-01-23 10:18:28 +08:00
wuhao
880c9f656c rk3168 ds1006: config hdmi support 2013-01-23 10:09:53 +08:00
chenxing
fd3afc9b05 rk30: export dvfs_get_freq_volt_table/dvfs_set_freq_volt_table functions 2013-01-23 10:00:09 +08:00
黄涛
f34f67b545 Merge remote-tracking branch 'stable/linux-3.0.y' into develop-3.0
Merge v3.0.60
Conflicts:
	Makefile
2013-01-23 09:49:26 +08:00
yxj
1e2026750b move rk_screen.h from board.h 2013-01-22 20:51:23 +08:00
yxj
5e438e8a06 board rk30sdk,ds1006h,rk3168 tb:register display devices fb,lcdc,backlight by rk_platform_add_display_devices 2013-01-22 20:51:23 +08:00
chenxing
1d1462a4be rk3168: ds1006h: update dvfs table 2013-01-22 20:31:07 +08:00
chenxing
f46c7fc881 rk3188: add pm support 2013-01-22 18:26:50 +08:00
xbw
71b5193722 Merge branch 'develop-3.0' of ssh://10.10.10.29/rk/kernel into develop-3.0 2013-01-22 18:07:11 +08:00
xbw
0befc1d5ba SDMMC:
1.Compatible with the new interface function of IOMUX-API.
2.To simplify the configuration of the sd-sdio-wifi.
2013-01-22 18:06:47 +08:00
xxx
644021fd57 forget adding dvfs.c,so submit again 2013-01-22 18:06:06 +08:00
xxx
b746443883 add dvfs.c in mach-rk3188 file 2013-01-22 17:52:44 +08:00
xkd
7cf7fc9784 reboot system if power off with dc charger pluged in 2013-01-22 17:33:40 +08:00
wuhao
55707d1295 rk3168 ds1006: camera flash sgm3140 2013-01-22 17:32:14 +08:00
xxx
bf10222721 gpu clk adn gpu aclk is set at on time for rk3168 and rk3066B 2013-01-22 17:23:22 +08:00
yxj
08f41d9e25 board rk30 sdk:modify fb_io_enable/disable function 2013-01-22 16:17:15 +08:00
chenxing
2d5d725f05 rk3168/rk3188: update dvfs table to fit rk3188 2013-01-22 14:37:16 +08:00
chenxing
c705010c4a rk30: fix a dvfs error judgement 2013-01-22 14:11:10 +08:00
xxx
3d9b8ec97e arm gpu ddr rate is limited by cpufreq_frequency_table in board-xxx.c 2013-01-22 12:31:39 +08:00
黄涛
d00b319768 rk_timer: support sched_clock 2013-01-22 11:31:55 +08:00
xxx
d95e7313ca extern rk30_dvfs_init() in /mach-rk3188/clock_data.c 2013-01-22 10:40:13 +08:00
黄涛
f27da4121a rk: sram.h: fix gcc error: unknown type name 'uint' 2013-01-22 10:35:02 +08:00
Frediano Ziglio
a5b0529675 xen: Fix stack corruption in xen_failsafe_callback for 32bit PVOPS guests.
commit 9174adbee4 upstream.

This fixes CVE-2013-0190 / XSA-40

There has been an error on the xen_failsafe_callback path for failed
iret, which causes the stack pointer to be wrong when entering the
iret_exc error path.  This can result in the kernel crashing.

In the classic kernel case, the relevant code looked a little like:

        popl %eax      # Error code from hypervisor
        jz 5f
        addl $16,%esp
        jmp iret_exc   # Hypervisor said iret fault
5:      addl $16,%esp
                       # Hypervisor said segment selector fault

Here, there are two identical addls on either option of a branch which
appears to have been optimised by hoisting it above the jz, and
converting it to an lea, which leaves the flags register unaffected.

In the PVOPS case, the code looks like:

        popl_cfi %eax         # Error from the hypervisor
        lea 16(%esp),%esp     # Add $16 before choosing fault path
        CFI_ADJUST_CFA_OFFSET -16
        jz 5f
        addl $16,%esp         # Incorrectly adjust %esp again
        jmp iret_exc

It is possible unprivileged userspace applications to cause this
behaviour, for example by loading an LDT code selector, then changing
the code selector to be not-present.  At this point, there is a race
condition where it is possible for the hypervisor to return back to
userspace from an interrupt, fault on its own iret, and inject a
failsafe_callback into the kernel.

This bug has been present since the introduction of Xen PVOPS support
in commit 5ead97c84 (xen: Core Xen implementation), in 2.6.23.

Signed-off-by: Frediano Ziglio <frediano.ziglio@citrix.com>
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-21 11:44:59 -08:00
Shuah Khan
e82efee857 powerpc: fix wii_memory_fixups() compile error on 3.0.y tree
[not upstream as the code involved was removed in the 3.3.0 release]

Fix wii_memory_fixups() the following compile error on 3.0.y tree with
wii_defconfig on 3.0.y tree.

  CC      arch/powerpc/platforms/embedded6xx/wii.o
arch/powerpc/platforms/embedded6xx/wii.c: In function ‘wii_memory_fixups’:
arch/powerpc/platforms/embedded6xx/wii.c:88:2: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 2 has type ‘phys_addr_t’ [-Werror=format]
arch/powerpc/platforms/embedded6xx/wii.c:88:2: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘phys_addr_t’ [-Werror=format]
arch/powerpc/platforms/embedded6xx/wii.c:90:2: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 2 has type ‘phys_addr_t’ [-Werror=format]
arch/powerpc/platforms/embedded6xx/wii.c:90:2: error: format ‘%llx’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘phys_addr_t’ [-Werror=format]
cc1: all warnings being treated as errors
make[2]: *** [arch/powerpc/platforms/embedded6xx/wii.o] Error 1
make[1]: *** [arch/powerpc/platforms/embedded6xx] Error 2
make: *** [arch/powerpc/platforms] Error 2

Signed-off-by: Shuah Khan <shuah.khan@hp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-21 11:44:59 -08:00
Jesse Barnes
a6d8f58e7c x86/Sandy Bridge: reserve pages when integrated graphics is present
commit a9acc5365d upstream.

SNB graphics devices have a bug that prevent them from accessing certain
memory ranges, namely anything below 1M and in the pages listed in the
table.  So reserve those at boot if set detect a SNB gfx device on the
CPU to avoid GPU hangs.

Stephane Marchesin had a similar patch to the page allocator awhile
back, but rather than reserving pages up front, it leaked them at
allocation time.

[ hpa: made a number of stylistic changes, marked arrays as static
  const, and made less verbose; use "memblock=debug" for full
  verbosity. ]

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: CAI Qian <caiqian@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-21 11:44:58 -08:00
Heiko Carstens
228f49c2da s390/time: fix sched_clock() overflow
commit ed4f20943c upstream.

Converting a 64 Bit TOD format value to nanoseconds means that the value
must be divided by 4.096. In order to achieve that we multiply with 125
and divide by 512.
When used within sched_clock() this triggers an overflow after appr.
417 days. Resulting in a sched_clock() return value that is much smaller
than previously and therefore may cause all sort of weird things in
subsystems that rely on a monotonic sched_clock() behaviour.

To fix this implement a tod_to_ns() helper function which converts TOD
values without overflow and call this function from both places that
open coded the conversion: sched_clock() and kvm_s390_handle_wait().

Reviewed-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-21 11:44:58 -08:00
Thomas Schwinge
b738689710 sh: Fix FDPIC binary loader
commit 4a71997a32 upstream.

Ensure that the aux table is properly initialized, even when optional features
are missing.  Without this, the FDPIC loader did not work.  This was meant to
be included in commit d5ab780305.

Signed-off-by: Thomas Schwinge <thomas@codesourcery.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-21 11:44:58 -08:00
黄涛
52db9ae6de rk2928: cpufreq: include ddr.h for fix implicit declaration of function ddr_set_rate error 2013-01-21 18:34:39 +08:00
陈辉
e0cefca516 to fix ds1006h crash bug:
3168 with U2BXX title, fix maskrom bug,
but need higher voltage on ddr
2013-01-21 18:24:52 +08:00
xxx
305cd10e7a mov dvfs global fun to rk plat 2013-01-21 17:55:09 +08:00
黄涛
67450b3bb6 Merge remote-tracking branch 'stable/linux-3.0.y' into develop-3.0
Merge v3.0.59
Conflicts:
	Makefile
	drivers/net/wireless/ath/ath9k/ar9003_2p2_initvals.h
	drivers/net/wireless/ath/ath9k/ar9003_eeprom.h
	drivers/usb/serial/option.c
2013-01-21 17:21:19 +08:00
yxj
c8cdb6107e edp transmitter dp501 support 2013-01-21 16:24:39 +08:00
yj
4550380e2f LR097: enable peripheral driver && mod ddr freq ==> 360M and increse logic vol 2013-01-21 15:56:40 +08:00
黄涛
f3b2c39518 rk3188: tb: defconfig add RTC_HYM8563 2013-01-21 15:52:46 +08:00
黄涛
b8fa73ae68 rk3188: support RK_USB_UART config 2013-01-21 14:11:55 +08:00
黄涛
d91c20f244 rk3188: usb_detect: support bvalid irq wake up system 2013-01-21 14:11:55 +08:00
chenxing
a582c42c62 rk3188: rename cpu_div parent name, remove while(1) 2013-01-21 10:35:39 +08:00
黄涛
65dcf72949 rk: cpu.h: fix gcc warning for cpu_is_rk3066b 2013-01-21 10:13:40 +08:00
黄涛
8550ec31cd rk: add ddr_set_rate to ddr.h 2013-01-21 10:06:25 +08:00
黄涛
666f5fc2ef rk3188: use rk30 cpufreq 2013-01-21 10:06:25 +08:00
张晴
f494d4ebdf rk3168_tb:support rtc_hym8563 2013-01-18 16:09:26 +08:00
kfx
81d1be35b3 rk3188: CIF_XXX --> CIF0_XXX 2013-01-18 11:40:18 +08:00
xbw
087f476431 SDMMC: for RK3188, modify error during calling the nei IOMUX-API 2013-01-18 09:47:33 +08:00
yzq
2f3bfab229 if PWM_EFFECT_VALUE==0,set PWM_GPIO=GPIO_LOW would cause backlight resume flash 2013-01-18 09:25:09 +08:00
Alexander Graf
9d2fdadbde KVM: PPC: 44x: fix DCR read/write
commit e43a028752 upstream.

When remembering the direction of a DCR transaction, we should write
to the same variable that we interpret on later when doing vcpu_run
again.

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: CAI Qian <caiqian@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-17 08:44:13 -08:00
Andre Przywara
5e3fe67e02 x86, amd: Disable way access filter on Piledriver CPUs
commit 2bbf0a1427 upstream.

The Way Access Filter in recent AMD CPUs may hurt the performance of
some workloads, caused by aliasing issues in the L1 cache.
This patch disables it on the affected CPUs.

The issue is similar to that one of last year:
http://lkml.indiana.edu/hypermail/linux/kernel/1107.3/00041.html
This new patch does not replace the old one, we just need another
quirk for newer CPUs.

The performance penalty without the patch depends on the
circumstances, but is a bit less than the last year's 3%.

The workloads affected would be those that access code from the same
physical page under different virtual addresses, so different
processes using the same libraries with ASLR or multiple instances of
PIE-binaries. The code needs to be accessed simultaneously from both
cores of the same compute unit.

More details can be found here:
http://developer.amd.com/Assets/SharedL1InstructionCacheonAMD15hCPU.pdf

CPUs affected are anything with the core known as Piledriver.
That includes the new parts of the AMD A-Series (aka Trinity) and the
just released new CPUs of the FX-Series (aka Vishera).
The model numbering is a bit odd here: FX CPUs have model 2,
A-Series has model 10h, with possible extensions to 1Fh. Hence the
range of model ids.

Signed-off-by: Andre Przywara <osp@andrep.de>
Link: http://lkml.kernel.org/r/1351700450-9277-1-git-send-email-osp@andrep.de
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Signed-off-by: CAI Qian <caiqian@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-17 08:43:58 -08:00
Shan Hai
aea63e0027 powerpc/vdso: Remove redundant locking in update_vsyscall_tz()
commit ce73ec6db4 upstream.

The locking in update_vsyscall_tz() is not only unnecessary because the vdso
code copies the data unproteced in __kernel_gettimeofday() but also
introduces a hard to reproduce race condition between update_vsyscall()
and update_vsyscall_tz(), which causes user space process to loop
forever in vdso code.

The following patch removes the locking from update_vsyscall_tz().

Locking is not only unnecessary because the vdso code copies the data
unprotected in __kernel_gettimeofday() but also erroneous because updating
the tb_update_count is not atomic and introduces a hard to reproduce race
condition between update_vsyscall() and update_vsyscall_tz(), which further
causes user space process to loop forever in vdso code.

The below scenario describes the race condition,
x==0	Boot CPU			other CPU
	proc_P: x==0
	    timer interrupt
		update_vsyscall
x==1		    x++;sync		settimeofday
					    update_vsyscall_tz
x==2						x++;sync
x==3		    sync;x++
						sync;x++
	proc_P: x==3 (loops until x becomes even)

Because the ++ operator would be implemented as three instructions and not
atomic on powerpc.

A similar change was made for x86 in commit 6c260d5863
("x86: vdso: Remove bogus locking in update_vsyscall_tz")

Signed-off-by: Shan Hai <shan.hai@windriver.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-01-17 08:43:53 -08:00