Commit Graph

93 Commits

Author SHA1 Message Date
qinglin.li 0758b4f228 ddr_tool: bring up s6 ddr_tool [1/1]
PD#SWPL-172962

Problem:
bring up s6 ddr_tool

Solution:
bring up s6 ddr_tool

Verify:
s6

Change-Id: I9d0f63e340d8bacbd846ccbd710a153cf5192f16
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-07-13 19:16:37 +08:00
Wanwei Jiang ce910dea45 dmc: porting for s6 [1/1]
PD#SWPL-156505

Problem:
porting dmc for s6

Solution:
1. support ddr bandwidth
2. support dmc monitor
3. analyzing register information according to
the latest secure register definitions

Verify:
s6 pxp

Change-Id: I90067dab06a268e8f87c4f5df1960375b2eecf32
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
2024-07-13 19:11:23 +08:00
qinglin.li 39b1b94df1 ddr_tool: support sc2 and t5w priority [2/2]
PD#SWPL-173670

Problem:
support sc2 and t5w priority

Solution:
support sc2 and t5w priority

Verify:
local

Change-Id: I010790af9ee2c8e6fe46d2a426f3b1d9a17b4491
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-06-18 19:43:52 +08:00
qinglin.li 29c56ceb61 ddr_tool: support sc2 and t5w priority [1/1]
PD#SWPL-173670

Problem:
support sc2 and t5w priority

Solution:
support sc2 and t5w priority

Verify:
local

Change-Id: Ibe6c3858e04eb60f59b6d44b66a9c0dab7b6f44c
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-06-18 19:43:22 +08:00
Jianxiong Pan c0ae2f061c mm: pagetrace: arm64 unable get _text and module_base parameters. [1/1]
PD#SWPL-161628

Problem:
arm64 unable get _text and module_base parameters via find symbal.

Solution:
use long type to store pagetrace information.

Verify:
sc2.

Change-Id: Id52bed43bbeed50a6d8ef0e32a54c5d9d9eab331
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2024-06-18 19:40:42 +08:00
qinglin.li 0b66eab2d1 dmc_monitor: check and dump dmc sec reg when serror [1/1]
PD#SWPL-169568

Problem:
check and dump dmc sec reg when serror

Solution:
1. check dmc sec reg when probe
2. check dmc sec reg when serror

Verify:
local

Change-Id: Idb379eefa410419b0750ba1f33c3bc007a3a255d
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-06-18 19:38:42 +08:00
Tao Zeng 6d13604db9 amfc: add amfc driver support [1/1]
PD#SWPL-137614
PD#SWPL-163213

Problem:
No amfc driver

Solution:
add it:
1, basic driver for AMFC
2, EROFS support
3, kernel compressed by ZSTD support

Verify:
pxp

Change-Id: I45d2e308d209e35edba626619072aae93c4d0f56
Signed-off-by: Tao Zeng <tao.zeng@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2024-05-16 20:03:23 +08:00
dongqing.li 154dca6108 T7C: ramdump optimize the DDR cleaning strategy. [1/1]
PD#SWPL-165513

Problem:
Autosuspend can't resume when connect usb disk
and enable ramdump.

Solution:
Optimize the DDR cleaning strategy:
1.delay 120s to clean up memory.
2.stop cleaning when the remaining free size
drops to 10%.

Verify:
on t7c

Change-Id: I93e64706e1a39a7e37f3a7dd4afb081c687c1f9f
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
2024-05-16 15:18:58 +08:00
qinglin.li 94b3ac5dac dmc: page invalid due to panic [1/1]
PD#SWPL-163624

Problem:
get out of ddr size addr page flags to panic

Solution:
panic when write addr out of ddr
warning when read addr out of ddr

Verify:
txhd2 && g12a

Change-Id: I8bbe6e4185f433eb34868bb94fe0f32a06400a29
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-24 14:59:15 +08:00
Wanwei Jiang de03e0235d dmc: bringup s7d [1/1]
PD#SWPL-163047

Problem:
bringup s7d

Solution:
add priority and vpu sub port tables

Verify:
s7d

Change-Id: I953574a1c5a100d180d9e00e3a0a3304fee6c9ab
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
2024-04-18 19:00:17 +08:00
qinglin.li 2b67eea136 s7d: s7d dmc pxp bring up [1/1]
PD#SWPL-147270

Problem:
s7d dmc pxp bring up

Solution:
s7d dmc pxp bring up

Verify:
local

Change-Id: Ie8a2a09bba30acf7e4c07ad6b5f9e2b16ecd1ed5
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 19:00:17 +08:00
qinglin.li e873461243 dmc_monitor: fix dmc error due to crash [1/1]
PD#SWPL-160944

Problem:
fix c2 reg error
fix port name is null due to strstr crash

Solution:
fix c2 reg error
fix port name is null due to strstr crash
update to dmc version to 1.5

Verify:
c2

Change-Id: I02f6528d0d61a3dff42852f8e479439993fadaa5
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:02:20 +08:00
qinglin.li f0494ce622 ddr_bandwidth: irq request flag mismatch [1/1]
PD#SWPL-160944

Problem:
genirq: Flags mismatch irq 38.
00002084 (dmc_monitor) vs. 00000084 (ddr_bandwidth)

Solution:
fix irq use same irq flag

Verify:
local

Change-Id: I98e45e57ae4e1d1c57553b64ace0795f0f7f4eaa
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:02:07 +08:00
qinglin.li b8e3ca09fd dmc_monitor: disabled dmc monitor alone with ddr_tool [1/1]
PD#SWPL-160189

Problem:
disabled dmc monitor alone with ddr_tool
modify dmc monitor depend on page trace
update dmc version to 1.4

Solution:
disabled dmc monitor with ddr_tool
modify dmc monitor depend on page trace

Verify:
local

Change-Id: Ib9d0463ee0734c3b8ae1dc27b1e0cacf69a605fa
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:02:00 +08:00
qinglin.li 9696f7615f dmc_monitor: fix io_mem array get error [1/1]
PD#SWPL-147355

Problem:
io_mem array get error

Solution:
fix io_mem array get error
update dmc version to 1.3

Verify:
local

Change-Id: I95b69d5c8a06b984858c73d6e2564c8d17214680
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:01:52 +08:00
qinglin.li 0cbb4684d0 dmc_monitor: optimize port and subport name save [1/1]
PD#SWPL-147355

Problem:
optimize port and subport name save

Solution:
update dmc version to 1.2
optimize port and subport name save

Verify:
local

Change-Id: I2e293ad8b359cdef93475ee976ddc0562e1593e5
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:01:42 +08:00
qinglin.li aa80b3a899 dmc_monitor: fix irq thread null pointer [1/1]
PD#SWPL-147355

Problem:
old soc may creat a secure but irq thread not be init
when first irq set

Solution:
fix irq thread null pointer
update dmc version to 1.1

Verify:
g12a

Change-Id: I1f0e99db992d52f0acb8e66eb906f0d89bb52b32
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-04-18 15:01:32 +08:00
Jiucheng Xu a5458278eb ddr_tool: add ddr bandwidth trace for 5.15 [1/1]
PD#SWPL-156027

Problem:
5.15 has no ddr bandwidth trace tool

Solution:
add tools

Verify:
G12A

Change-Id: Ifc4a471809078de7a991ac98e5cd26cb19ec0297
Signed-off-by: Jiucheng Xu <jiucheng.xu@amlogic.com>
2024-04-18 15:01:14 +08:00
qinglin.li ca2b13446a dmc: tm2 dmc bring up [1/1]
PD#SWPL-143634

Problem:
tm2 dmc bring up
cpu info modules need to load earlier due to get cpu version

Solution:
tm2 dmc bring up
cpu info modules load earlier

Verify:
local

Change-Id: I0ce73c49a9c0aefb1d3beac3151eac20eec2b166
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2024-04-18 15:00:28 +08:00
Dezhen Wang fb250df9e2 kernel6.6: support clang build for a4 and a5 [1/1]
PD#SWPL-156726

Problem:
support clang build for a4 and a5

Solution:
fix build error

Verify:
a4 a5

Change-Id: I9aa3e06010344c9a313365d3dcdf1b10b4f75904
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-03-08 10:27:31 +08:00
qinglin.li 23bed8cc07 dmc_monitor: use dmc irq thread when irq ratio is too high [1/1]
PD#SWPL-147355

Problem:
due to lockup when dmc irq ratio is too high

Solution:
use dmc irq thread when irq ratio is too high

Verify:
local

Change-Id: Ie13d584f81563e3c2e111fb5d6033f0e2aa0d337
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-02-19 20:22:41 +08:00
qiankun.wang 1ed0f9e18b iotrace: iotrace vendor hooks and optimization [2/2]
PD#SWPL-142603

Problem:
iotrace read/write use vendor hooks.
iotrace optimization

Solution:
iotrace read/write use vendor hooks.
iotrace optimization

Verify:
sc2_ah212

Change-Id: If69ed5dce03ffa53f1c4819659fb80dfcad767c5
Signed-off-by: qiankun.wang <qiankun.wang@amlogic.com>
2024-01-26 21:02:30 +08:00
qinglin.li 2416219355 ddr_tool: s7 dmc bring up [1/1]
PD#SWPL-152397

Problem:
1. fix ddr freq reg
2. add ddr priority support

Solution:
1. fix ddr freq reg
2. add ddr priority support

Verify:
s7

Change-Id: I2e8af4b2f1b8a9bb820db52f5fa6045da65ebed3
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-22 20:29:09 +08:00
qinglin.li f9186f2084 s7: s7 dmc pxp bring up [1/1]
PD#SWPL-135753

Problem:
s7 dmc pxp bring up

Solution:
s7 dmc pxp bring up

Verify:
local

Change-Id: Iebb8d1efd981478356720222ba55dd0daf346f23
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-22 20:26:22 +08:00
qinglin.li 687495159f scripts: support build kasan with parameter for androidt [2/2]
PD#TV-107858

Problem:
support build kasan with parameter for androidt

Solution:
support build kasan with parameter for androidt

Verify:
local

Change-Id: I0538542862e5e708aea92257d90b49ab47ced9be
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-20 20:40:37 +08:00
qinglin.li 992dca6afc ddr_bandwidth: fix irq not disabled when mode close [1/1]
PD#SWPL-141263

Problem:
irq not disabled when mode close

Solution:
fix irq not disabled when mode close

Verify:
local

Change-Id: I1ba42fbe47860838683bdd7a117aabb32b617daa
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-20 18:42:57 +08:00
Dezhen Wang 30b27cb331 ddr: upgrade the ddr tool to g12a [3/11]
PD#SWPL-133253

Problem:
G12A kernel upgrade from 4.9 to 5.15 U kernel basic - ddr tool

Solution:
G12A kernel upgrade from 4.9 to 5.15 U kernel basic - ddr tool

Verify:
sc2

Change-Id: I8e5995b832d3c54dec176a67a183b4b828cfc343
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2024-01-20 09:16:20 +08:00
qinglin.li 48ac7ec7d7 ddr_tool: add t3 && t3x ddr priority node support [1/1]
PD#SWPL-151626

Problem:
add t3 && t3x ddr priority node support

Solution:
add t3 && t3x ddr priority node support

Verify:
local

Change-Id: I5cb708db11e60774664a22e13865d4f48e558fa6
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-09 19:58:46 +08:00
Qinglin Li f746d701e9 ddr_bandwidth: fix irq not disabled when mode close [2/2]
PD#SWPL-141263

Problem:
irq not disabled when mode close

Solution:
fix irq not disabled when mode close

Verify:
local

Change-Id: I632b145626e81cddf9aef3a05f7c1ee644c9c478
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2024-01-09 19:42:25 +08:00
dongqing.li eacd3929ba ramdump: Fix known issues for ker5.15. [1/1]
PD#SWPL-148227

Problem:
The crash file of ramdump cannot be parsed properly.

Solution:
1. Delay 60 seconds to clear DDR
2. Optimize print output to help parse crash files.
3. Reduce the func jump level of flush cache all.

Verify:
sc2

Change-Id: Ib82725cf2c22eb3ef9c7257cedbdfa718acd5ad9
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
2024-01-03 20:12:02 +08:00
Lei Zhang 89189d06c2 debug: optimize registers and pfn dump [1/1]
PD#SWPL-144211

Problem:
n/a

Solution:
1 not dump registers and pfn when warning
2 enable user fault dump
3 enable pfn pagetrace dump

Verify:
on SC2

Change-Id: Id0329bde1dd2d91fc818c12cd502796c3cdf123d
Signed-off-by: Lei Zhang <lei.zhang@amlogic.com>
2023-12-28 18:57:50 +08:00
qinglin.li 94fb8d43c1 dmc_monitor: reserved zero address and enabled dmc monitor [4/4]
PD#SWPL-144091

Problem:
dmc not judge reserved memory failed if use reg function in dts

Solution:
modify alloc function in dts used to reserved memory

Verify:
Detail info

Change-Id: I2dfa087cbbc940273e6495f01eb5acdb7cb3c4b7
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2023-12-25 13:58:56 +08:00
qinglin.li 62436bd235 dmc_monitor: reserved zero address and enabled dmc monitor [3/3]
PD#SWPL-144091

Problem:
arm64 use reserved 512K memory

Solution:
arm64 used reserved 512K memory

Verify:
local

Change-Id: If9d847fc68d58a21b0063d9ff4e6afb685a7c4b1
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2023-12-25 13:57:52 +08:00
qinglin.li 6ee886c147 dmc_monitor: reserved zero address and enabled dmc monitor [1/1]
PD#SWPL-144091

Problem:
reserved zero address and enabled dmc monitor

Solution:
reserved zero address and enabled dmc monitor

Verify:
local

Change-Id: Ief29049b1938a163b2f73e516e38c6c29c703f3b
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2023-12-25 13:56:02 +08:00
Jianxiong Pan e3db5369be mm: reduce the print log in momeory module. [1/1]
PD#SWPL-141371

Problem:
optimize memory log.

Solution:
reduce the print log.

Verify:
local.

Change-Id: Id5b9a9240bc94d49f6d311a1f4084ffdf0a5a13a
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-11-06 17:32:53 +08:00
Jianxiong Pan bcfc218d6d dmc: print more page information in dmc. [1/1]
PD#SWPL-142086

Problem:
print more page info.

Solution:
whether page in buddy or slab.

Verify:
t5m.

Change-Id: Ic33a685e510c24cde706b8285cb4f62444d98d42
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-11-06 17:32:53 +08:00
qinglin.li 5d3c1fa9b0 ddr_bandwidth: irq too much due to crash [1/1]
PD#SWPL-141263

Problem:
when ddr bandwidth irq handle not register but set,
will be due dmc irq too much,
if dmc and bandwidth use same irq num.

Solution:
not enabled bandwidth irq when irq handle not set

Verify:
sc2

Change-Id: Ie8622c8b8a9a623d936d37a43d3e56d039b83cd1
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-10-18 14:51:40 +08:00
Jianxiong Pan 1f6599c5fd zapper: rename CONFIG_AMLOGIC_ZAPPER_CUT_C1A. [1/1]
PD#SWPL-140594

Problem:
rename CONFIG_AMLOGIC_ZAPPER_C1A.

Solution:
CONFIG_AMLOGIC_ZAPPER_CUT_C1A.

Verify:
build pass.

Test:
run on s1a board normally.

Change-Id: I3a8ab8d81af2c4d14b51c117ac16d75f3980adac
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-10-09 20:08:39 +08:00
Jianxiong Pan bce3604c82 dmc: add check for free pages. [1/1]
PD#SWPL-140453

Problem:
the newly released page is not filtered out.

Solution:
add check for free pages.

Verify:
local.

Change-Id: Ib8cfea7fb13cce9bef134864ce6f44c1dbccc7dc
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-09-20 20:39:01 +08:00
dongqing.li c4f04df833 ramdump: ker5.15 creat /sys/kernel/mdump/compmsg [1/1]
PD#SWPL-132538

Problem:
The core-dump file cannot be saved to /data in Android.

Solution:
a. Fix BUG for bad page state when lazy_clear_work is running.
b. Print the parameter infor required for the crash tools.
c. Support for storing crashdump files in Android /data/vender/ramdump/
1)  When a kernel panic occurs, flush cache all.
2)  Restart to uboot stage and compress the full DDR.
3)  Set kernel dts rsv mem based on compressed infor.
4)  Crop reserved memory sub nodes to reduce mem usage.
5)  Kernel stage parsing dts to configure rsv mem.
6)  Android init.rc read sysnode, and generate crash file.

Verify:
sc2_ah212

Change-Id: Ic6fba2c305f9e3171445f3b89afa02c75c27a080
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
Signed-off-by: Luan Yuan <luan.yuan@amlogic.com>
2023-09-15 19:36:46 +08:00
Dezhen Wang 1bfff1f439 coverity: fix [1/1]
PD#SWPL-136722

Problem:
coverity errors

Solution:
fix the coverity errors

Verify:
local

Change-Id: I5b210b5c44ee6a0e34c1c8b9685fe2d38cd52b1b
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
2023-09-13 20:37:08 +08:00
dongqing.li fee7ee35f1 ramdump: ker5.15 flush cache all when kernel panic. [1/1]
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>
2023-09-13 16:15:37 +08:00
qinglin.li 18c0854887 dmc_monitor: page trace record when access [1/1]
PD#SWPL-137431

Problem:
need record page trace when access

Solution:
record page trace when access

Verify:
local

Change-Id: I8e940449715c8fc41855b1b811281aeea099030b
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-09-13 15:07:37 +08:00
Jianxiong Pan b75016a67d zapper: remove c1a relate code. [1/1]
PD#SWPL-126879

Problem:
memory optimization.

Solution:
remove c1a relate code.

Verify:
s1a.

Test:
run on s1a board normally.

Change-Id: Idbd24a529666278295724f26d10f1a720877ca6a
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-08-15 20:09:03 -07:00
qinglin.li d28356239a ddr_tool: s1a dmc bring up [1/1]
PD#SWPL-133114

Problem:
s1a dmc bring up

Solution:
s1a dmc bring up

Verify:
s1a

Change-Id: I0a63cee7c0f53c179c628f54fa97d147f1b4c84a
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-08-15 10:36:51 +08:00
qinglin.li a62b90917c s1a: dmc bring up sync trunk [1/1]
PD#SWPL-133114

Problem:
dmc bring up sync trunk

Solution:
dmc bring up sync trunk

Verify:
local

Change-Id: Ib17e0855c0401b439f298ca9a0668f117881e775
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-08-15 10:36:51 +08:00
qinglin.li 946f6bcc61 ddr_tool: s1a dmc pxp bring up [1/1]
PD#SWPL-120770

Problem:
s1a dmc pxp bring up

Solution:
s1a dmc pxp bring up

Verify:
pxp

Change-Id: Ia066c0225bcae5d2974ba21962965905f5883fbc
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-08-15 10:36:48 +08:00
qinglin.li 19c65c43b3 dmc_monitor: arm need check memory map [1/1]
PD#SWPL-132402

Problem:
read no map memory failed when arm build

Solution:
check memory map when arm build

Verify:
local

Change-Id: I9219cf796b2091bed31df485d18621887a50c491
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-08-09 02:59:07 -07:00
qinglin.li d1164cdfa4 dmc_monitor: arm need check memory map [1/1]
PD#SWPL-132402

Problem:
read no map memory failed when arm build

Solution:
check memory map when arm build

Verify:
local

Change-Id: If806828c60e54e113f7ead52670a97159aac5a22
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
2023-08-07 00:19:00 -07:00
Jianxiong Pan 2c979ec11d zapper: enabled reg access function. [1/1]
PD#SWPL-126879

Problem:
macro error.

Solution:
use the reg access config instead of watchpoint.

Verify:
t215.

Change-Id: Ia030a2d813ec9a7c28eb814ad5978100758654df
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
2023-07-26 05:51:32 -07:00