#include <drm/drm_atomic.h>
#include <drm/drm_atomic_helper.h>
#include <drm/drm_blend.h>
#include <drm/drm_crtc.h>
#include <drm/drm_fb_dma_helper.h>
#include <drm/drm_fourcc.h>
#include <drm/drm_framebuffer.h>
#include <drm/drm_gem_dma_helper.h>
#include <drm/drm_managed.h>
#include "kmb_drv.h"
#include "kmb_plane.h"
#include "kmb_regs.h"
const u32 layer_irqs[] = …;
static const u32 csc_coef_lcd[] = …;
static const u32 kmb_formats_g[] = …;
static const u32 kmb_formats_v[] = …;
static unsigned int check_pixel_format(struct drm_plane *plane, u32 format)
{ … }
static int kmb_plane_atomic_check(struct drm_plane *plane,
struct drm_atomic_state *state)
{ … }
static void kmb_plane_atomic_disable(struct drm_plane *plane,
struct drm_atomic_state *state)
{ … }
static unsigned int get_pixel_format(u32 format)
{ … }
static unsigned int get_bits_per_pixel(const struct drm_format_info *format)
{ … }
static void config_csc(struct kmb_drm_private *kmb, int plane_id)
{ … }
static void kmb_plane_set_alpha(struct kmb_drm_private *kmb,
const struct drm_plane_state *state,
unsigned char plane_id,
unsigned int *val)
{ … }
static void kmb_plane_atomic_update(struct drm_plane *plane,
struct drm_atomic_state *state)
{ … }
static const struct drm_plane_helper_funcs kmb_plane_helper_funcs = …;
void kmb_plane_destroy(struct drm_plane *plane)
{ … }
static const struct drm_plane_funcs kmb_plane_funcs = …;
struct kmb_plane *kmb_plane_init(struct drm_device *drm)
{ … }