Commit Graph

1087029 Commits

Author SHA1 Message Date
Luo Wei
e4e3454d08 arm64: dts: rockchip: rk3588-vehicle-evb: set 40ms delay for display
Signed-off-by: Luo Wei <lw@rock-chips.com>
Change-Id: Id0961505a8b4ce9e3aa4ada0223bd9ec5eecf44a
2024-01-19 19:57:52 +08:00
Luo Wei
46adc2c927 mfd: display-serdes: rohm gpio0 support 1MHZ used for pwm
Signed-off-by: Luo Wei <lw@rock-chips.com>
Change-Id: I358b2f9c51ecbdc0c913a1123818a2e22a1e4078
2024-01-19 19:57:36 +08:00
Luo Wei
4d84c1dabe mfd: display-serdes: change default pinctrl to init
Signed-off-by: Luo Wei <lw@rock-chips.com>
Change-Id: I28261b1c785f89859c7c4758a57dcffdba223036
2024-01-19 19:57:36 +08:00
Algea Cao
e3f7d79af1 media: i2c: rk628: Compatible with both kernel-5.10 and kernel-6.1
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I44d2e7e78c0b340daff88d98833ba72a24156a69
2024-01-19 10:11:22 +08:00
Shunhua Lan
bd0e0fedb6 media: i2c: rk628: fix audio fs in large offset
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I902243808166273f5b606ca62aa8d7cb3e61c980
2024-01-19 10:11:22 +08:00
Jianwei Fan
ed06aa310c media: i2c: rk628: check for overflow when i2c operation
Change-Id: Ia99a7149be4e79589b89345d3f538c64cea5550b
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
24193e127e media: i2c: rk628: add register debugfs node
This patch adds support for register debugfs nodes to allow access to
the registers without modifying the regmap subsystem configuration.

for example:

read rk628 csi registers:
        cat /d/rk628/3-0050/registers/csi

write rk628 csi register:
        echo addr val > /d/rk628/3-0050/registers/csi

Change-Id: I1bb4b4acff939718eca43fc24c25cf673726cb4c
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Chen Shunqing
4bbec20710 media: i2c: rk628: Auto derepeat
Change-Id: I1265250b5cbb6d46eac47b787754a9788064e4d1
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:21 +08:00
Chen Shunqing
ee96162939 media: i2c: rk628: allows the PHY to lock to a low control period
Change-Id: I5031bfa06bbada16a8d27252f72666f2d80951d7
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
a09738071d media: i2c: rk628: update driver for dsi mode
Change-Id: I895e49a64f5164d3665db6d7d7562a5f579ef725
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Chen Shunqing
a671b1e8c8 media: i2c: rk628: fix hdmi1.4 change format not recognized
Change-Id: I347f641584aed18e525e114c7b86ab5c41612887
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:21 +08:00
Chen Shunqing
cd5cc57055 media: i2c: rk628: fix i2c timeout
Change-Id: I21643e939b4b6566b23d72395eaaf74854199e9f
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:21 +08:00
Chen Shunqing
1f2cf41703 media: i2c: rk628: fix display error
1. fix black screen when plugout/plugin.
2. fix abnormal display when resolution change.

Change-Id: Iecc06805fa1d4f7abbc5d496200ad411185eecd7
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
1619991c86 media: i2c: rk628: fix combtxphy mipi lp-tx output slew-rate
Change-Id: Ic5373f70af47ac8edc5192275bf7669508181f79
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
d88d306316 media: i2c: rk628: set default timing when driver probe
Change-Id: I0f92974fef4a970ae21d24fa685e0f4a94f9e6e4
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Shunhua Lan
0c3c6c21e8 media: i2c: rk628: add support for rk628f hdmirx audio
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I27ca13d2f875be6c1498a3b913b1f358f05bf0e9
2024-01-19 10:11:21 +08:00
Shunhua Lan
a0befaf85d media: i2c: rk628: cru: add hdmirx aud apll support
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I48096a61485b856f09eed0fa53976e0536625515
2024-01-19 10:11:21 +08:00
Shunhua Lan
d8bbd5d31a media: i2c: rk628: add apll regmap_range
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: If0b990e76198bceb691d2c5e58263b3fb22f2c5b
2024-01-19 10:11:21 +08:00
Shunhua Lan
a980c4c57c media: i2c: rk628: cru: Add rk628f APLL
Change-Id: I109a9662d5a12dba5da3d5c3f4b97e2ede6058de
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
08ffa240c1 media: i2c: rk628: read raw state must delay some time when clear interrupt
Change-Id: Ieccfd9135edf3a94d1b74d8c3492984c1b30d6e3
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
ff0626fcc2 media: i2c: rk628: move some function to rk628_mipi_dphy.c
Change-Id: I01a826edaf8c766f616a997d7c83f2009d10adac
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
47faf865bc media: i2c: rk628: add csc matrix support
Change-Id: If48350f4e9555852785bb2188ab29ae3c0b99961
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
8468446c8a media: i2c: rk628: add csi1 support and dual mipi mode for rk628f
Change-Id: I64907270bcc85ece125f61a6991cfd9d949fe58d
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:21 +08:00
Jianwei Fan
4ef6752418 media: i2c: rk628: bt1120: fix g_mbus_config for dual edge
Change-Id: I7c1d264d4f93157d9881bd55119e48bebca4463b
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:20 +08:00
Jianwei Fan
94ab144534 media: i2c: rk628: fix r2y_csc_mode when RGB color format input
Change-Id: I63ab2e27ef17dc0d4af4446da4e6ec50fba8624b
Signed-off-by: Jianwei Fan <jianwei.fan@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
08be2e3816 media: i2c: rk628: optimized get resolution probability abnormal
Change-Id: I99433dc24d993a6ceae8fbc1472cb39d43a72ad1
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
2ef107a7a5 media: i2c: rk628: set background when no signal
Change-Id: Id7832b2287a4c6eb1747e5ff7dd103d41c762821
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
749fe7836d media: i2c: rk628: bt1120: compatible with rk628f
Change-Id: Ia7064e107a326d79bb40381cba3b1dfed31a72c1
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
6e006e21ca media: i2c: rk628: csi: compatible with rk628f
Change-Id: I94b7bcf6e2bc5487b34f09961f2294f939ca302c
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
b96278ea87 media: i2c: rk628: hdmirx: compatible with rk628f
Change-Id: I82c1159ed5307c9bad695fdc8e66dfa1724768e3
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:20 +08:00
Chen Shunqing
60857b5b0e media: i2c: rk628: add version parse func
Change-Id: I079bcf7a95d38d1e902543fbc522e75a7695db72
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2024-01-19 10:11:20 +08:00
Guochun Huang
e22969020a arm64: configs: rockchip_defconfig: enable CONFIG_RK628_MISC
1.enable the rk628 misc driver use on rk3568-evb-rk628
2.disable the rk628 drm driver

Change-Id: I0fbeb1e56915cf25a0db460c76378a5ccf628518
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2024-01-19 10:11:20 +08:00
Algea Cao
266aa947bf misc: rk628: Compatible with both kernel-5.10 and kernel-6.1
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ib170fb0b1a03a211564c88aaad62aa6adf2dd1b1
2024-01-19 10:11:20 +08:00
Zhibin Huang
2daa256567 misc: rk628: rgb/bt1120: optimize dts parsing rgb/bt1120 properties
1. change the "bt1120_dual_edge" property from macro definition to
parsing in dts
2. "bt1120_dual_edge" and "vccio_rgb" are unique to rk628 rgb, so put
them in the rk628_rgb structure.
3. dts property related to rk628 rgb are parsed in rk628_rgb_parse
function, including those related to rgb in/out and bt1120 in/out.

Type: Fix
Redmine ID: N/A
Associated modifications: N/A
Test: N/A

Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: I1bd7edb9dd28a13cd298142e067e851ef98f83c5
2024-01-19 10:11:20 +08:00
Guochun Huang
fe62e532d4 misc: rk628: fix display anormal after resume form suspend
rk628->fb_nb.notifier_call helper will be called multi times in
Multi-display suspend/resume scenario, process fb_event with
FB_BLANK_UNBLANK/FB_BLANK_POWERDOWN only once.

Type: Fix
Redmine ID: #462145
Associated modifications: gerrit links
Test: pass

Change-Id: Id323a392b28892c8440c813571a7808bb6e860ed
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2024-01-19 10:11:20 +08:00
Zhibin Huang
57be89d348 misc: rk628: dsi: fix bug in dsi signal optimization settings
Type: Fix
Redmine ID: N/A
Associated modifications: N/A
Test: pass

Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: Icc494d1c4c345ca01c9636ad8a2b47e0d9351972
2024-01-19 10:11:20 +08:00
Zhibin Huang
e39eb26f17 misc: rk628: rgb/bt1120: optimize signal
Type: Fix
Redmine ID: N/A
Associated modifications: N/A
Test: pass

Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: Ib3fdaf00bc666535a68ccb424dc09619d4319360
2024-01-19 10:11:20 +08:00
Zhibin Huang
efcb534a24 misc: rk628: fix rk628 summary
Type: Fix
Redmine ID: N/A
Associated modifications: N/A
Test: cat /d/rk628/2-0050/summary

Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: Ifdd75679d65a4b6887b1f9909ae194125f2cbf1a
2024-01-19 10:11:20 +08:00
Chaoyi Chen
7fa3e04a00 misc: rk628: lvds: Add support for media bus format dt-bindings
In previous versions, the bus-format of lvds could be set with prop
"vesa_24", "jeida_24", etc.

In order to maintain consistency with the panel node, this patch adds
support to for set bus-format via the `MEDIA_FORMAT` number macro.

rk628-lvds {
	/* Equivalent to
		bus-format = "vesa_24";
	*/
	bus-format = <MEDIA_BUS_FMT_RGB888_1X7X4_SPWG>;
};

Change-Id: I3a8e51c58cfb52ff6b03917d9b33e96fa419bea1
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2024-01-19 10:11:20 +08:00
Sandy Huang
331fc6de1e misc: rk628: gvi: enable panel/backlight after gvi locked
This can avoid display splash screen before gvi locked.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: Id32d637cd4af8c33f9629abd7c788db6b7e13df9
2024-01-19 10:11:20 +08:00
Chen Shunqing
cf1aff5f72 misc: rk628: hdmitx: set hdmitx sync polarity
Change-Id: Ife56c57ff98bc76c41fa1b4a4d6f9375be8bf527
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
2024-01-19 10:11:19 +08:00
Shunhua Lan
41bb51d59e misc: rk628: cru: compatible with rk628d hdmirx audio clock from gpll
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: Ie6e3a10d43c7f26600d3fecda8bd26aa5fddacc1
2024-01-19 10:11:19 +08:00
Guochun Huang
8531dbdb73 misc: rk628: cancel delayed_work_audio in hdmirx suspend
Change-Id: I03593dba070f0167e3412e6e80ac7abe2a8e2240
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2024-01-19 10:11:19 +08:00
Chaoyi Chen
f6920cb1ef misc: rk628: add register debugfs node
This patch adds support for register debugfs nodes to allow access to
the registers without modifying the regmap subsystem configuration.

An example output is as follows:

$ ls /d/rk628/2-0050/registers
adapter    combtxphy  csi   dsi1   gpio0  gpio2  grf  hdmi
combrxphy  cru        dsi0  efuse  gpio1  gpio3  gvi  hdmirx

dump register:
$ cat cru

write to register:
$ echo addr val > cru

Additionally, incorrect GVI regmap_range was fixed.
Because `GVI_COLOR_BAR_VTIMING1` is already defined as `GVI_BASE + 0x7C`

Change-Id: I3f19d02b5119958fe2dafd04dff5efcc4d28d6d0
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
2024-01-19 10:11:19 +08:00
Zhibin Huang
c1973e4a06 misc: rk628: dsi: optimize HS signal
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: I66b395fac4da5469ac88430d9063a1c9c2d90dec
2024-01-19 10:11:19 +08:00
Guochun Huang
1677e33dc9 misc: rk628: reduce power consumption optimization
Change-Id: Iacc7e206d5b05b2c0ae2bd33ecb70d991739db95
Signed-off-by: Guochun Huang <hero.huang@rock-chips.com>
2024-01-19 10:11:19 +08:00
Sandy Huang
7b983b2ecf misc: rk628: gvi: check gvi state when enable
Try to disable and enable GVI and TX phy when GVI lock failed.

Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I190ed60884850946091185c89e54a7bb551eb03d
2024-01-19 10:11:19 +08:00
Algea Cao
8676e40d7f misc: rk628: post_process: Support csc matrix
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Icaef18f17bf35c4aff99489a0479f520bbc89a9b
2024-01-19 10:11:19 +08:00
Zhibin Huang
aafe1548f1 misc: rk628: fix the problem of finding child nodes
Signed-off-by: Zhibin Huang <zhibin.huang@rock-chips.com>
Change-Id: Ic7f58324415b0db7bc3953d09fddb8b3bcc95e99
2024-01-19 10:11:19 +08:00
Algea Cao
278b6977e2 misc: rk628: post_process: Fix scaler timing calcalculation error
Assume that Fout is the output pixel clock frequency
and Fin is the input pixel clock frequency:

dsp_in_vtotal * dsp_in_htotal * (1 / Fin) = dsp_out_vtotal * dsp_out_htotal * (1 / Fout)

Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: I77055cdf47f49de5ae7b5eb94b257e07171dd347
2024-01-19 10:11:19 +08:00