hxy
d6da2cba04
rk31: add cif clock source
2012-07-27 10:01:32 +08:00
蓝斌元
225e3950a3
rk2928 add gps support
2012-07-26 18:14:24 +08:00
hxy
265fda7e27
rk31: update iomux.h
2012-07-26 17:47:51 +08:00
hxy
89b0e26e2a
rk31: add i2s/codec/pwm/backlight support
2012-07-26 16:57:06 +08:00
yzq
4c9e1d535c
rk2928 lvds support
2012-07-23 18:18:49 +08:00
Zheng Yang
046ee1ba24
rk2928: add audio codec.
2012-07-23 18:14:13 +08:00
hxy
42c4038c46
rk31: fix sdmmc bug after rk2928 commit sdmmc support
2012-07-23 16:14:29 +08:00
kfx
6d914b8a0c
rk2928: add sdmmc support
2012-07-23 14:20:22 +08:00
hxy
c833379e3b
add sdcard fs support
2012-07-23 11:08:54 +08:00
hxy
531e2ac111
rk31: add sdmmc support
2012-07-20 17:37:50 +08:00
yzq
3a35b5af72
rk2928 hdmi support
2012-07-20 17:05:38 +08:00
kfx
b526f4b4ac
rk2928: update iomux
2012-07-20 14:47:18 +08:00
yxj
f5796180ff
rk31:add lcdc support
2012-07-19 12:27:17 +08:00
zyc
9eb18c287e
init cif driver for rk2928,compatable with rk30.
2012-07-18 15:36:30 +08:00
kfx
4b68042201
rk2928: add lcdc support and add rga config
2012-07-17 21:02:16 +08:00
黄涛
e6a9f68960
rk31: add fpga board support
2012-07-17 14:48:20 +08:00
黄涛
3145fc703e
rk31: add initial support
2012-07-17 14:47:33 +08:00
黄涛
323e1a575e
pl330: fix support RK2928/RK31
2012-07-17 14:30:05 +08:00
黄涛
1fd0835ee3
rk2928: irqs.h: add IRQ_ARM_PMU define
2012-07-17 14:27:21 +08:00
kfx
8d247adbfb
Merge remote-tracking branch 'origin/develop-3.0' into develop-3.0-rk2928
2012-07-17 10:11:22 +08:00
zsq
64a147f246
add some define for rga common platform used
2012-07-17 10:04:11 +08:00
zsq
fd02ff2c9d
add rga driver that are debugged
2012-07-17 09:13:40 +08:00
陈辉
ff49459a0c
to support JB three buffer
2012-07-16 19:40:21 +08:00
陈辉
52e3b3d476
add ds1001b product
2012-07-16 18:45:25 +08:00
kfx
693e55f09b
rk2928: devices.c: add rga support
2012-07-16 18:07:00 +08:00
陈辉
dfe3ba46eb
update arm and logic voltage,
...
from product experiment
v2
2012-07-16 15:47:47 +08:00
黄涛
941da3e0da
rk: cpufreq_stats.c: fix boot time crash
...
fix this bug:
[ 2.300817] Unable to handle kernel NULL pointer dereference at virtual address 00000000
[ 2.308902] pgd = c0404000
[ 2.311615] [00000000] *pgd=00000000
[ 2.315198] Internal error: Oops: 5 [#1 ] PREEMPT SMP
[ 2.320157] CPU: 1 Not tainted (3.0.8+ #70 )
[ 2.324689] PC is at cpufreq_stat_notifier_trans+0x40/0xa8
[ 2.330169] LR is at notifier_call_chain+0x2c/0x70
[ 2.334954] pc : [<c06ce1d4>] lr : [<c0481440>] psr: 80000013
[ 2.334959] sp : eee47e50 ip : c0a13104 fp : 30a32c00
[ 2.346424] r10: eee47ec8 r9 : 00118c30 r8 : 00000000
[ 2.351641] r7 : fffffffc r6 : 00000000 r5 : ed8c1d80 r4 : 00000000
[ 2.358158] r3 : 00000009 r2 : 000f6180 r1 : 00000000 r0 : 00000000
[ 2.364678] Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment kernel
[ 2.371976] Control: 10c53c7d Table: 6040404a DAC: 00000015
[ 2.377712]
[ 2.924838] [<c06ce1d4>] (cpufreq_stat_notifier_trans+0x40/0xa8) from [<c0481440>] (notifier_call_chain+0x2c/0x70)
[ 2.935178] [<c0481440>] (notifier_call_chain+0x2c/0x70) from [<c04815a0>] (__srcu_notifier_call_chain+0x40/0x58)
[ 2.945430] [<c04815a0>] (__srcu_notifier_call_chain+0x40/0x58) from [<c04815cc>] (srcu_notifier_call_chain+0x14/0x18)
[ 2.956115] [<c04815cc>] (srcu_notifier_call_chain+0x14/0x18) from [<c06cccd8>] (cpufreq_notify_transition+0xb4/0xe8)
[ 2.966721] [<c06cccd8>] (cpufreq_notify_transition+0xb4/0xe8) from [<c044b584>] (cpufreq_scale_rate_for_dvfs+0x10c/0x164)
[ 2.977755] [<c044b584>] (cpufreq_scale_rate_for_dvfs+0x10c/0x164) from [<c044cb94>] (dvfs_target_cpu+0x378/0x67c)
[ 2.988093] [<c044cb94>] (dvfs_target_cpu+0x378/0x67c) from [<c044c1dc>] (dvfs_set_rate+0x48/0x68)
[ 2.997044] [<c044c1dc>] (dvfs_set_rate+0x48/0x68) from [<c044b1f0>] (rk30_target+0x1a8/0x200)
[ 3.005648] [<c044b1f0>] (rk30_target+0x1a8/0x200) from [<c06cbff0>] (__cpufreq_driver_target+0x4c/0x60)
[ 3.015121] [<c06cbff0>] (__cpufreq_driver_target+0x4c/0x60) from [<c06d05ec>] (cpufreq_interactive_up_task+0x128/0x184)
[ 3.025981] [<c06d05ec>] (cpufreq_interactive_up_task+0x128/0x184) from [<c047c3d0>] (kthread+0x80/0x88)
[ 3.035453] [<c047c3d0>] (kthread+0x80/0x88) from [<c04375f8>] (kernel_thread_exit+0x0/0x8)
[ 3.043796] Code: e5956018 e5953010 ea000004 e5951020 (e7911104)
2012-07-16 14:25:38 +08:00
黄涛
33ae54fb27
Revert "rk30: clock: disable pd_vio gating function before rga, lcdc, cif support properly"
...
This reverts commit 2186d7743a .
2012-07-16 10:23:39 +08:00
yxj
b3ecdc5ac2
rkfb:add three buffer support for menuconfig,redefine FBIOPUT_NUM_BUFFERS 0x4625
2012-07-14 18:56:34 +08:00
yxj
1a88c4e7a5
rkfb:add ioctl to get buffers number
2012-07-14 17:16:02 +08:00
yxj
58ebc4a9ed
turn of lcdc power domain and clk in earyl suspend
2012-07-14 17:16:00 +08:00
root
1690f2c243
fix bugs of early suspend when display_pd is closed.
2012-07-14 10:08:27 +08:00
黄涛
84a3957cd4
Merge remote-tracking branch 'origin/develop-3.0' into develop-3.0-rk2928
2012-07-13 19:24:46 +08:00
黄涛
93e23ed866
rk: move CLK_SWITCH_TO_32K config from mach-rk30 to plat-rk
2012-07-13 14:56:44 +08:00
yxj
a0132e447e
rkfb:use macro HDMI_HPD_ACTIVED to judge HDMI plug or not
2012-07-13 12:17:00 +08:00
yxj
6378d30555
rk30fb :fix a bug in rk_fb_switch_screeen
...
after close lcdc the hdmi used ,return directly
2012-07-13 12:14:20 +08:00
黄涛
33246c59d0
rk30: ddr.c: always compile with Os, else may hung on boot
2012-07-13 11:45:06 +08:00
chenhui
68c1c4acaf
update arm and logic voltage,
...
from product experiment
2012-07-13 09:51:18 +08:00
kfx
a6c33cb21c
rk2928: add spi&i2c board config
2012-07-12 17:32:13 +08:00
Zheng Yang
85961a9a25
rk30 hdmi: lower ddc frequency to pass hdmi cts.
2012-07-12 17:31:05 +08:00
kfx
e2dbca8dae
rk2928: update i2s driver
2012-07-12 14:57:37 +08:00
kfx
0f7b346795
rk2928: i2s init
2012-07-12 14:31:18 +08:00
kfx
ec0d6b3a8a
rk2928: update gpio driver(gpio-rk30.c)
2012-07-12 13:05:31 +08:00
kfx
d37628c897
rk2928: gpio enable & iomux enable & fpga keypad init
2012-07-12 10:50:10 +08:00
zwp
33af2d2d14
solve gsensor deadlock problem.
2012-07-12 10:11:47 +08:00
黄涛
dbc0fca461
sched: Cleanup cpu_active madness
...
commit 5fbd036b55 upstream.
Stepan found:
CPU0 CPUn
_cpu_up()
__cpu_up()
boostrap()
notify_cpu_starting()
set_cpu_online()
while (!cpu_active())
cpu_relax()
<PREEMPT-out>
smp_call_function(.wait=1)
/* we find cpu_online() is true */
arch_send_call_function_ipi_mask()
/* wait-forever-more */
<PREEMPT-in>
local_irq_enable()
cpu_notify(CPU_ONLINE)
sched_cpu_active()
set_cpu_active()
Now the purpose of cpu_active is mostly with bringing down a cpu, where
we mark it !active to avoid the load-balancer from moving tasks to it
while we tear down the cpu. This is required because we only update the
sched_domain tree after we brought the cpu-down. And this is needed so
that some tasks can still run while we bring it down, we just don't want
new tasks to appear.
On cpu-up however the sched_domain tree doesn't yet include the new cpu,
so its invisible to the load-balancer, regardless of the active state.
So instead of setting the active state after we boot the new cpu (and
consequently having to wait for it before enabling interrupts) set the
cpu active before we set it online and avoid the whole mess.
2012-07-12 09:49:51 +08:00
黄涛
8215d8fbbf
rk30: cpufreq: prevent deadlock by disable call get_online_cpus
...
The deadlock happens when:
rk30_cpufreq_temp_limit_work_func:
cpufreq_driver_target
lock_policy_rwsem_write
mutex_lock(&cpufreq_mutex)
cpufreq_interactive_up_task:
mutex_lock(&cpufreq_mutex)
mutex_lock(&cpu_hotplug.lock)
_cpu_down:
mutex_lock(&cpu_hotplug.lock)
lock_policy_rwsem_write
2012-07-12 09:49:51 +08:00
黄涛
9100f92c1f
rk: fiq_debugger: better support cpu cmd, never switch when target cpu is offline
2012-07-12 09:49:51 +08:00
kfx
9344f9d599
rk2928: i2c: SZ_4K -> RK2928_XXI2CX_SIZE
2012-07-11 18:53:07 +08:00
kfx
615c024517
rk2928: uart init
2012-07-11 18:43:53 +08:00