Commit Graph

1281334 Commits

Author SHA1 Message Date
Finley Xiao
3a35a943a2 soc: rockchip: opp_select: Fix memleak in rockchip_opp_set_config()
Change-Id: I93224fd07ccf594a12a6365fa6c81519a8f24a1e
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>
2025-04-22 09:37:20 +00:00
Zefa Chen
958266bd13 media: rockchip: vicap fixes yuv input order error of dvp for rk3576
Change-Id: I1dd0603a3c4d134adbb9fd4f9a04d019af38c0d0
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
2025-04-22 08:13:11 +00:00
Xu Hongfei
e855636bd4 media: rockchip: fec: Fix incorrect buffer size configuration
Signed-off-by: Xu Hongfei <xuhf@rock-chips.com>
Change-Id: Id32343f59b34606ca8c1719d11d77a25f9a97c2a
2025-04-22 06:25:38 +00:00
Simon Xue
ab08ebea9b mm: defer init highmem page when CONFIG_ROCKCHIP_THUNDER_BOOT_DEFER_FREE_MEMBLOCK=y
Change-Id: I41527559ee66786826da7c3c9763804b91226bcf
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2025-04-22 14:17:05 +08:00
Simon Xue
218bc80469 init: use pageblock to free highmem instead of page when CONFIG_ROCKCHIP_THUNDER_BOOT_DEFER_FREE_MEMBLOCK=y
Change-Id: Ia75a9fc0701a24053cf8312d3bd508976f8b2592
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2025-04-22 14:14:21 +08:00
Wei Dun
8d0b59bbc0 media: rockchip: vpss: fix RKVPSS_VPSS_ONLINE value error in offline mode
Signed-off-by: Wei Dun <willam.wei@rock-chips.com>
Change-Id: I2331e6cb67d739cd6d9e32917d1c19b3a3a60031
2025-04-22 03:42:43 +00:00
Liang Chen
e3844dd49e arm64: dts: rockchip: rv1126b: set thermal-zone for system-monitor
Change-Id: I909060a00f9e0b7a28ecfdf1579a9e7e22d15b85
Signed-off-by: Liang Chen <cl@rock-chips.com>
2025-04-21 10:53:18 +00:00
Simon Xue
19fcf77273 arm64: mm: update fixup_fault.S for kernel 6.1
Change-Id: I95b322cd86bd31536a725f442758e0b8eb3f4f22
Signed-off-by: Simon Xue <xxm@rock-chips.com>
2025-04-21 10:51:47 +00:00
Ziyuan Xu
638a6357bf media: i2c: ps5458: correct chip id information
Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Change-Id: I4940172f9269bdb1579c9b041dd8bf5af0d63fdc
2025-04-21 15:49:37 +08:00
Chen Shunqing
9042f7a974 media: i2c: rk628: fix i2c error when hdmirx reset
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: Ia8f2a890433fd10f3fee4346e8d8a645385c5acf
2025-04-21 14:17:51 +08:00
Tao Huang
610a9bdb86 ARM: configs: rv1126b-fastboot: Enable CONFIG_INITCALL_ASYNC
Change-Id: Ic1ea791aa47c589e8fb33a33f99250c2af2e247c
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
04a2236d00 net: bpfilter: Call bpfilter_sockopt_init() early when CONFIG_INITCALL_ASYNC=y
load_umh() depends on bpfilter_sockopt_init() to init bpfilter_ops.
But load_umh() and bpfilter_sockopt_init() are both in the same
module_init/device_initcall level.

Fix this by moving bpfilter_sockopt_init() to the rootfs_initcall level.

Change-Id: I454872cc8036cffa92d135cbdb2c50ad9bb52e77
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
018a3d4acb inet_diag: Call inet_diag_init() early when CONFIG_INITCALL_ASYNC=y
dccp_diag_init() depends on inet_diag_init() to init inet_diag_table.
But dccp_diag_init() and inet_diag_init() are both in the same
module_init level.

Fix this by moving inet_diag_init() to the rootfs_initcall level.

Change-Id: Ie06bd549622c6f82b34486fc4faaba6c3e4dbba8
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
267447fac4 net: loopback: Call blackhole_netdev_init() early when CONFIG_INITCALL_ASYNC=y
inet6_init() depends on blackhole_netdev_init() to init blackhole_netdev.
But inet6_init() and blackhole_netdev_init() are both in the same
module_init level.

Fix this by moving blackhole_netdev_init() to the fs_initcall level.

Change-Id: Ie2313d29ac00b533b22b50fadfda78a541b9e88b
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
5d98ec57bf ipv6: Call inet6_init() early when CONFIG_INITCALL_ASYNC=y
l2tp_ip6_init() depends on inet6_init() to init inetsw6.
But l2tp_ip6_init() and inet6_init() are both in the same
module_init level.

Fix this by moving inet6_init() to the rootfs_initcall level.

Change-Id: I71cd6831b1b162d8325988b4e674c4e467c40f68
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
81d1cc82ea netfilter: nf_conntrack: Call nf_conntrack_standalone_init() early when CONFIG_INITCALL_ASYNC=y
nf_nat_amanda_init() depends on nf_conntrack_standalone_init() to init nf_ct_nat_helpers.
But nf_nat_amanda_init() and nf_conntrack_standalone_init() are both in the same
module_init level.

Fix this by moving nf_conntrack_standalone_init() to the rootfs_initcall level.

Change-Id: I2b5a9994f83581cdd819e19abe6cabc7b1d7b3af
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
a0f44c9df3 netfilter: x_tables: Call xt_init() early when CONFIG_INITCALL_ASYNC=y
classify_tg_init() depends on xt_init() to init xt.
But classify_tg_init() and xt_init() are both in the same
module_init level.

Fix this by moving xt_init() to the rootfs_initcall level.

Change-Id: If9aaae57704e064b719731efa3112d4e652f0069
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
6ddf51f36d backlight: pwm_bl: Call pwm_backlight_driver_init() early when CONFIG_INITCALL_ASYNC=y
panel_simple_init() depends on pwm_backlight_driver_init().
But panel_simple_init() and pwm_backlight_driver_init() are both in the same
module_init level.

Fix this by moving pwm_backlight_driver_init() to the fs_initcall level.

Change-Id: I344330f658c0fb92a5f6f73499fc24bbef1651d2
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
5baffd6cac phy/rockchip: inno-dsidphy: Call inno_dsidphy_driver_init() early when CONFIG_INITCALL_ASYNC=y
Moving inno_dsidphy_driver_init() to the fs_initcall level.
Before rockchip_drm_init().

Change-Id: I09aa277f2af80107aa00b8da69ff919be02d2452
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
0bd7439722 ASoC: rockchip: multicodecs: Call rockchip_multicodecs_driver_init() later when CONFIG_INITCALL_ASYNC=y
rockchip_multicodecs_driver_init() depends on rockchip_sai_driver_init().
But rockchip_multicodecs_driver_init() and rockchip_sai_driver_init() are both in the same
module_init level.

Fix this by moving rockchip_multicodecs_driver_init() to the late_initcall level.

Change-Id: I6b6958264ee6d380116421fc2985710b8b3f1fa8
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
0c00b3269e drm/drv: Call drm_core_init() early when CONFIG_INITCALL_ASYNC=y
rockchip_drm_init() depends on drm_core_init() to init DRM core.
But rockchip_drm_init() and drm_core_init() are both in the same
module_init level.

Fix this by moving drm_core_init() to the subsys_initcall level.

Change-Id: I872aefaad12f10569cf957ce4e9cac873522a234
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
8c62e5fa38 nvmem: core: Call nvmem_init() early when CONFIG_INITCALL_ASYNC=y
rockchip_otp_init() depends on nvmem_init() to init nvmem_bus_type.
But rockchip_otp_init() and nvmem_init() are both in the same
subsys_initcall level.

Fix this by moving nvmem_init() to the arch_initcall_sync level.

Change-Id: If591d89572d77adbec06fe2cc2af23b1a4b239fd
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
13cc56a3ec phy: rockchip: naneng-combphy: Call rockchip_combphy_driver_init() early when CONFIG_INITCALL_ASYNC=y
dwc3_driver_init() depends on rockchip_combphy_driver_init() to init usb3phy.
But dwc3_driver_init() and rockchip_combphy_driver_init() are both in the same
module_init level.

Fix this by moving rockchip_combphy_driver_init() to the fs_initcall level.

Change-Id: I4e36da029f326f2a31d96db4175769b406bd0230
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
1858941e9c phy: rockchip: inno-usb2: Call rockchip_usb2phy_driver_init() early when CONFIG_INITCALL_ASYNC=y
ehci_platform_init()/ohci_platform_init() depends on rockchip_usb2phy_driver_init() to init usb2phy.
But ehci_platform_init()/ohci_platform_init() and rockchip_usb2phy_driver_init() are both in the same
module_init level.

Fix this by moving rockchip_usb2phy_driver_init() to the fs_initcall level.

Change-Id: Ie3994da5d25b646f8cc0974bb023979acdad60af
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
b683085198 iommu: Call iommu_subsys_init() early when CONFIG_INITCALL_ASYNC=y
rk_iommu_init() depends on iommu_subsys_init().
But rk_iommu_init() and iommu_subsys_init() are both in the same
subsys_initcall level.

Fix this by moving iommu_subsys_init() to the postcore_initcall_sync level.

Change-Id: Ie7a7ecf7ffa7c3876b745de657b65b84e65ff8c9
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
26e7a91897 serial: 8250: Call serial8250_init() early when CONFIG_INITCALL_ASYNC=y
dw8250_platform_driver_init() depends on serial8250_init().
But dw8250_platform_driver_init() and serial8250_init() are both in the same
module_init level.

Fix this by moving serial8250_init() to the rootfs_initcall level.

Change-Id: I337da18ef25121ccb1f9351fd213abb7d83f82d1
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
4b58c0898d HID: core: Call hid_init() early when CONFIG_INITCALL_ASYNC=y
hid_generic_init() depends on hid_init() to init hid_bus_type.
But hid_generic_init() and hid_init() are both in the same
module_init level.

Fix this by moving hid_init() to the rootfs_initcall level.

Change-Id: I070f92c405d898ae9f929bff968a6bd26811085a
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
66275080a4 PM / OPP: Call opp_debug_init() later when CONFIG_INITCALL_ASYNC=y
opp_debug_init() depends on debugfs_init() to register debugfs filesystem.
But opp_debug_init() and debugfs_init() are both in the same
core_initcall level.

Fix this by moving opp_debug_init() to the core_initcall_sync level.

Change-Id: I4e6fa71e424bd1733d2c9aab4893f0f4af1e8099
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
bf9dd729dc regulator: core: Call regulator_init() later when CONFIG_INITCALL_ASYNC=y
regulator_init() depends on debugfs_init() to register debugfs filesystem.
But regulator_init() and debugfs_init() are both in the same
core_initcall level.

Fix this by moving regulator_init() to the core_initcall_sync level.

Change-Id: I302079e585f374a7fddd207e6fd740b61b0df52c
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
b6512873ea pinctrl: core: Call pinctrl_init() later when CONFIG_INITCALL_ASYNC=y
pinctrl_init() depends on debugfs_init() to register debugfs filesystem.
But pinctrl_init() and debugfs_init() are both in the same
core_initcall level.

Fix this by moving pinctrl_init() to the core_initcall_sync level.

Change-Id: I3b0741b8d32c6b05c7b15e20da6c410d26245745
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
199e598fa8 phy: core: Call phy_core_init() early when CONFIG_INITCALL_ASYNC=y
ohci_platform_init()/ehci_platform_init depends on phy_core_init() to init phy_class.
But ohci_platform_init()/ehci_platform_init and phy_core_init() are both in the same
device_initcall/module_init level.

Fix this by moving phy_core_init() to the subsys_initcall level.

Change-Id: I0bbe2e1a02001e2ba97c9dc8be96d651984784ef
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
14b1dd2738 char: misc: Call misc_init() early when CONFIG_INITCALL_ASYNC=y
rfkill_init() depends on misc_init() to init misc_class.
But rfkill_init() and misc_init() are both in the same
subsys_initcall level.

Fix this by move misc_init() to the arch_initcall_sync level.

Change-Id: I7266c2787c04a42886816b0ef11f3ed968ebf557
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
1b259eab60 ARM: alignment: Call alignment_init() later when CONFIG_INITCALL_ASYNC=y
alignment_init() create proc file "cpu/alignment" at the fs_initcall
level. While "cpu" dir is created on proc_cpu_init() at the same
initcall level too.

Fix this by move alignment_init() to the fs_initcall_sync level.

Change-Id: I8a8831f103b6729f57a8a70ff1bf5672fdf98810
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
341c626474 kernel/params.c: Call param_sysfs_init() early when CONFIG_INITCALL_ASYNC=y
usb_init() depends on param_sysfs_init() to init module_kset.
But usb_init() and param_sysfs_init() are both in the same
subsys_initcall level.

Fix this by move param_sysfs_init() to the arch_initcall_sync level.

Change-Id: Iccc44152c716959d98ed97ea379e0fc4378e185d
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
69fc4dcdb9 net: socket: Call sock_init() early when CONFIG_INITCALL_ASYNC=y
netlink_proto_init() depends on sock_init() to init sock_mnt.
But netlink_proto_init() and sock_init() are both in the same
core_initcall level.

Fix this by moving sock_init() to the pure_initcall level.

Change-Id: I201d52a23f17e895ee9e961514f9a6b42f96cd40
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
5eb9313c16 genetlink: Call genl_init() later when CONFIG_INITCALL_ASYNC=y
genl_init() depends on netlink_proto_init() to init nl_table.
But genl_init() and netlink_proto_init() are both in the same
core_initcall level.

Fix this by moving genl_init() to the core_initcall_sync level,
which is earlier than thermal_init().

Change-Id: Id4c85ea069c6ce3ebcb632856b695018bcc1e981
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
a7f5880658 kernel/ksysfs.c: Call ksysfs_init() early when CONFIG_INITCALL_ASYNC=y
configfs_init()/debugfs_init() depends on ksysfs_init() to init kernel_kobj.
But configfs_init()/debugfs_init() and ksysfs_init() are both in the same
core_initcall level.

Fix this by move ksysfs_init() to the pure_initcall level.

Change-Id: Iaa23a25a59b3a133f3cecb396fc69dd7e65d45ad
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
688b53c7af pwm: Call pwm_sysfs_init() early when CONFIG_INITCALL_ASYNC=y
rockchip_pwm_driver_init() -> rockchip_pwm_probe() -> devm_pwmchip_add()
-> pwmchip_add() -> pwmchip_sysfs_export()
pwmchip_sysfs_export() depends on pwm_sysfs_init() to init pwm_class.
But rockchip_pwm_driver_init() and pwm_sysfs_init() are both in the same
subsys_initcall level.

Fix this by move pwm_sysfs_init() to the postcore_initcall level.

Change-Id: If865768904be463732a5d2cb9f6ee2e9b333c0b3
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
081aacf209 dmaengine: rockchip-dma: Call rk_pdma_driver_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Moving rk_pdma_driver_init() to the arch_initcall_sync level.
Before rk3x_i2c_driver_init() etc.

Change-Id: Iafcb84b1537453ffb295bb7722d4455e75657e9c
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
439b8b9cc8 drm/panel: simple: Call panel_simple_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Moving panel_simple_init() to the rootfs_initcall level.
Before rockchip_drm_init().

Change-Id: If74f0888e0120189b58c8eb96485eb3c9ada7e4f
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
0ec605a383 iommu/rockchip: Call rk_iommu_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Moving rk_iommu_init() to the subsys_initcall level.
Before rga_init() etc.

Change-Id: I050b96eb93f1fcb0fe12e12cbf95eb778678f44c
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
a22a2f016f regulator: pwm: Call pwm_regulator_driver_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Regulator init on subsys_initcall_sync level.

Change-Id: I477e8282dfb4582ac29f1b789a286c5d5ed7c60c
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
936063c332 iio: adc: rockchip_saradc: Call rockchip_saradc_driver_init() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Moving rockchip_saradc_driver_init() to the fs_initcall level.
Before adc_keys_driver_init().

Change-Id: I63ec4bd84ba1c9bd63359b2efc9559949d6311c7
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Tao Huang
9b4428f7b6 clocksource: Call clocksource_done_booting() early when CONFIG_ROCKCHIP_THUNDER_BOOT=y
Make sure subsys initcall fast.

Change-Id: Ib197b79477afaa6af6b35aeefab53137ee9f6749
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
2025-04-21 02:19:49 +00:00
Yu Qiaowei
d4a3012c24 video: rockchip: rga3: remove dependency on CONFIG_IOMMU_IOVA
Since 'CONFIG_IOMMU_IOVA' is often disabled on 32-bit systems, causing
iommu_map API calls to fail, the DMA mapping API is used instead.

Change-Id: I7226ddf6a04e0af4c6b1b029bb5a32ede04c0810
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2025-04-18 09:11:27 +00:00
Sach Lin
b6558f3a76 media: rockchip: avsp: add support for fbce head offset
Signed-off-by: Sach Lin <sach.lin@rock-chips.com>
Change-Id: Ic72bd2cc5e23af9cac2ee46884da9e0c3b0ea317
2025-04-18 07:49:13 +00:00
Xu Hongfei
4719bd6e80 media: rockchip: fec: add module parameter user_debug
Signed-off-by: Xu Hongfei <xuhf@rock-chips.com>
Change-Id: I1bd315aff2ee527241a29afff557e23531cbc440
2025-04-18 07:39:44 +00:00
Zhang Yubing
6609d45ac5 drm/rockchip: dw-dp: mst mode don't allow external bridge create connector
In mst mode, dptx driver will dynamic create and destroy
connector according to the attach mst device. If a external
bridge is add for dp in mst mode, this bridge is not allow
to create connector.

Change-Id: I811baf5116e4c2cd1d12b04ead2054abcccbdffd
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
2025-04-18 06:56:14 +00:00
Zhang Yubing
97932bdf73 drm/rockchip: dp_aux_client: parse timing by child node name
The child node may be not parsed by the order config in dts,
it would be better get child node by name to avoid mismatch.

Change-Id: Ibce47f44720f279eb53f063a351d3b859a371fd8
Signed-off-by: Zhang Yubing <yubing.zhang@rock-chips.com>
2025-04-18 14:41:47 +08:00
Su Yuefu
96aab710fb arm64: dts: rockchip: rv1126b-evb2-v10: fixes error of cam reset pin of sc850sl
Signed-off-by: Su Yuefu <yuefu.su@rock-chips.com>
Change-Id: I908e8b1e30b49b2058b0cd00d5075e631be8f0ae
2025-04-18 06:05:21 +00:00