Merge tag 'drm-next-2023-11-07' of git://anongit.freedesktop.org/drm/drm
Pull more drm updates from Dave Airlie: "Geert pointed out I missed the renesas reworks in my main pull, so this pull contains the renesas next work for atomic conversion and DT support. It also contains a bunch of amdgpu and some small ssd13xx fixes. renesas: - atomic conversion - DT support ssd13xx: - dt binding fix for ssd132x - Initialize ssd130x crtc_state to NULL. amdgpu: - Fix RAS support check - RAS fixes - MES fixes - SMU13 fixes - Contiguous memory allocation fix - BACO fixes - GPU reset fixes - Min power limit fixes - GFX11 fixes - USB4/TB hotplug fixes - ARM regression fix - GFX9.4.3 fixes - KASAN/KCSAN stack size check fixes - SR-IOV fixes - SMU14 fixes - PSP13 fixes - Display blend fixes - Flexible array size fixes amdkfd: - GPUVM fix radeon: - Flexible array size fixes" * tag 'drm-next-2023-11-07' of git://anongit.freedesktop.org/drm/drm: (83 commits) drm/amd/display: Enable fast update on blendTF change drm/amd/display: Fix blend LUT programming drm/amd/display: Program plane color setting correctly drm/amdgpu: Query and report boot status drm/amdgpu: Add psp v13 function to query boot status drm/amd/swsmu: remove fw version check in sw_init. drm/amd/swsmu: update smu v14_0_0 driver if and metrics table drm/amdgpu: Add C2PMSG_109/126 reg field shift/masks drm/amdgpu: Optimize the asic type fix code drm/amdgpu: fix GRBM read timeout when do mes_self_test drm/amdgpu: check recovery status of xgmi hive in ras_reset_error_count drm/amd/pm: only check sriov vf flag once when creating hwmon sysfs drm/amdgpu: Attach eviction fence on alloc drm/amdkfd: Improve amdgpu_vm_handle_moved drm/amd/display: Increase frame warning limit with KASAN or KCSAN in dml2 drm/amd/display: Avoid NULL dereference of timing generator drm/amdkfd: Update cache info for GFX 9.4.3 drm/amdkfd: Populate cache info for GFX 9.4.3 drm/amdgpu: don't put MQDs in VRAM on ARM | ARM64 drm/amdgpu/smu13: drop compute workload workaround ...
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
#ifndef __SHMOB_DRM_H__
|
||||
#define __SHMOB_DRM_H__
|
||||
|
||||
#include <drm/drm_mode.h>
|
||||
#include <video/videomode.h>
|
||||
|
||||
enum shmob_drm_clk_source {
|
||||
SHMOB_DRM_CLK_BUS,
|
||||
@@ -18,72 +18,21 @@ enum shmob_drm_clk_source {
|
||||
SHMOB_DRM_CLK_EXTERNAL,
|
||||
};
|
||||
|
||||
enum shmob_drm_interface {
|
||||
SHMOB_DRM_IFACE_RGB8, /* 24bpp, 8:8:8 */
|
||||
SHMOB_DRM_IFACE_RGB9, /* 18bpp, 9:9 */
|
||||
SHMOB_DRM_IFACE_RGB12A, /* 24bpp, 12:12 */
|
||||
SHMOB_DRM_IFACE_RGB12B, /* 12bpp */
|
||||
SHMOB_DRM_IFACE_RGB16, /* 16bpp */
|
||||
SHMOB_DRM_IFACE_RGB18, /* 18bpp */
|
||||
SHMOB_DRM_IFACE_RGB24, /* 24bpp */
|
||||
SHMOB_DRM_IFACE_YUV422, /* 16bpp */
|
||||
SHMOB_DRM_IFACE_SYS8A, /* 24bpp, 8:8:8 */
|
||||
SHMOB_DRM_IFACE_SYS8B, /* 18bpp, 8:8:2 */
|
||||
SHMOB_DRM_IFACE_SYS8C, /* 18bpp, 2:8:8 */
|
||||
SHMOB_DRM_IFACE_SYS8D, /* 16bpp, 8:8 */
|
||||
SHMOB_DRM_IFACE_SYS9, /* 18bpp, 9:9 */
|
||||
SHMOB_DRM_IFACE_SYS12, /* 24bpp, 12:12 */
|
||||
SHMOB_DRM_IFACE_SYS16A, /* 16bpp */
|
||||
SHMOB_DRM_IFACE_SYS16B, /* 18bpp, 16:2 */
|
||||
SHMOB_DRM_IFACE_SYS16C, /* 18bpp, 2:16 */
|
||||
SHMOB_DRM_IFACE_SYS18, /* 18bpp */
|
||||
SHMOB_DRM_IFACE_SYS24, /* 24bpp */
|
||||
};
|
||||
|
||||
struct shmob_drm_backlight_data {
|
||||
const char *name;
|
||||
int max_brightness;
|
||||
int (*get_brightness)(void);
|
||||
int (*set_brightness)(int brightness);
|
||||
};
|
||||
|
||||
struct shmob_drm_panel_data {
|
||||
unsigned int width_mm; /* Panel width in mm */
|
||||
unsigned int height_mm; /* Panel height in mm */
|
||||
struct drm_mode_modeinfo mode;
|
||||
struct videomode mode;
|
||||
};
|
||||
|
||||
struct shmob_drm_sys_interface_data {
|
||||
unsigned int read_latch:6;
|
||||
unsigned int read_setup:8;
|
||||
unsigned int read_cycle:8;
|
||||
unsigned int read_strobe:8;
|
||||
unsigned int write_setup:8;
|
||||
unsigned int write_cycle:8;
|
||||
unsigned int write_strobe:8;
|
||||
unsigned int cs_setup:3;
|
||||
unsigned int vsync_active_high:1;
|
||||
unsigned int vsync_dir_input:1;
|
||||
};
|
||||
|
||||
#define SHMOB_DRM_IFACE_FL_DWPOL (1 << 0) /* Rising edge dot clock data latch */
|
||||
#define SHMOB_DRM_IFACE_FL_DIPOL (1 << 1) /* Active low display enable */
|
||||
#define SHMOB_DRM_IFACE_FL_DAPOL (1 << 2) /* Active low display data */
|
||||
#define SHMOB_DRM_IFACE_FL_HSCNT (1 << 3) /* Disable HSYNC during VBLANK */
|
||||
#define SHMOB_DRM_IFACE_FL_DWCNT (1 << 4) /* Disable dotclock during blanking */
|
||||
|
||||
struct shmob_drm_interface_data {
|
||||
enum shmob_drm_interface interface;
|
||||
struct shmob_drm_sys_interface_data sys;
|
||||
unsigned int bus_fmt; /* MEDIA_BUS_FMT_* */
|
||||
unsigned int clk_div;
|
||||
unsigned int flags;
|
||||
};
|
||||
|
||||
struct shmob_drm_platform_data {
|
||||
enum shmob_drm_clk_source clk_source;
|
||||
struct shmob_drm_interface_data iface;
|
||||
struct shmob_drm_panel_data panel;
|
||||
struct shmob_drm_backlight_data backlight;
|
||||
};
|
||||
|
||||
#endif /* __SHMOB_DRM_H__ */
|
||||
|
||||
Reference in New Issue
Block a user