Commit Graph

1080578 Commits

Author SHA1 Message Date
Xing Zheng
83d56e1a33 ASoC: codecs: rv1106_codec: add support DAC control manually
There are three status via control name "DAC Control Manually":
 - None: By default, mute/unmute via rv1106_mute_stream() automatically
 - Off: Force DAC control off manually
 - On: Force DAC control on manually

And fixes incorrect DAC mute register, it should be ACODEC_DAC_ANA_CTL1.

Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: I9d7059b86654802eb4290897765d94f4b9afd787
2023-09-18 17:34:56 +08:00
Sugar Zhang
5b607cc523 arm64: configs: rockchip: Enable SND_SOC_ROCKCHIP_MULTI_DAIS
This patch enable SND_SOC_ROCKCHIP_MULTI_DAIS for combine multiple
dais into a union one.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ib1787a9df01a97185668cededcd41cd1192e0f4e
2023-09-18 17:29:30 +08:00
Sugar Zhang
00226b650e arm64: configs: rockchip_linux: Enable SND_SOC_ROCKCHIP_MULTI_DAIS
This patch enable SND_SOC_ROCKCHIP_MULTI_DAIS for combine multiple
dais into a union one.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I8cbec8001fe50b48261eb5c75a9191f7e05fa7fa
2023-09-18 17:29:30 +08:00
Sugar Zhang
9e5a460a99 arm64: dts: rockchip: rk3562: Add property 'sound-name-prefix' for SAIx
This patch add name-prefix for SAIx to support prefix kcontrol, widget
and route names in an ASoC machine that has multiple dais with
conflicting names. such as multi-dais.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I51cd4eeaa9adc36a3606c39c8a4269d085ba2932
2023-09-18 17:29:30 +08:00
Sugar Zhang
bac64251b4 ASoC: rockchip: multi-dais: Introduce module option prealloc_buffer_size_kbytes
Currently, The fixed 512KB prealloc buffer size is too larger for
tiny memory kernel (such as 16MB memory). This patch adds the module
option "prealloc_buffer_size_kbytes" to specify prealloc buffer size.

It's suitable for cards which use the multi-dais driver.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I9bee728dfd775c2f5924d4e1416088446918c2e4
2023-09-18 17:29:30 +08:00
Sugar Zhang
62614fd022 ASoC: rockchip: multi-dais: Add support for more capabilities
* support samplerate up to 384k
* support channel range from mono to 512ch

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I4a7d85ea77cabbb1ce6e9f1fc237d83443ab13b1
2023-09-18 17:29:30 +08:00
Sugar Zhang
e92cb0063f ASoC: rockchip: multi-dais: Add support controls for sub dais
This patch add controls for all sub-dai component to allow
user set/get each dai's controls.

if no name_prefix specified in driver, user should confirm that
the dai node of DT has assigned the property 'sound-name-prefix'.

e.g. SAI0 + SAI1 combo

&sai0 {
	sound-name-prefix = "SAI0";
};

&sai1 {
	sound-name-prefix = "SAI1";
};

amixer scontrols
...
Simple mixer control 'SAI0 SDI0 Loopback',0
Simple mixer control 'SAI0 SDI0 Loopback Src Select',0
Simple mixer control 'SAI1 SDI0 Loopback',0
Simple mixer control 'SAI1 SDI0 Loopback Src Select',0

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I9c3c56fe21e71afb26ad103f947b3dbfe1ccff11
2023-09-18 17:29:30 +08:00
Sugar Zhang
480426852e ASoC: rockchip: multi_dais_pcm: Fix warning
debugfs: Directory 'multi-dais' with parent already present!

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I1aeee5332c79f78c5436c4bb7c57d3d692ef9b75
2023-09-18 17:29:30 +08:00
Sugar Zhang
4cf62acda4 ASoC: rockchip: sai: Introduce SND_SOC_ROCKCHIP_SAI_VERBOSE
This patch add verbose config for sai, and put expert-level
or not-commonly-used controls into there.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ibe637ad00c058e01164c227c8549f0938920dff2
2023-09-18 17:29:30 +08:00
Sugar Zhang
c4d222f150 ASoC: rockchip: sai: Add support for more capabilities
* support samplerate up to 384k
* support channel range from mono to 512ch

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I190990c18166dc5cd316bd0f2c5b0d9e9452c631
2023-09-18 17:29:30 +08:00
Sugar Zhang
bca24656b6 ASoC: rockchip: sai: Allow mclk shift around 1 Hz
This patch allow mclk shift around +/- 1 Hz compared to
requested freq.

we could not always achieve the precise freq as required,
e.g. request: 98304000, but got: 98303999

there is no big deal and any side effect on the above case,
so, we allow a tiny shift for mclk.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Id181a3aa9017b1994786b71c3b56454a2e78b6aa
2023-09-18 17:29:30 +08:00
Sugar Zhang
c4afd40f7f dmaengine: pl330: Add support for mcbufsz parsed from DT
This patch introduce property 'arm,pl330-mcbufsz-bytes' to
support assign mcbufsz from DT.

And we limit the max value to one PAGE_SIZE. though there
is no limit for the controller.

e.g.

  arm,pl330-mcbufsz-bytes = <2048>;

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: Ia13c35e58cd6addcc7a80cb05b484184f6031989
2023-09-18 17:29:30 +08:00
Liang Chen
7a07ac5cd2 irqchip/gic-v3-its: add GFP_DMA32 flag for memory allocated for ITS in rk3567
Change-Id: I4c7ef759cff823c311615e3aa067fcb900c03353
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-18 15:16:46 +08:00
Cai Wenzhong
6c5208b3ef arm64: dts: rockchip: rk3588-vehicle-maxim-cameras-s66: Enable maxim4c driver
1. max96712@0x29: AVM Camera x 4
1.1 i2c bus = 2, csi2_dphy0_hw = full mode (csi2_dphy0)
1.2 max96715 GSML1 LVDS Camera, 1280*800, 30fps
1.3 gpios: pwdn = gpio1_c4, lock = gpio1_c6, errb = gpio1_d2

2. max96722@0x6b: DMS Camera x1 + OMS Camera x1
2.1 i2c bus = 2, csi2_dphy1_hw = full mode (csi2_dphy3)
2.2 max9295a GMSL2 DVP Camera, 1600*1300, 30fps
2.3 gpios: pwdn = gpio1_c7, lock = gpio1_d5, errb = gpio1_b1

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: I1cdf9eb53b695be102e63c6fb329525d8e03c242
2023-09-15 18:52:47 +08:00
Cai Wenzhong
5001f9dba8 arm64: dts: rockchip: rk3588-vehicle-evb-v21: Enable maxim4c driver
Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: I99751f247e6eaec27e6ebe5985a7042dc2121d69
2023-09-15 18:47:47 +08:00
Cai Wenzhong
7231af1561 arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96712-dcphy1.dtsi
1. rk3588 evb: i2c bus = 2, mipi_dcphy1 (csi2_dcphy1)
2. mipi_dcphy1 gpios: pwdn = gpio4_d1, lock = gpio4_d3, errb = gpio4_d2
3. mipi_dcphy1 maxim serdes remote camera poc_en gpio: gpio3_a7
4. serializer: max9295, sensor: 1600 * 1300 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: Ib268ad9cc83849bad5bae6126079ce543c71b7bc
2023-09-15 18:44:46 +08:00
Cai Wenzhong
8e453803c2 arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96712-dcphy0.dtsi
1. rk3588 evb: i2c bus = 8, mipi_dcphy0 (csi2_dcphy0)
2. mipi_dcphy0 gpios: pwdn = gpio4_a4, lock = gpio4_a2, errb = gpio4_a5
3. mipi_dcphy0 maxim serdes remote camera poc_en gpio: gpio3_a6
4. serializer: max96715, sensor: 1280 * 800 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: Ib23ebda25a44dc52a9b5954196e3d3b21f2f46f6
2023-09-15 18:43:34 +08:00
Cai Wenzhong
8eb0cbaf50 arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96722-dphy3.dtsi
1. rk3588 evb: i2c bus = 6, csi2_dphy1_hw = full mode (csi2_dphy3)
2. dphy1_hw gpios: pwdn = gpio4_a6, lock = gpio3_b4, errb = gpio0_c2
3. dphy1_hw maxim serdes remote camera poc_en gpio: gpio3_b1
4. serializer: max9295, sensor: 1600 * 1300 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: I1b37629e20d0a8407e2f0411b01f791fe436b15e
2023-09-15 18:35:47 +08:00
Cai Wenzhong
8b8c355566 arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96722-dphy0.dtsi
1. rk3588 evb: i2c bus = 7, csi2_dphy0_hw = full mode (csi2_dphy0)
2. dphy0_hw gpios: pwdn = gpio1_b2, lock = gpio3_b7, errb = gpio3_d1
3. dphy0_hw maxim serdes remote camera poc_en gpio: gpio3_b0
4. serializer: max96715, sensor: 1280 * 800 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: Iea14cb3a46192d8d361d8e0b1276e4b0408f041c
2023-09-15 18:35:25 +08:00
Cai Wenzhong
6194928145 arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96712-dphy0.dtsi
1. rk3588 evb: i2c bus = 7, csi2_dphy0_hw = full mode (csi2_dphy0)
2. dphy0_hw gpios: pwdn = gpio1_b2, lock = gpio3_b7, errb = gpio3_d1
3. dphy0_hw maxim serdes remote camera poc_en gpio: gpio3_b0
4. serializer: max96715, sensor: 1280 * 800 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: Idfe33a58ee812980054304e789496d1b64916059
2023-09-15 18:35:01 +08:00
Cai Wenzhong
c3e9ad5bbc arm64: dts: rockchip: add rk3588-vehicle-evb-maxim-max96712-dphy3.dtsi
1. rk3588 evb: i2c bus = 6, csi2_dphy1_hw = full mode (csi2_dphy3)
2. dphy1_hw gpios: pwdn = gpio4_a6, lock = gpio3_b4, errb = gpio0_c2
3. dphy1_hw maxim serdes remote camera poc_en gpio: gpio3_b1
4. serializer: max96717, sensor: 1920 * 1440 30fps

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: I1702d91783789a5754af9c411149c470b061232b
2023-09-15 18:34:25 +08:00
Cai Wenzhong
49d91f5a0f media: i2c: maxim4c: driver version v2.01.00
1. remote device and local link are bound through link id
2. support local and remote port chain check
3. drivers/media/i2c/maxim4c/Kconfig support menu select
4. optimize delay time and error messages
5. power control: local by pwdn gpio, remote by pocen gpio
6. local pwdn on/off enable depend on MAXIM4C_LOCAL_DES_ON_OFF_EN

Signed-off-by: Cai Wenzhong <cwz@rock-chips.com>
Change-Id: Ife74e6251b09628e8413aa810c995e7a71449f1d
2023-09-15 18:32:57 +08:00
Wangqiang Guo
ca9f8fb207 media: rockchip: hdmirx: enhance compatibility and stability.
1.Add the judgment of signal loss when use g_dv_timing.
2.Wait for the signal to stabilize before get resolution.

Change-Id: I4cef1bd8a67f38dd531d24ccbb23d960bb82abae
Signed-off-by: Wangqiang Guo <kay.guo@rock-chips.com>
2023-09-14 12:20:33 +00:00
Chaoyi Chen
9a72b81321 arm64: dts: rockchip: add rk3567 evb2 dual lvds devicetree
Add support for dual lvds with hdmi output

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I6e3c07be15886ebf1daf9b22b72659c21a21f0dd
2023-09-14 19:16:20 +08:00
Chaoyi Chen
b521fcc24c arm64: dts: rockchip: add rk3567 evb2 dual channel lvds devicetree
Add support for dual channel lvds with hdmi output

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I782edeaf7ad9bb057d3911453d039fbacc14ee13
2023-09-14 19:16:20 +08:00
Chaoyi Chen
e2fee1b431 arm64: dts: rockchip: add dual lvds support for rk3567/rk3568
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: Iec5a26477bcc482969e25908c5667a5ee80a37dc
2023-09-14 19:16:20 +08:00
Chaoyi Chen
e86a496684 drm/rockchip: lvds: add dual lvds left right mode support
The lvds two channel can work independent, each lvds channel can
connector a single channel lvds panel, so add left and right pixels mode
support.

Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I7fde54880d97269123688a3246a6db7005ddf254
2023-09-14 19:13:00 +08:00
Chaoyi Chen
ce438ac73d drm/rockchip: lvds: add support lvds1 for rk3567
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: I788e9d755d95d986fda1c8ddbb8914912a5404a7
2023-09-14 19:12:46 +08:00
Chaoyi Chen
09f9141073 drm/rockchip: vop2: update for dual lvds
Signed-off-by: Chaoyi Chen <chaoyi.chen@rock-chips.com>
Change-Id: Icec9c9c4fac5c014561dc26be72e62bb88a2f249
2023-09-14 19:12:28 +08:00
Sandy Huang
2e409456c1 drm/rockchip: add dynamic debug for vop
Signed-off-by: Sandy Huang <hjc@rock-chips.com>
Change-Id: I50858d1c6d1e344ab2e7fbc85e5474a130f6fc6f
2023-09-14 19:08:58 +08:00
Zefa Chen
adf004e7c8 media: rockchip: vicap fixes issue of hdr raw capture
Signed-off-by: Zefa Chen <zefa.chen@rock-chips.com>
Change-Id: Icdd4cf79ea8c239df3d3e45b1572a4d59f4f7950
2023-09-14 19:03:23 +08:00
Lin Jinhan
46a5b521e8 media: i2c: sc1346: fix fps error
vts_def should be 0x02ee instead of 0x0708.

Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Change-Id: Ie9d7af19d3e24b03f46e8dae3828ab7ae585c208
2023-09-14 15:26:29 +08:00
Lin Jianhua
dfb70de74a ARM: configs: add rk3308-aarch32-ia.config for intelligent home appliances in RK3308 soc
Change-Id: I7f2dd58dfbced8fecd848feabfb83ac2a395723d
Signed-off-by: Lin Jianhua <linjh@rock-chips.com>
2023-09-14 15:01:19 +08:00
Liang Chen
0e92799361 arm64: dts: rockchip: add RK3567 evaluation board devicetree
Change-Id: Ic72b187bf502d860fbcd7d8ce541d17d69efd210
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-14 14:43:31 +08:00
Liang Chen
67b1dc75df Revert "arm64: dts: rockchip: rk3568-evb: add can nodes"
This reverts commit b4f60fb98b.

Change-Id: I03e7683e8dd949f474e248ec1cac8cd60d58d37f
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-14 14:42:38 +08:00
Liang Chen
59adf53367 arm64: dts: rockchip: add core dtsi for RK3567 Soc
Change-Id: I8af6a967f6c38abdeb6ae26280423fc594d08b3b
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-14 14:31:59 +08:00
Liang Chen
cdb78165b4 cpufreq: dt-platdev: Add rk3567 project into blacklist
Change-Id: If131de3b46ab70d45cbf6b1031f3d05072c6d157
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-14 14:21:30 +08:00
Liang Chen
a6393efbeb soc: rockchip: cpuinfo: Add support for rk3567
Change-Id: I8db6a404e0c784cb797c4e5a7849ae73089726af
Signed-off-by: Liang Chen <cl@rock-chips.com>
2023-09-14 14:20:32 +08:00
Yu Qiaowei
ce094aa86b video: rockchip: rga3: changing to close acquire_fence_fd in user-space
Since GKI disables closing fd in the kernel, the acquire fence fd should be
closed in user-space.

Update driver version to 1.3.0

Change-Id: I9bf85d6a39b3564332fc00dc9fce01678dc1ce3b
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
9e5cbd33fc video: rockchip: rga3: add check_csc
Change-Id: I178d07038e233b9cf8943f57660e61bf7e64bcd2
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
4beff868e2 video: rockchip: rga3: add full_csc clip config
Change-Id: I197b68977ab7be01837967b2b85596e897cd4d99
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
de4171ded6 video: rockchip: rga3: add full_csc enable
Change-Id: Ie0374d89676ef828bd1980fc9524f58cba2bfd15
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
7291693b01 video: rockchip: rga3: compatible with legacy global alpha config
Change-Id: I8dcccad5638f1fa7f16dcd9945562596cae047bc
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
9550ca04e8 video: rockchip: rga3: replace magic numbers with enum
Change-Id: I3b46be2e17e07e165bb0ef4c7603038defefea88
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Yu Qiaowei
9312cd2335 video: rockchip: rga3: support fg/bg global alpha
Change-Id: I64d2446d494e179e9e2024c14bc768c2ed0dca47
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
2023-09-13 18:16:22 +08:00
Luo Wei
563845b474 mfd: display-serdes: add serdes display driver support base on mfd arch
* i2c register initialization with dts sequence from serdes chip vendor.
* pinctrl and gpio interface to operate the different serdes chips.
* bridge interface to transmit data for different ser chips.
* panel interface to drive lcds for different des chips.
* one ser chip to connect two des chips in order to costdown.
* support different serdes display chip such as maxim, rohm and rockchip.

Signed-off-by: Luo Wei <lw@rock-chips.com>
Change-Id: Ic8f3558b8ea8ee3d5297bdf2551308e82925304a
2023-09-13 15:19:23 +08:00
Jianwei Zheng
22d153d2eb phy: rockchip-inno-usb2: fix USB OTG not working in HOST mode for RK3328
On current code, We check the iddig status to make sure that the id
status is indeed in low level, and then send HOST notification and
power on phy based on this state. But On some Rockchip platforms like
RK3328, the ID Detector pin is not cited, the default state of ID pin
is floating, so the iddig status is always 1 which means in device mode.

To resolve this problem, We need to further check whether usb2phy_reg
structure of utmi_iddig has been initialized or not. If not, We can't
use the iddig status as a judgment condition.

Signed-off-by: Jianwei Zheng <jianwei.zheng@rock-chips.com>
Change-Id: Ia16365d79015b81fa8aff2fd7a1c61256b38aa3d
2023-09-12 17:24:35 +08:00
Algea Cao
1e49b6a722 arm64: dts: rockchip: rk3528: Remove ddc gpio control during hotplug
The ddc control is designed to be compatible with the leakage
problem of a Konka TV. However, in actual use, it will lead
to the phenomenon of abnormally low hpd in many TVS.

Fixes: 836989af54a6 ("arm64: dts: rockchip: rk3528: Add hdmi ddc io idle state")
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ia5c3fe53a702d5b209d5170d0aceb5a559d40e39
2023-09-12 15:08:13 +08:00
Shunhua Lan
75810f87c9 media: i2c: it6616: create hdmirx_class devices
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I9e2cf3c8330504124931f79d111bfa3fb54462db
2023-09-12 14:32:10 +08:00
Shunhua Lan
6e85806bc9 media: i2c: lt6911uxc: create hdmirx_class devices
Signed-off-by: Shunhua Lan <lsh@rock-chips.com>
Change-Id: I61c840d812b88554aa154bfc7c1435e1345d287e
2023-09-12 14:32:10 +08:00