PD#SWPL-198946
Problem:
After resume, the timer is created multiple times
due to the reinitialization of the IOTM.
Solution:
The timer will only be created once.
Verify:
t6d
Change-Id: Ie4c6b20f4c06ee72e558c77d1df115897a255811
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-188937
Problem:
support iotm function on t6w
Solution:
support iotm funciotn on t6w
Verify:
t6w,t6d
Change-Id: I89c835ea502bfe13612f270e095307cc0bdb898b
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-184150
Problem:
add memory related trace info
Solution:
1, __alloc_page and __alloc_pages_slowpath: use trace event and vendor hook
2, cma_alloc: use vendor hook in aml_cma.ko
3, handle_pte_fault: use kretprobe
4, trace meminfo periodly
Verify:
sc2_ah212
Change-Id: Icf5695f421832c00c5cad7026663f66b2dcc58a5
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-190078
Problem:
after reboot latest iotrace record may not completely clean
Solution:
add more exception check
Verify:
t5m
Change-Id: Iae157d6a8d195024bfa6ce5f6cd5e9fbfd6e5363
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-191471
Problem:
there is compiling error when kernel size optimize
Solution:
fix the Kconfig dependency
Verify:
t6d
Test:
Boot
Change-Id: I10f453f1753c25f700902d3744978201c16abf58
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
PD#SWPL-191332
Problem:
After the system suspend, the core will be powered off, and the
axi_addr may point to 0, it can cause a crash.
Solution:
reinitialize the IOTM after resume.
Verify:
t6d
Change-Id: I5479d75b035b801c2954c27b171190dc0f260bd3
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-160731
Problem:
cpu freq drop quickly in RT scene
Solution:
optimize cpufreq strategy, not drop too quickly
Verify:
on T7C
Change-Id: I42d3bcf445a0496f393a7f491c99a593e6b18f17
Signed-off-by: Lei Zhang <lei.zhang@amlogic.com>
PD#SWPL-170602
Problem:
iotm may access zero address after initializing iotm.
Solution:
Multiple pulses are triggered so that the AXI_ADDR
can points to the correct ddr address.
Verify:
t6d
Change-Id: Ia4355833d82e729dd2ed8fb9674fd065ed155617
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-185687
Problem:
there is panic when envp_init stores over 32 members
Kernel panic - not syncing: Too many boot env vars at `reboot_mode=normal'
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 5.4.180-rksec-1.0 #2
Hardware name: Generic DT based system
[<b020a1b8>] show_stack+0x10/0x14
[<b0cbd7b4>] dump_stack+0x8c/0xa8
[<b0cad7a4>] panic+0x104/0x304
[<b1100b84>] start_kernel+0xa4/0x42c
[<b11004a4>] _sinittext+0x44/0x48
Solution:
set __setup return value as 1 to avoid envp_init full
Verify:
t5w
Test:
t5w
Change-Id: Id717cf132b5a5ec97a2be2c710ed9fddbbd9e0ae
Signed-off-by: Jian Hu <jian.hu@amlogic.com>
PD#SWPL-170602
Problem:
printk messages dropped when dump trace in NMI processing.
iotm may write 0x0 when restart iotm.
Solution:
preempting status is properly managed during NMI processing.
start/stop iotm according to write IOTM_CTRL_MODE.
Verify:
t6d
Change-Id: Id8886f2b9a7e8def8d0243fdedcd88b79ed7e208
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-170602
Problem:
support iotm function on t6d
Solution:
support iotm funciotn on t6d
Verify:
t6d
Change-Id: Ifb5e32d0ff3ee455dae60088133c01514188159f
Signed-off-by: song.han <song.han@amlogic.com>
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-101847
Problem:
drm write registers to rdma table one by one, due to rdma table update
and rdma manager flush to real register are out of sync, so we want to
creat a fake table, the fake table will copy to rdma table after
pipeline register write done, and then config rdma vsync
Solution:
add rdma table for drm osd registers, and it can dynamic switching by
this node /sys/class/drm/card0/crtc0/rdma_table_switch.
echo 1 > /sys/class/drm/card0/crtc0/rdma_table_switch switch off
echo 0 > /sys/class/drm/card0/crtc0/rdma_table_switch switch on
Verify:
T3x s7 s5
Test:
DRM-OSD-33
Change-Id: I053daa7daaab672f8b1e9fc2c38a2d60552d6288
Signed-off-by: wenlong.zhang <wenlong.zhang@amlogic.com>
PD#SWPL-175587
Problem:
arm64 aml_flush_cache_all will corrupt some regs
Solution:
save and restore corrupted registers in flush cache
Verify:
S7D
Change-Id: I6e9d7edc4643fa340c592806f725d37666a0b8a6
Signed-off-by: song.han <song.han@amlogic.com>
PD#SWPL-175090
Problem:
check mte enable/disable,
if mte disable, update flag to notify AO CPU.
Solution:
if mte disable, update flag to notify AO CPU.
Verify:
BL201
Change-Id: Ic1416ae5262b548f681a02ccbe15e4d98f0dc532
Signed-off-by: Yan Wang <yan.wang@amlogic.com>
PD#SWPL-163170
Problem:
place_entity optimize only take effect in arm64
Solution:
support arm32 too
Verify:
sc2
Change-Id: Ieff1908e72fdb2282866ea1309f480d068772482
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-151292
Problem:
Some tasks have been running in apu before isolating cpu.
Solution:
when tasks were scheduled,if tasks shouldn't be run
on the apu, they will be migrated to other cpus.
Verify:
T5M
Change-Id: I97a91f1a40425a3ab26801de9a6bcb4b19c33019
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-154489
Problem:
kernel panic
Solution:
modify the type of the kunmap function parameter to struct *page
Verify:
soddy
Change-Id: If7e6aebfc5f423061af4af65a3b25ca802dcc4ea
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-146197
Problem:
kprobe some instruction will fail, eg: nop in arm64
different config or compiler may cause register_kprobe fail
Solution:
retry with next instruction
Verify:
t5m
Change-Id: I0a99d459a260e3aefa3565f03106ed4ea04741ee
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-147985
Problem:
little-high-prio interactive task schedule latency maybe very big
when task group schedule enable
Solution:
increase sched_task_high_prio to optimize schedule latency
Verify:
sc2
Change-Id: I9c0448e48c391432fc7d31805970fcbaceb6bb80
Signed-off-by: Hanjie Lin <hanjie.lin@amlogic.com>
PD#SWPL-140356
Problem:
debug printk not enabled for gki2.0
Solution:
config AMLOGIC_DEBUG_PRINTK to m for gki2.0
Verify:
ohm
Change-Id: Ife312f1fc5237fd810d192919bf1558fd9255fec
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-119162
Problem:
Function "aml_isolcpus_init" still registers kprobe
when "apu_enable=0" was added to initargs.
Solution:
Function "aml_isolcpus_init" will return directly
when "apu_enable=0".
Verify:
t5m
Change-Id: I91d92d3e6fb6c1cceb3078d0054c0b848bfdd731
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-143865
Problem:
t3x can't enable EAS because of apu.
Solution:
t3x can enable EAS when system supports
the hide cpu.
Verify:
t3x
Change-Id: Ie20fa9a01af1da9bcb5e655b5c54ecd9aa322f0f
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-142738
Problem:
kernel compile warn when use gcc 11.4
Solution:
fix the warn error
auto check issue: midagc= min agc, minagc = min agc
Verify:
local
Signed-off-by: Jiacai.Liu <jiacai.liu@amlogic.com>
Change-Id: I3f2ffaac88ef3ad2c92525398fe273776740bc5a
PD#SWPL-115695
Problem:
softirq be processed in ksoftirqd
Solution:
not check if CPU has a RT task
Verify:
on T3
Change-Id: Id64d6b284f66a1c079d06acde06503b544360965
Signed-off-by: Lei Zhang <lei.zhang@amlogic.com>
PD#SWPL-136207
Problem:
use kprobe to forbid free module init text
Solution:
record module base and use offset to parse
this module symbol
Verify:
SC2_AH212
Change-Id: I43bd306e94e9a6a5afe6411a9cd9e93db0342b7a
Signed-off-by: song.han <song.han@amlogic.com>
PD#SWPL-136432
Problem:
Native code will perform the 'BUG_ON' process,
and the log isn't favorable for debug.
Solution:
add the vendor hook function to perform the
'show_regs' and 'panic'.
Verify:
T3
Change-Id: I7a0f2c10b5db8ed10207d1fcbc7cc214054c7ae3
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-139674
Problem:
the system can't run 'ioremap' without
the Buddy system.
Solution:
set the variable 'check_reg_flag' to
postpone the function call 'ioremap'.
Verify:
T5M
Change-Id: Ieee33ff37a54037e3a3d1c258b127e1cbcd83b5a
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
PD#SWPL-137107
Problem:
The data in the ramdump crash file is abnormal
because the cache data has not been flushed back.
Solution:
1. Use ipi_stop hook to flush online cpu cache.
2. Use panic_notifier to flush panic cpu cache.
Verify:
sc2_ah212
Change-Id: Ifad5bd4203fdde327b8c2b19357aa2d92586063f
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>