Skip to content

Commit 6dfafbd

Browse files
committed
Merge tag 'drm-next-2025-12-03' of https://gitlab.freedesktop.org/drm/kernel
Pull drm updates from Dave Airlie: "There was a rather late merge of a new color pipeline feature, that some userspace projects are blocked on, and has seen a lot of work in amdgpu. This should have seen some time in -next. There is additional support for this for Intel, that if it arrives in the next day or two I'll pass it on in another pull request and you can decide if you want to take it. Highlights: - Arm Ethos NPU accelerator driver - new DRM color pipeline support - amdgpu will now run discrete SI/CIK cards instead of radeon, which enables vulkan support in userspace - msm gets gen8 gpu support - initial Xe3P support in xe Full detail summary: New driver: - Arm Ethos-U65/U85 accel driver Core: - support the drm color pipeline in vkms/amdgfx - add support for drm colorop pipeline - add COLOR PIPELINE plane property - add DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE - throttle dirty worker with vblank - use drm_for_each_bridge_in_chain_scoped in drm's bridge code - Ensure drm_client_modeset tests are enabled in UML - add simulated vblank interrupt - use in drivers - dumb buffer sizing helper - move freeing of drm client memory to driver - crtc sharpness strength property - stop using system_wq in scheduler/drivers - support emergency restore in drm-client Rust: - make slice::as_flattened usable on all supported rustc - add FromBytes::from_bytes_prefix() method - remove redundant device ptr from Rust GEM object - Change how AlwaysRefCounted is implemented for GEM objects gpuvm: - Add deferred vm_bo cleanup to GPUVM (for rust) atomic: - cleanup and improve state handling interfaces buddy: - optimize block management dma-buf: - heaps: Create heap per CMA reserved location - improve userspace documentation dp: - add POST_LT_ADJ_REQ training sequence - DPCD dSC quirk for synaptics panamera devices - helpers to query branch DSC max throughput ttm: - Rename ttm_bo_put to ttm_bo_fini - allow page protection flags on risc-v - rework pipelined eviction fence handling amdgpu: - enable amdgpu by default for SI/CI dGPUs - enable DC by default on SI - refactor CIK/SI enablement - add ABM KMS property - Re-enable DM idle optimizations - DC Analog encoders support - Powerplay fixes for fiji/iceland - Enable DC on bonaire by default - HMM cleanup - Add new RAS framework - DML2.1 updates - YCbCr420 fixes - DC FP fixes - DMUB fixes - LTTPR fixes - DTBCLK fixes - DMU cursor offload handling - Userq validation improvements - Unify shutdown callback handling - Suspend improvements - Power limit code cleanup - SR-IOV fixes - AUX backlight fixes - DCN 3.5 fixes - HDMI compliance fixes - DCN 4.0.1 cursor updates - DCN interrupt fix - DC KMS full update improvements - Add additional HDCP traces - DCN 3.2 fixes - DP MST fixes - Add support for new SR-IOV mailbox interface - UQ reset support - HDP flush rework - VCE1 support amdkfd: - HMM cleanups - Relax checks on save area overallocations - Fix GPU mappings after prefetch radeon: - refactor CIK/SI enablement xe: - Initial Xe3P support - panic support on VRAM for display - fix stolen size check - Loosen used tracking restriction - New SR-IOV debugfs structure and debugfs updates - Hide the GPU madvise flag behind a VM_BIND flag - Always expose VRAM provisioning data on discrete GPUs - Allow VRAM mappings for userptr when used with SVM - Allow pinning of p2p dma-buf - Use per-tile debugfs where appropriate - Add documentation for Execution Queues - PF improvements - VF migration recovery redesign work - User / Kernel VRAM partitioning - Update Tile-based messages - Allow configfs to disable specific GT types - VF provisioning and migration improvements - use SVM range helpers in PT layer - Initial CRI support - access VF registers using dedicated MMIO view - limit number of jobs per exec queue - add sriov_admin sysfs tree - more crescent island specific support - debugfs residency counter - SRIOV migration work - runtime registers for GFX 35 i915: - add initial Xe3p_LPD display version 35 support - Enable LNL+ content adaptive sharpness filter - Use optimized VRR guardband - Enable Xe3p LT PHY - enable FBC support for Xe3p_LPD display - add display 30.02 firmware support - refactor SKL+ watermark latency setup - refactor fbdev handling - call i915/xe runtime PM via function pointers - refactor i915/xe stolen memory/display interfaces - use display version instead of gfx version in display code - extend i915_display_info with Type-C port details - lots of display cleanups/refactorings - set O_LARGEFILE in __create_shmem - skuip guc communication warning on reset - fix time conversions - defeature DRRS on LNL+ - refactor intel_frontbuffer split between i915/xe/display - convert inteL_rom interfaces to struct drm_device - unify display register polling interfaces - aovid lock inversion when pinning to GGTT on CHV/BXT+VTD panel: - Add KD116N3730A08/A12, chromebook mt8189 - JT101TM023, LQ079L1SX01, - GLD070WX3-SL01 MIPI DSI - Samsung LTL106AL0, Samsung LTL106AL01 - Raystar RFF500F-AWH-DNN - Winstar WF70A8SYJHLNGA - Wanchanglong w552946aaa - Samsung SOFEF00 - Lenovo X13s panel - ilitek-ili9881c - add rpi 5" support - visionx-rm69299 - add backlight support - edp - support AUI B116XAN02.0 bridge: - improve ref counting - ti-sn65dsi86 - add support for DP mode with HPD - synopsis: support CEC, init timer with correct freq - ASL CS5263 DP-to-HDMI bridge support nova-core: - introduce bitfield! macro - introduce safe integer converters - GSP inits to fully booted state on Ampere - Use more future-proof register for GPU identification nova-drm: - select NOVA_CORE - 64-bit only nouveau: - improve reclocking on tegra 186+ - add large page and compression support msm: - GPU: - Gen8 support: A840 (Kaanapali) and X2-85 (Glymur) - A612 support - MDSS: - Added support for Glymur and QCS8300 platforms - DPU: - Enabled Quad-Pipe support, unlocking higher resolutions support - Added support for Glymur platform - Documented DPU on QCS8300 platform as supported - DisplayPort: - Added support for Glymur platform - Added support lame remapping inside DP block - Documented DisplayPort controller on QCS8300 and SM6150/QCS615 as supported tegra: - NVJPG driver panfrost: - display JM contexts over debugfs - export JM contexts to userspace - improve error and job handling panthor: - support custom ASN_HASH for mt8196 - support mali-G1 GPU - flush shmem write before mapping buffers uncached - make timeout per-queue instead of per-job mediatek: - MT8195/88 HDMIv2/DDCv2 support rockchip: - dsi: add support for RK3368 amdxdna: - enhance runtime PM - last hardware error reading uapi - support firmware debug output - add resource and telemetry data uapi - preemption support imx: - add driver for HDMI TX Parallel audio interface ivpu: - add support for user-managed preemption buffer - add userptr support - update JSM firware API to 3.33.0 - add better alloc/free warnings - fix page fault in unbind all bos - rework bind/unbind of imported buffers - enable MCA ECC signalling - split fw runtime and global memory buffers - add fdinfo memory statistics tidss: - convert to drm logging - logging cleanup ast: - refactor generation init paths - add per chip generation detect_tx_chip - set quirks for each chip model atmel-hlcdc: - set LCDC_ATTRE register in plane disable - set correct values for plane scaler solomon: - use drm helper for get_modes and move_valid sitronix: - fix output position when clearing screens qaic: - support dma-buf exports - support new firmware's READ_DATA implementation - sahara AIC200 image table update - add sysfs support - add coredump support - add uevents support - PM support sun4i: - layer refactors to decouple plane from output - improve DE33 support vc4: - switch to generic CEC helpers komeda: - use drm_ logging functions vkms: - configfs support for display configuration vgem: - fix fence timer deadlock etnaviv: - add HWDB entry for GC8000 Nano Ultra VIP r6205" * tag 'drm-next-2025-12-03' of https://gitlab.freedesktop.org/drm/kernel: (1869 commits) Revert "drm/amd: Skip power ungate during suspend for VPE" drm/amdgpu: use common defines for HUB faults drm/amdgpu/gmc12: add amdgpu_vm_handle_fault() handling drm/amdgpu/gmc11: add amdgpu_vm_handle_fault() handling drm/amdgpu: use static ids for ACP platform devs drm/amdgpu/sdma6: Update SDMA 6.0.3 FW version to include UMQ protected-fence fix drm/amdgpu: Forward VMID reservation errors drm/amdgpu/gmc8: Delegate VM faults to soft IRQ handler ring drm/amdgpu/gmc7: Delegate VM faults to soft IRQ handler ring drm/amdgpu/gmc6: Delegate VM faults to soft IRQ handler ring drm/amdgpu/gmc6: Cache VM fault info drm/amdgpu/gmc6: Don't print MC client as it's unknown drm/amdgpu/cz_ih: Enable soft IRQ handler ring drm/amdgpu/tonga_ih: Enable soft IRQ handler ring drm/amdgpu/iceland_ih: Enable soft IRQ handler ring drm/amdgpu/cik_ih: Enable soft IRQ handler ring drm/amdgpu/si_ih: Enable soft IRQ handler ring drm/amd/display: fix typo in display_mode_core_structs.h drm/amd/display: fix Smart Power OLED not working after S4 drm/amd/display: Move RGB-type check for audio sync to DCE HW sequence ...
2 parents 94e244d + 0692602 commit 6dfafbd

1,799 files changed

Lines changed: 94407 additions & 21674 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.clang-format

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ ForEachMacros:
167167
- 'drm_connector_for_each_possible_encoder'
168168
- 'drm_exec_for_each_locked_object'
169169
- 'drm_exec_for_each_locked_object_reverse'
170-
- 'drm_for_each_bridge_in_chain'
170+
- 'drm_for_each_bridge_in_chain_scoped'
171171
- 'drm_for_each_connector_iter'
172172
- 'drm_for_each_crtc'
173173
- 'drm_for_each_crtc_reverse'

.mailmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,7 @@ Carlos Bilbao <carlos.bilbao@kernel.org> <bilbao@vt.edu>
174174
Changbin Du <changbin.du@intel.com> <changbin.du@gmail.com>
175175
Chao Yu <chao@kernel.org> <chao2.yu@samsung.com>
176176
Chao Yu <chao@kernel.org> <yuchao0@huawei.com>
177+
Chen-Yu Tsai <wens@kernel.org> <wens@csie.org>
177178
Chester Lin <chester62515@gmail.com> <clin@suse.com>
178179
Chris Chiu <chris.chiu@canonical.com> <chiu@endlessm.com>
179180
Chris Chiu <chris.chiu@canonical.com> <chiu@endlessos.org>
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
What: /sys/bus/pci/drivers/qaic/XXXX:XX:XX.X/accel/accel<minor_nr>/dbc<N>_state
2+
Date: October 2025
3+
KernelVersion: 6.19
4+
Contact: Jeff Hugo <jeff.hugo@oss.qualcomm.com>
5+
Description: Represents the current state of DMA Bridge channel (DBC). Below are the possible
6+
states:
7+
8+
=================== ==========================================================
9+
IDLE (0) DBC is free and can be activated
10+
ASSIGNED (1) DBC is activated and a workload is running on device
11+
BEFORE_SHUTDOWN (2) Sub-system associated with this workload has crashed and
12+
it will shutdown soon
13+
AFTER_SHUTDOWN (3) Sub-system associated with this workload has crashed and
14+
it has shutdown
15+
BEFORE_POWER_UP (4) Sub-system associated with this workload is shutdown and
16+
it will be powered up soon
17+
AFTER_POWER_UP (5) Sub-system associated with this workload is now powered up
18+
=================== ==========================================================
19+
Users: Any userspace application or clients interested in DBC state.
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/
2+
Date: October 2025
3+
KernelVersion: 6.19
4+
Contact: intel-xe@lists.freedesktop.org
5+
Description:
6+
This directory appears for the particular Intel Xe device when:
7+
8+
- device supports SR-IOV, and
9+
- device is a Physical Function (PF), and
10+
- driver support for the SR-IOV PF is enabled on given device.
11+
12+
This directory is used as a root for all attributes required to
13+
manage both Physical Function (PF) and Virtual Functions (VFs).
14+
15+
16+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/pf/
17+
Date: October 2025
18+
KernelVersion: 6.19
19+
Contact: intel-xe@lists.freedesktop.org
20+
Description:
21+
This directory holds attributes related to the SR-IOV Physical
22+
Function (PF).
23+
24+
25+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf1/
26+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf2/
27+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<N>/
28+
Date: October 2025
29+
KernelVersion: 6.19
30+
Contact: intel-xe@lists.freedesktop.org
31+
Description:
32+
These directories hold attributes related to the SR-IOV Virtual
33+
Functions (VFs).
34+
35+
Note that the VF number <N> is 1-based as described in PCI SR-IOV
36+
specification as the Xe driver follows that naming schema.
37+
38+
There could be "vf1", "vf2" and so on, up to "vf<N>", where <N>
39+
matches the value of the "sriov_totalvfs" attribute.
40+
41+
42+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/pf/profile/exec_quantum_ms
43+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/pf/profile/preempt_timeout_us
44+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/pf/profile/sched_priority
45+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/profile/exec_quantum_ms
46+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/profile/preempt_timeout_us
47+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/profile/sched_priority
48+
Date: October 2025
49+
KernelVersion: 6.19
50+
Contact: intel-xe@lists.freedesktop.org
51+
Description:
52+
These files expose scheduling parameters for the PF and its VFs, and
53+
are visible only on Intel Xe platforms that use time-sliced GPU sharing.
54+
They can be changed even if VFs are enabled and running and reflect the
55+
settings of all tiles/GTs assigned to the given function.
56+
57+
exec_quantum_ms: (RW) unsigned integer
58+
The GT execution quantum (EQ) in [ms] for the given function.
59+
Actual quantum value might be aligned per HW/FW requirements.
60+
61+
Default is 0 (unlimited).
62+
63+
preempt_timeout_us: (RW) unsigned integer
64+
The GT preemption timeout in [us] of the given function.
65+
Actual timeout value might be aligned per HW/FW requirements.
66+
67+
Default is 0 (unlimited).
68+
69+
sched_priority: (RW/RO) string
70+
The GT scheduling priority of the given function.
71+
72+
"low" - function will be scheduled on the GPU for its EQ/PT
73+
only if function has any work already submitted.
74+
75+
"normal" - functions will be scheduled on the GPU for its EQ/PT
76+
irrespective of whether it has submitted a work or not.
77+
78+
"high" - function will be scheduled on the GPU for its EQ/PT
79+
in the next time-slice after the current one completes
80+
and function has a work submitted.
81+
82+
Default is "low".
83+
84+
When read, this file will display the current and available
85+
scheduling priorities. The currently active priority level will
86+
be enclosed in square brackets, like:
87+
88+
[low] normal high
89+
90+
This file can be read-only if changing the priority is not
91+
supported.
92+
93+
Writes to these attributes may fail with errors like:
94+
-EINVAL if provided input is malformed or not recognized,
95+
-EPERM if change is not applicable on given HW/FW,
96+
-EIO if FW refuses to change the provisioning.
97+
98+
Reads from these attributes may fail with:
99+
-EUCLEAN if value is not consistent across all tiles/GTs.
100+
101+
102+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/.bulk_profile/exec_quantum_ms
103+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/.bulk_profile/preempt_timeout_us
104+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/.bulk_profile/sched_priority
105+
Date: October 2025
106+
KernelVersion: 6.19
107+
Contact: intel-xe@lists.freedesktop.org
108+
Description:
109+
These files allows bulk reconfiguration of the scheduling parameters
110+
of the PF or VFs and are available only for Intel Xe platforms with
111+
GPU sharing based on the time-slice basis. These scheduling parameters
112+
can be changed even if VFs are enabled and running.
113+
114+
exec_quantum_ms: (WO) unsigned integer
115+
The GT execution quantum (EQ) in [ms] to be applied to all functions.
116+
See sriov_admin/{pf,vf<N>}/profile/exec_quantum_ms for more details.
117+
118+
preempt_timeout_us: (WO) unsigned integer
119+
The GT preemption timeout (PT) in [us] to be applied to all functions.
120+
See sriov_admin/{pf,vf<N>}/profile/preempt_timeout_us for more details.
121+
122+
sched_priority: (RW/RO) string
123+
The GT scheduling priority to be applied for all functions.
124+
See sriov_admin/{pf,vf<N>}/profile/sched_priority for more details.
125+
126+
Writes to these attributes may fail with errors like:
127+
-EINVAL if provided input is malformed or not recognized,
128+
-EPERM if change is not applicable on given HW/FW,
129+
-EIO if FW refuses to change the provisioning.
130+
131+
132+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/stop
133+
Date: October 2025
134+
KernelVersion: 6.19
135+
Contact: intel-xe@lists.freedesktop.org
136+
Description:
137+
This file allows to control scheduling of the VF on the Intel Xe GPU
138+
platforms. It allows to implement custom policy mechanism in case VFs
139+
are misbehaving or triggering adverse events above defined thresholds.
140+
141+
stop: (WO) bool
142+
All GT executions of given function shall be immediately stopped.
143+
To allow scheduling this VF again, the VF FLR must be triggered.
144+
145+
Writes to this attribute may fail with errors like:
146+
-EINVAL if provided input is malformed or not recognized,
147+
-EPERM if change is not applicable on given HW/FW,
148+
-EIO if FW refuses to change the scheduling.
149+
150+
151+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/pf/device
152+
What: /sys/bus/pci/drivers/xe/.../sriov_admin/vf<n>/device
153+
Date: October 2025
154+
KernelVersion: 6.19
155+
Contact: intel-xe@lists.freedesktop.org
156+
Description:
157+
These are symlinks to the underlying PCI device entry representing
158+
given Xe SR-IOV function. For the PF, this link is always present.
159+
For VFs, this link is present only for currently enabled VFs.

Documentation/accel/qaic/aic100.rst

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -487,15 +487,36 @@ one user crashes, the fallout of that should be limited to that workload and not
487487
impact other workloads. SSR accomplishes this.
488488

489489
If a particular workload crashes, QSM notifies the host via the QAIC_SSR MHI
490-
channel. This notification identifies the workload by it's assigned DBC. A
491-
multi-stage recovery process is then used to cleanup both sides, and get the
490+
channel. This notification identifies the workload by its assigned DBC. A
491+
multi-stage recovery process is then used to cleanup both sides, and gets the
492492
DBC/NSPs into a working state.
493493

494494
When SSR occurs, any state in the workload is lost. Any inputs that were in
495495
process, or queued by not yet serviced, are lost. The loaded artifacts will
496496
remain in on-card DDR, but the host will need to re-activate the workload if
497497
it desires to recover the workload.
498498

499+
When SSR occurs for a specific NSP, the assigned DBC goes through the
500+
following state transactions in order:
501+
502+
DBC_STATE_BEFORE_SHUTDOWN
503+
Indicates that the affected NSP was found in an unrecoverable error
504+
condition.
505+
DBC_STATE_AFTER_SHUTDOWN
506+
Indicates that the NSP is under reset.
507+
DBC_STATE_BEFORE_POWER_UP
508+
Indicates that the NSP's debug information has been collected, and is
509+
ready to be collected by the host (if desired). At that stage the NSP
510+
is restarted by QSM.
511+
DBC_STATE_AFTER_POWER_UP
512+
Indicates that the NSP has been restarted, fully operational and is
513+
in idle state.
514+
515+
SSR also has an optional crashdump collection feature. If enabled, the host can
516+
collect the memory dump for the crashed NSP and dump it to the user space via
517+
the dev_coredump subsystem. The host can also decline the crashdump collection
518+
request from the device.
519+
499520
Reliability, Accessibility, Serviceability (RAS)
500521
================================================
501522

Documentation/accel/qaic/qaic.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ polling mode and reenables the IRQ line.
3636
This mitigation in QAIC is very effective. The same lprnet usecase that
3737
generates 100k IRQs per second (per /proc/interrupts) is reduced to roughly 64
3838
IRQs over 5 minutes while keeping the host system stable, and having the same
39-
workload throughput performance (within run to run noise variation).
39+
workload throughput performance (within run-to-run noise variation).
4040

4141
Single MSI Mode
4242
---------------
@@ -49,7 +49,7 @@ useful to be able to fall back to a single MSI when needed.
4949
To support this fallback, we allow the case where only one MSI is able to be
5050
allocated, and share that one MSI between MHI and the DBCs. The device detects
5151
when only one MSI has been configured and directs the interrupts for the DBCs
52-
to the interrupt normally used for MHI. Unfortunately this means that the
52+
to the interrupt normally used for MHI. Unfortunately, this means that the
5353
interrupt handlers for every DBC and MHI wake up for every interrupt that
5454
arrives; however, the DBC threaded irq handlers only are started when work to be
5555
done is detected (MHI will always start its threaded handler).
@@ -62,9 +62,9 @@ never disabled, allowing each new entry to the FIFO to trigger a new interrupt.
6262
Neural Network Control (NNC) Protocol
6363
=====================================
6464

65-
The implementation of NNC is split between the KMD (QAIC) and UMD. In general
65+
The implementation of NNC is split between the KMD (QAIC) and UMD. In general,
6666
QAIC understands how to encode/decode NNC wire protocol, and elements of the
67-
protocol which require kernel space knowledge to process (for example, mapping
67+
protocol which requires kernel space knowledge to process (for example, mapping
6868
host memory to device IOVAs). QAIC understands the structure of a message, and
6969
all of the transactions. QAIC does not understand commands (the payload of a
7070
passthrough transaction).

Documentation/devicetree/bindings/display/bridge/fsl,imx8mp-hdmi-tx.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ properties:
4949
$ref: /schemas/graph.yaml#/properties/port
5050
description: HDMI output port
5151

52+
port@2:
53+
$ref: /schemas/graph.yaml#/properties/port
54+
description: Parallel audio input port
55+
5256
required:
5357
- port@0
5458
- port@1
@@ -98,5 +102,13 @@ examples:
98102
remote-endpoint = <&hdmi0_con>;
99103
};
100104
};
105+
106+
port@2 {
107+
reg = <2>;
108+
109+
endpoint {
110+
remote-endpoint = <&pai_to_hdmi_tx>;
111+
};
112+
};
101113
};
102114
};

Documentation/devicetree/bindings/display/bridge/ite,it66121.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ properties:
1919
compatible:
2020
enum:
2121
- ite,it66121
22+
- ite,it66122
2223
- ite,it6610
2324

2425
reg:

Documentation/devicetree/bindings/display/bridge/renesas,dsi-csi2-tx.yaml

Lines changed: 52 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ description: |
1414
R-Car Gen4 SoCs. The encoder can operate in either DSI or CSI-2 mode, with up
1515
to four data lanes.
1616
17+
allOf:
18+
- $ref: /schemas/display/dsi-controller.yaml#
19+
1720
properties:
1821
compatible:
1922
enum:
@@ -80,14 +83,14 @@ required:
8083
- resets
8184
- ports
8285

83-
additionalProperties: false
86+
unevaluatedProperties: false
8487

8588
examples:
8689
- |
8790
#include <dt-bindings/clock/r8a779a0-cpg-mssr.h>
8891
#include <dt-bindings/power/r8a779a0-sysc.h>
8992
90-
dsi0: dsi-encoder@fed80000 {
93+
dsi@fed80000 {
9194
compatible = "renesas,r8a779a0-dsi-csi2-tx";
9295
reg = <0xfed80000 0x10000>;
9396
power-domains = <&sysc R8A779A0_PD_ALWAYS_ON>;
@@ -117,4 +120,51 @@ examples:
117120
};
118121
};
119122
};
123+
124+
- |
125+
#include <dt-bindings/clock/r8a779g0-cpg-mssr.h>
126+
#include <dt-bindings/power/r8a779g0-sysc.h>
127+
128+
dsi@fed80000 {
129+
#address-cells = <1>;
130+
#size-cells = <0>;
131+
compatible = "renesas,r8a779g0-dsi-csi2-tx";
132+
reg = <0xfed80000 0x10000>;
133+
clocks = <&cpg CPG_MOD 415>,
134+
<&cpg CPG_CORE R8A779G0_CLK_DSIEXT>,
135+
<&cpg CPG_CORE R8A779G0_CLK_DSIREF>;
136+
clock-names = "fck", "dsi", "pll";
137+
power-domains = <&sysc R8A779G0_PD_ALWAYS_ON>;
138+
resets = <&cpg 415>;
139+
140+
ports {
141+
#address-cells = <1>;
142+
#size-cells = <0>;
143+
144+
port@0 {
145+
reg = <0>;
146+
};
147+
148+
port@1 {
149+
reg = <1>;
150+
151+
dsi0port1_out: endpoint {
152+
remote-endpoint = <&panel_in>;
153+
data-lanes = <1 2>;
154+
};
155+
};
156+
};
157+
158+
panel@0 {
159+
reg = <0>;
160+
compatible = "raspberrypi,dsi-7inch", "ilitek,ili9881c";
161+
power-supply = <&vcc_lcd_reg>;
162+
163+
port {
164+
panel_in: endpoint {
165+
remote-endpoint = <&dsi0port1_out>;
166+
};
167+
};
168+
};
169+
};
120170
...

Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ properties:
2727
- const: adi,adv7123
2828
- enum:
2929
- adi,adv7123
30+
- asl-tek,cs5263
3031
- dumb-vga-dac
32+
- parade,ps185hdm
3133
- radxa,ra620
3234
- realtek,rtd2171
3335
- ti,opa362

0 commit comments

Comments
 (0)