cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

sun4i_framebuffer.c (1275B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * Copyright (C) 2015 Free Electrons
      4 * Copyright (C) 2015 NextThing Co
      5 *
      6 * Maxime Ripard <maxime.ripard@free-electrons.com>
      7 */
      8
      9#include <drm/drm_atomic.h>
     10#include <drm/drm_atomic_helper.h>
     11#include <drm/drm_gem_framebuffer_helper.h>
     12
     13#include "sun4i_drv.h"
     14#include "sun4i_framebuffer.h"
     15
     16static int sun4i_de_atomic_check(struct drm_device *dev,
     17				 struct drm_atomic_state *state)
     18{
     19	int ret;
     20
     21	ret = drm_atomic_helper_check_modeset(dev, state);
     22	if (ret)
     23		return ret;
     24
     25	ret = drm_atomic_normalize_zpos(dev, state);
     26	if (ret)
     27		return ret;
     28
     29	return drm_atomic_helper_check_planes(dev, state);
     30}
     31
     32static const struct drm_mode_config_funcs sun4i_de_mode_config_funcs = {
     33	.atomic_check		= sun4i_de_atomic_check,
     34	.atomic_commit		= drm_atomic_helper_commit,
     35	.fb_create		= drm_gem_fb_create,
     36};
     37
     38static const struct drm_mode_config_helper_funcs sun4i_de_mode_config_helpers = {
     39	.atomic_commit_tail	= drm_atomic_helper_commit_tail_rpm,
     40};
     41
     42void sun4i_framebuffer_init(struct drm_device *drm)
     43{
     44	drm_mode_config_reset(drm);
     45
     46	drm->mode_config.max_width = 8192;
     47	drm->mode_config.max_height = 8192;
     48
     49	drm->mode_config.funcs = &sun4i_de_mode_config_funcs;
     50	drm->mode_config.helper_private = &sun4i_de_mode_config_helpers;
     51}