PD#SWPL-222462
Problem:
CCI will be trigger when alloc before pagetrace set
Solution:
t7 default exclude CCI and filter MALI1
fix cmdline show
Verify:
local
Change-Id: If9d8378c386132407932d11d72c64ab19f6dc823
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-223295
Problem:
dmc not print the function name.
Solution:
update the dmc_unpack_ip code.
Verify:
sc2.
Change-Id: If28612fa05c36f9fde2d79a91b8b5a6e385c39b2
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
PD#SWPL-225004
Problem:
fix large ddr range arm32 build error
Solution:
default addr than 32bit is 0 when arm32 build
Verify:
local
Change-Id: I4716c6d695506918fcb890ae171f26bf1cdabcb3
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-224014
Problem:
virt_addr_valid only return true line addr
Solution:
save name and id point
Verify:
local
Change-Id: I256f8b9ec9c91a052b792bea6e9de9575ad1826a
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-218353
Problem:
other modules are unable to determine how many VPU buses this chip has
Solution:
add get_vpu_bus_num() for sideband
Verify:
local
Change-Id: Iccd1e2dc157fae98efa57df0b3543e06f779ead4
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-218353
Problem:
1. extract repeated code into a separate function.
2. change the parameter type from unsigned long to unsigned int
since the register is 32 bits
Solution:
modify reg filed access interface
Verify:
t5m
Change-Id: Ie9db201eb84c3bf59299a6b5e382e988b6d8110c
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-218353
Problem:
support side band function
Solution:
1. add debugfs file interface;
2. add side band function interface for other modules
Verify:
local
Change-Id: Iddcd236dbeaf443e97d7784bec3828a121ec5809
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-191305
Problem:
the frequency and bandwidth of LPDDR5 are inaccurate
Solution:
the frequency calculation methods for LPDDR5 and DDR3/2 are different
Verify:
local
Change-Id: Idb7bc333383f094c5071c0ac71276672f92dd06f
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-217338
Problem:
support to debug wbuf_mid_level
Solution:
support to debug wbuf_mid_level
Verify:
local
Change-Id: I8ddeb05776982ba6f94d9bf092965e1aff47018b
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-211590
Problem:
supports direct compilation using tools/bazel
Solution:
1. Default is the trunk's kernel, and can also be configured to
use the project kernel.
2. Default is the trunk's build.config.project, and can also be configured to
use the project's build.config.project.
3. Default is the trunk's Kconfig.ext_modules, and can also be configured to
use the project's Kconfig.ext_modules.
4. Default is the trunk's project.bzl, and can also be configured to
use the project's project.bzl. For other drivers' BUILD.bazel,
currently the corresponding GKI_CONFIG is automatically selected
based on the project. Other members are not distinguished at present.
5. Package all variables in project.bzl into a struct called project_configs,
which facilitates accessing the corresponding variables on a per-project basis.
6. Remove the DDK dependency check mechanism. However,
since it is protected by the configuration of the config, the impact is
not significant.
7. Change kernel_build to kernel_select in ddk_module.
8. support build command:
tools/bazel run --config=adt4 //project/sei/adt4:adt4_dist
./mk.sh --package adt4
9. Optimize the Bazel configure settings.
10. Optimize the copying of ko sources.
11. Optimize the copying of ko sources with debugging symbols.
12. Optimize the paths of some temporary files, so that the files are located
in the out directory instead of the /tmp directory.
Verify:
local
Test:
PB
Change-Id: I38f631215a41156910ae378c34c92de5a255309f
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-210775
Problem:
filter is null when none before set default
MTE default mode not set
fix bandwidth mode set
Solution:
filter default be set when all mode
MTE default mode not set
fix bandwidth mode set
Verify:
local
Change-Id: Ic993420aa57c727ee10b7ac4b3eb5165ca26b31b
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-201692
Problem:
spinlock is sleeping lock, cause BUG_ON in atomic context
Solution:
change spinlock to raw_spinlock
Verify:
on A5
Change-Id: Iea05aa36c58143d0efe880631d8906d9125fe55e
Signed-off-by: Lei Zhang <lei.zhang@amlogic.com>
PD#SWPL-204747
Problem:
limit print number
only handle irq dmc if multiple dmc
Solution:
limit print number
only handle irq dmc if multiple dmc
update dmc version 1.10.1
Verify:
local
Change-Id: I3a7fdc3418978cc35ad568d7cbfc3df7ddfe1645
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-208157
Problem:
use kernel build ddk_module_headers
Solution:
use kernel build ddk_module_headers
Verify:
local
Test:
local
Change-Id: I68cb33366c826fcd58fdb0a040229011ea669064
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-208253
Problem:
can't patch to kernel for google
Solution:
modify in common_drivers
Verify:
SC2
Test:
boot and play video
Change-Id: If7adf4b52c10ec259f6ce4549f31b215895c828e
Signed-off-by: biao.sun <biao.sun@amlogic.com>
PD#SWPL-206164
Problem:
ddk_module cannot find Kconfig and Makefile in sub package
Solution:
add Kconfig and Makefile srcs to common kernel srcs
Verify:
local
Test:
local
Change-Id: I3e71b7e1ddea15e9d32efc0e6cb7e8e81b95b793
Signed-off-by: Dezhen Wang <dezhen.wang@amlogic.com>
PD#SWPL-206552
Problem:
freq node value does not match actual
Solution:
register has only the lower 16 bits used ddr freq
Verify:
local
Change-Id: I74e8f59def96916abd44cd39eaa28b615e3d8fdd
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-195997
Problem:
the drivers in the common_drivers directory can be built using DDK
with gki_20 mode, it is also compatible with the original build.
Solution:
add BUILD.bazel and modify build script
Verify:
sc2
Test:
PB
Change-Id: Ie138e63f4eec8715d976d421dc8a431bcfadd859
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-197897
Problem:
The cma allocated by the driver is considered normal access.
Solution:
filter pages of isolate migrate type.
Verify:
local.
Change-Id: I9261f5b2de41b5b9896e4628b0c1e06890f4679f
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
PD#SWPL-192100
Problem:
The 32-bit kernel cannot use the ramdump function.
Because the .text section is typically at 0x00108000,
which will be overwritten by the BL2E/BL33 after
reboot. And the PC side is unable to parse it.
Solution:
1. After kernel panic, use DMA to copy the 0-24MB
region to the 0x09000000 area.
2. Reboot to bl33z, fill compress_section[1] with
the 0x09000000 region.
3. Analyze it using the same method as before.
Verify:
sc2
Change-Id: I3e22beb06321289c6643d3f05ec2d910d5ce0beb
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
PD#SWPL-197897
Problem:
default mode debug is zero when not reserved
Solution:
get original early
Verify:
local
Change-Id: I954d4afea75cfed0bf63c34ea451a2c833fd6745
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-195943
Problem:
When analyzing a crash, parameters such as --kaslr
and --kimage_voffset are required, but obtaining
these parameters is challenging.
Solution:
1.Add global string that contains parameter infor
such as kaslr, kimage_voffset, and others.
2.Get parameter: strings DUMP | grep aml_ramdump
Verify:
sc2_ah212
Change-Id: I5847dab4f4f2b09b9fb922ca2f456fee1e59147c
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
PD#SWPL-197897
Problem:
dmc default config cmd set is too long
dmc read protect mem crash
Solution:
1.add default mode set by bootargs
2.auto set range when set default mode
example cmd as
uboot
setenv initargs $initargs dmc_monitor=default;saveenv;reset
kernel
echo default > /sys/class/dmc_monitor/device
3.use !<DEVICE> to delete device
example cmd as
echo !USB > /sys/class/dmc_monitor/device
4.dmc_filter default set
use !<DEVICE/FUNCTION> to delete device or function
example cmd as
uboot
setenv initargs $initargs dmc_filter=!USB,!alloc_from_cma;saveenv;reset
kernel
echo !USB > /sys/class/dmc_monitor/filter
echo !alloc_from_cma > /sys/class/dmc_monitor/filter
5.default not read violation value
if want to read, echo value 1 > /sys/class/dmc_monitor/debug
Verify:
local
Change-Id: I243fbc0fb289f534b78a473ef15d8927d747d689
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-196060
Problem:
tvp use alloc_from_cma alloc protect memory
when dmc access this range, will be creat serror
Solution:
dmc filter tvp alloc_from_cma memory by pagetrace
Verify:
local
Change-Id: I8aff1a76e8f774ae7cc665f62756ef3a510ddd29
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-194719
Problem:
filter media use scatter memory
Solution:
media use alloc_page_boost_work_func alloc scatter memory
filter function alloc_page_boost_work_func
Verify:
local
Change-Id: Iafdbe4fc76b94cd857d232586d0f4b8c00bec2de
Signed-off-by: qinglin.li <qinglin.li@amlogic.com>
PD#SWPL-191355
Problem:
For the low_mem project, the ramdump driver is
built-in. If many kernel configs are removed
during kernel size trimming, it may lead to build
errors in ramdump parsing info.
The removed configs info can be found in CL 486868.
Solution:
Romove parse info of kimage_voffset when ramdump
drv is built-in.
Verify:
sc2
Change-Id: I36b533bd06e56ca66b87850d01c0b0ad57c3a73c
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
PD#SWPL-179304
Problem:
Single-frame Bandwidth Sampling
Solution:
Chips before s6 use the DMC method to get the bandwidth
value of a single frame, chips after s6 use the decoder
internal method to get the bandwidth value of a single frame.
Verify:
s6.s7
Change-Id: I135d98a0087733c5df34c7e8f9be39f8f2c96741
Signed-off-by: xing.xu <xing.xu@amlogic.com>
PD#SWPL-188348
Problem:
ker6.12 souce code is old. And ramdump
is not working properly.
Solution:
1. sync ramdump.c from ker5.15.
2. enable CONFIG_AMLOGIC_RAMDUMP
3. modify TEXTOFFSET=0X0200800 for ker 32bit
Verify:
SC2_AH212
Change-Id: Id19ba0ef1302e9cf4cdf379d10c625519a8eef36
Signed-off-by: dongqing.li <dongqing.li@amlogic.com>
PD#SWPL-188508
Problem:
aml_smmu can not find the symbol.
Solution:
update the symbol
Verify:
sc2.
Change-Id: Ia4f3a29e0275ac0a053d8ee5f42e86f3396796c9
Signed-off-by: Jianxiong Pan <jianxiong.pan@amlogic.com>
PD#SWPL-188184
Problem:
upgrade kernel from 6.11 to 6.12
Solution:
AML_KERNEL_VERSION 3
UPSTREAM_VERSION "5a81cc3248a2"
AML_PATCH_VERSION "5a81cc3248a2"
MERGE_DATE "2024-10-09"
1. modify build script
2. port auto patch and move common-mainline to common16-6.12
3. modify the code due to the change of
the remove output_poll_changed in struct drm_mode_config_funcs
4. modify the code due to the change of the remove GPIOF_DIR_OUT
5. modify the code due to the change of the remove no_llseek
6. modify the code due to the change of the struct fd
7. modify the code due to the change of the struct mem_cgroup_reclaim_iter
8. modify the code due to the change of the file unaligned.h
Verify:
local
Test:
bootup to console in fatload mode
Change-Id: I98629ea9e68fca121176682d31dc73b8a8c936f8
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>
PD#SWPL-183292
Problem:
upgrade kernel from 6.6.10 to 6.6.11
Solution:
1. modify auto patches
2. modify the code due to the change of
the remove function in struct platform_driver
3. modify the code due to the change of
the match function in struct bus_type
4. modify some page function to folio function
5. modify spi module due to some functions changed
Verify:
local
Change-Id: I92c266b6a1bbae363abd0ff50d7f3037e90bc624
Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com>