linux/drivers/gpu/drm
Kory Maincent (TI.com) ca062af436 drm/tilcdc: Add support for DRM bus flags and simplify panel config
Migrate CRTC mode configuration to use standard DRM bus flags in
preparation for removing the tilcdc_panel driver and its custom
tilcdc_panel_info structure.

Add support for DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE and
DRM_BUS_FLAG_SYNC_DRIVE_NEGEDGE flags to control pixel clock and sync
signal edge polarity, while maintaining backward compatibility with the
existing tilcdc panel info structure.

Simplify several hardware parameters by setting them to fixed defaults
based on common usage across existing device trees:
- DMA burst size: 16 (previously configurable via switch statement)
- AC bias frequency: 255 (previously panel-specific)
- FIFO DMA request delay: 128 (previously panel-specific)

These parameters show no variation in real-world usage, so hardcoding
them simplifies the driver without losing functionality.

Preserve FIFO threshold configurability by detecting the SoC type, as
this parameter varies between AM33xx (8) and DA850 (16) platforms.

Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Kory Maincent (TI.com) <kory.maincent@bootlin.com>
Link: https://patch.msgid.link/20260123-feature_tilcdc-v5-4-5a44d2aa3f6f@bootlin.com
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
2026-02-11 09:16:15 +01:00
..
adp drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
amd drm/amd/display: Hook up colorop destroy helper for plane pipelines 2026-02-10 11:03:04 +05:30
arm drm/arm: komeda: Switch private_obj initialization to atomic_create_state 2026-02-10 10:06:57 +01:00
armada drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
aspeed
ast drm-misc-next for 6.19: 2025-12-26 18:15:33 +10:00
atmel-hlcdc drm/atmel-hlcdc: don't reject the commit if the src rect has fractional parts 2026-01-21 09:28:09 +05:30
bridge drm: bridge: anx7625: implement message sending 2026-02-07 12:38:38 +02:00
ci drm/ci: ignore Gamma test failures on Qualcomm SC7180 2026-01-22 01:22:47 +02:00
clients drm/log: avoid WARN when searching for usable format 2025-12-19 23:06:41 +01:00
display drm/dp_tunnel: Switch private_obj initialization to atomic_create_state 2026-02-10 10:06:36 +01:00
etnaviv drm/etnaviv: Add module parameter to force PPU flop reset 2026-01-06 16:43:19 +01:00
exynos drm/exynos: vidi: use ctx->lock to protect struct vidi_context member variables related to memory alloc/free 2026-02-01 23:28:01 +09:00
fsl-dcu drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
gma500 drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
gud drm/gud: fix NULL fb and crtc dereferences on USB disconnect 2026-01-13 13:58:24 +00:00
hisilicon drm/hisilicon/hibmc: Adding reset colorbar cfg in dp init. 2026-01-20 10:53:14 +02:00
hyperv drm/hyperv: move Kconfig under driver directory 2025-12-10 11:02:53 +02:00
i915 drm/i915/color: Add failure handling in plane color pipeline init 2026-02-10 11:03:13 +05:30
imagination drm/imagination: Mark FWCCB_CMD_UPDATE_STATS as known 2026-02-10 10:01:11 +00:00
imx drm/imx/dw-hdmi: convert to of_drm_find_and_get_bridge() 2026-01-21 13:59:56 +01:00
ingenic drm/ingenic: Switch private_obj initialization to atomic_create_state 2026-02-10 10:07:05 +01:00
kmb drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
lima drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
logicvc drm/logicvc: Switch to drm_atomic_get_new_crtc_state() 2025-10-06 13:59:15 +02:00
loongson drm/ttm: Replace multiple booleans with flags in device init 2025-10-31 09:14:35 +00:00
mcde drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
mediatek Linux 6.19-rc7 2026-01-28 12:44:28 +10:00
meson drm/meson/dw-hdmi: convert to of_drm_find_and_get_bridge() 2026-01-21 13:59:56 +01:00
mgag200 drm fixes for 6.19-rc1 2025-12-13 17:39:28 +12:00
msm drm/msm: dpu1: Switch private_obj initialization to atomic_create_state 2026-02-10 10:07:17 +01:00
mxsfb drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
nouveau nouveau: pci: quiesce GPU on shutdown 2026-02-10 06:15:11 +10:00
nova drm/nova: Align GEM memory allocation to system page size 2025-12-29 15:43:20 +01:00
omapdrm drm/bridge: add connector argument to .hpd_notify callback 2025-12-25 00:22:13 +02:00
panel drm/panel: jdi-lt070me05000: Use MIPI DSI multi functions 2026-02-10 08:43:23 -08:00
panfrost drm/panfrost: Fix a page leak in panfrost_mmu_map_fault_addr() when THP is on 2026-01-09 16:29:30 +00:00
panthor Merge drm/drm-next into drm-misc-next 2026-02-05 10:33:06 +01:00
pl111 Linux 6.19-rc7 2026-01-28 12:44:28 +10:00
qxl dma-buf: add dma_fence_was_initialized function v2 2026-02-05 11:02:56 +01:00
radeon drm/radeon: convert VCE logging to drm_* helpers 2026-01-20 17:28:06 -05:00
renesas drm/rcar-du: dsi: Clean up VCLK divider calculation 2026-01-27 12:13:09 +02:00
rockchip Linux 6.19-rc7 2026-01-28 12:44:28 +10:00
scheduler Merge drm/drm-next into drm-misc-next 2025-12-15 09:27:39 +01:00
sitronix drm: Add driver for Sitronix ST7920 LCD displays 2025-12-15 18:25:09 +01:00
solomon drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
sprd
sti drm-next for 6.19-rc1: 2025-12-04 08:53:30 -08:00
stm drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
sun4i drm/display: hdmi_state_helper: split InfoFrame functions per type 2026-01-19 13:11:46 +02:00
sysfb drm/sysfb: Remove duplicate declarations 2026-01-14 11:03:56 +01:00
tegra drm/tegra: dsi: fix device leak on probe 2026-01-14 15:23:17 +01:00
tests gpu: Move DRM buddy allocator one level up (part one) 2026-02-06 11:34:02 +10:00
tidss drm/tidss: Fix enable/disable order 2026-01-03 20:08:24 +01:00
tilcdc drm/tilcdc: Add support for DRM bus flags and simplify panel config 2026-02-11 09:16:15 +01:00
tiny drm/arcpgu: convert to of_drm_find_and_get_bridge() 2025-12-30 10:11:33 +01:00
ttm gpu: Move DRM buddy allocator one level up (part two) 2026-02-06 11:38:35 +10:00
tve200 drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
tyr DRM Rust changes for v7.0-rc1 2026-01-28 13:35:23 +10:00
udl drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
v3d drm/v3d: Replace IDR with XArray for perfmon tracking 2026-02-02 07:54:43 -03:00
vboxvideo drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
vc4 drm/vc4: Switch private_obj initialization to atomic_create_state 2026-02-10 10:07:57 +01:00
verisilicon drm: verisilicon: suppress snprintf warning for pixel clock name 2026-02-09 10:44:36 +01:00
vgem drm/vgem: move Kconfig under driver directory 2025-12-10 11:02:53 +02:00
virtio dma-buf: Rename .move_notify() callback to a clearer identifier 2026-01-27 10:43:55 +01:00
vkms drm/vkms: Remove drm_colorop_pipeline_destroy() from vkms_destroy() 2026-02-10 11:03:10 +05:30
vmwgfx drm/vmwgfx: Fix kernel-doc warnings for vmwgfx_fence 2026-01-07 12:31:21 -05:00
xe gpu: Move DRM buddy allocator one level up (part two) 2026-02-06 11:38:35 +10:00
xen drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
xlnx drm/xlnx: Compute dumb-buffer sizes with drm_mode_size_dumb() 2025-09-29 17:50:54 +02:00
drm_atomic_helper.c drm/atomic-helper: replace use of system_unbound_wq with system_dfl_wq 2026-02-09 09:40:46 +01:00
drm_atomic_state_helper.c drm/bridge: Switch private_obj initialization to atomic_create_state 2026-02-10 10:05:58 +01:00
drm_atomic_uapi.c drm/atomic: verify that gamma/degamma LUTs are not too big 2026-01-14 02:18:31 +02:00
drm_atomic.c drm/atomic: Add new atomic_create_state callback to drm_private_obj 2026-02-10 10:05:33 +01:00
drm_auth.c
drm_blend.c
drm_bridge_helper.c
drm_bridge.c drm/bridge: Switch private_obj initialization to atomic_create_state 2026-02-10 10:05:58 +01:00
drm_buddy.c gpu: Move DRM buddy allocator one level up (part two) 2026-02-06 11:38:35 +10:00
drm_cache.c drm/gpu: Remove dead checks on wbinvd_on_all_cpus()'s return value 2025-07-10 13:07:26 +02:00
drm_client_event.c drm/client: Pass force parameter to client restore 2025-11-25 08:43:46 +01:00
drm_client_modeset.c drm/fb-helper: Synchronize dirty worker with vblank 2025-09-16 12:42:52 +02:00
drm_client_sysrq.c drm/client: Support emergency restore via sysrq for all clients 2025-11-25 08:43:47 +01:00
drm_client.c drm/client: Support emergency restore via sysrq for all clients 2025-11-25 08:43:47 +01:00
drm_color_mgmt.c drm: Add Enhanced LUT precision structure 2025-11-26 23:03:35 +01:00
drm_colorop.c drm/colorop: Use destroy callback for color pipeline teardown 2026-02-10 11:03:11 +05:30
drm_connector.c drm/connector: Add a new 'panel_type' property 2026-01-27 12:57:24 -06:00
drm_crtc_helper_internal.h
drm_crtc_helper.c
drm_crtc_internal.h drm/colorop: Introduce DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE 2025-11-26 23:03:32 +01:00
drm_crtc.c drm/drm_crtc: Introduce sharpness strength property 2025-10-30 15:38:04 +02:00
drm_damage_helper.c
drm_debugfs_crc.c
drm_debugfs.c drm/debug: don't register files for unsupported HDMI InfoFrames 2026-01-19 13:11:47 +02:00
drm_displayid_internal.h drm/displayid: add quirk to ignore DisplayID checksum errors 2025-11-04 14:49:30 +02:00
drm_displayid.c drm/displayid: add quirk to ignore DisplayID checksum errors 2025-11-04 14:49:30 +02:00
drm_draw_internal.h drm/draw: add drm_draw_can_convert_from_xrgb8888 2025-12-19 23:06:41 +01:00
drm_draw.c drm/draw: add drm_draw_can_convert_from_xrgb8888 2025-12-19 23:06:41 +01:00
drm_drv.c drm/client: Support emergency restore via sysrq for all clients 2025-11-25 08:43:47 +01:00
drm_dumb_buffers.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_edid_load.c
drm_edid.c drm/edid: add 6 bpc quirk to the Sharp LQ116M1JW10 2025-11-06 08:51:21 -08:00
drm_eld.c
drm_encoder.c
drm_exec.c
drm_fb_dma_helper.c
drm_fb_helper.c drm/fbdev-emulation: Remove support for legacy emulation 2026-02-06 09:28:44 +01:00
drm_fbdev_dma.c drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
drm_fbdev_shmem.c drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
drm_fbdev_ttm.c drm/fb-helper: Allocate and release fb_info in single place 2025-11-25 11:02:43 +01:00
drm_file.c drm/client: Pass force parameter to client restore 2025-11-25 08:43:46 +01:00
drm_flip_work.c
drm_format_helper.c drm/format-helper: Remove drm_fb_blit() 2025-09-23 15:06:06 +02:00
drm_format_internal.h drm/format-helper: Split off byte swapping from drm_fb_xrgb8888_to_rgb565() 2025-06-27 15:59:23 +02:00
drm_fourcc.c drm: Pass pixel_format+modifier directly to drm_get_format_info() 2025-07-16 20:01:13 +03:00
drm_framebuffer.c drm/framebuffer: Switch to drm_atomic_get_new_crtc_state() 2025-10-06 13:59:21 +02:00
drm_gem_atomic_helper.c Linux 6.18-rc6 2025-11-21 08:55:08 +10:00
drm_gem_dma_helper.c drm/gem-dma: revert the 8-byte alignment constraint 2025-12-03 10:52:18 +01:00
drm_gem_framebuffer_helper.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_gem_shmem_helper.c Linux 6.19-rc7 2026-01-28 12:44:28 +10:00
drm_gem_ttm_helper.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_gem_vram_helper.c drm/ttm: Replace multiple booleans with flags in device init 2025-10-31 09:14:35 +00:00
drm_gem.c drm/gem: Make drm_gem_objects_lookup() self-cleaning on failure v6 2026-02-07 18:43:49 +05:30
drm_gpusvm.c drm/gpusvm: Introduce a function to scan the current migration state 2025-12-23 10:00:48 +01:00
drm_gpuvm.c Linux 6.19-rc7 2026-01-28 12:44:28 +10:00
drm_internal.h drm/client: Support emergency restore via sysrq for all clients 2025-11-25 08:43:47 +01:00
drm_ioc32.c
drm_ioctl.c drm/colorop: Introduce DRM_CLIENT_CAP_PLANE_COLOR_PIPELINE 2025-11-26 23:03:32 +01:00
drm_kms_helper_common.c
drm_lease.c
drm_managed.c
drm_mipi_dbi.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_mipi_dsi.c drm: Add MIPI read_multi func and two write macros 2025-08-14 15:42:26 -07:00
drm_mm.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_mode_config.c drm: Clean up colorop objects during mode_config cleanup 2026-02-10 11:03:09 +05:30
drm_mode_object.c drm/mode_object: add drm_object_immutable_property_get_value() 2026-01-14 02:18:31 +02:00
drm_modes.c
drm_modeset_helper.c drm/client: Remove holds_console_lock parameter from suspend/resume 2025-10-18 17:35:09 +02:00
drm_modeset_lock.c
drm_of.c drm: of: fix documentation reference 2025-08-21 16:21:08 +02:00
drm_pagemap_util.c drm/pagemap_util: Add a utility to assign an owner to a set of interconnected gpus 2025-12-23 10:00:47 +01:00
drm_pagemap.c drm/pagemap: Disable device-to-device migration 2026-01-07 21:29:40 -08:00
drm_panel_backlight_quirks.c drm: panel-backlight-quirks: Add Steam Deck brightness quirk 2025-09-03 10:23:03 -05:00
drm_panel_orientation_quirks.c
drm_panel.c drm/panel: Allow powering on panel follower after panel is enabled 2025-08-25 09:17:49 -07:00
drm_panic_qr.rs drm/panic: use core::ffi::CStr method names 2025-09-16 09:26:59 +02:00
drm_panic.c drm/panic: Fix expected string for QR_CODE in drm_panic_type_map 2026-01-09 08:53:27 +00:00
drm_pci.c
drm_plane_helper.c
drm_plane.c drm-misc-next for 6.19: 2025-12-26 18:15:33 +10:00
drm_prime.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
drm_print.c
drm_privacy_screen_x86.c
drm_privacy_screen.c
drm_probe_helper.c drm/probe-helper: replace use of system_wq with system_percpu_wq 2026-02-09 09:41:09 +01:00
drm_property.c drm: Account property blob allocations to memcg 2026-01-16 11:22:03 +01:00
drm_rect.c
drm_self_refresh_helper.c drm/self_refresh: replace use of system_wq with system_percpu_wq 2026-02-09 09:41:12 +01:00
drm_simple_kms_helper.c
drm_suballoc.c
drm_syncobj.c drm/syncobj: Convert syncobj idr to xarray 2025-12-18 09:05:30 +00:00
drm_sysfs.c DRM: Add a new 'boot_display' attribute 2025-09-10 09:35:33 -05:00
drm_trace_points.c
drm_trace.h
drm_vblank_helper.c drm/vblank: Add CRTC helpers for simple use cases 2025-10-01 08:32:00 +02:00
drm_vblank_work.c drm/vblank: use drm_crtc_vblank_crtc() in workers 2025-11-10 13:22:58 +02:00
drm_vblank.c drm-misc-next for 6.19: 2025-12-26 18:15:33 +10:00
drm_vma_manager.c
drm_writeback.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
Kconfig gpu: Move DRM buddy allocator one level up (part two) 2026-02-06 11:38:35 +10:00
Kconfig.debug gpu: Move DRM buddy allocator one level up (part one) 2026-02-06 11:34:02 +10:00
Makefile drm: drop lib from header search path. 2026-02-06 11:44:09 +10:00