From 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Mon, 13 May 2024 10:30:14 +0000 Subject: [PATCH] modify sin led gpio --- kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.h | 37 +++++++++++++++++-------------------- 1 files changed, 17 insertions(+), 20 deletions(-) diff --git a/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.h b/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.h index 9429c11..4442719 100644 --- a/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.h +++ b/kernel/drivers/gpu/drm/rockchip/rockchip_drm_fb.h @@ -1,21 +1,16 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright (C) Fuzhou Rockchip Electronics Co.Ltd * Author:Mark Yao <mark.yao@rock-chips.com> - * - * This software is licensed under the terms of the GNU General Public - * License version 2, as published by the Free Software Foundation, and - * may be copied, distributed, and modified under those terms. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. */ #ifndef _ROCKCHIP_DRM_FB_H #define _ROCKCHIP_DRM_FB_H -bool rockchip_fb_is_logo(struct drm_framebuffer *fb); +#include "rockchip_drm_gem.h" + +#define ROCKCHIP_DRM_MODE_LOGO_FB (1<<31) /* used for kernel logo, follow the define: DRM_MODE_FB_MODIFIERS at drm_mode.h */ + struct drm_framebuffer * rockchip_drm_framebuffer_init(struct drm_device *dev, const struct drm_mode_fb_cmd2 *mode_cmd, @@ -24,20 +19,22 @@ void rockchip_drm_mode_config_init(struct drm_device *dev); struct drm_framebuffer * +rockchip_drm_logo_fb_alloc(struct drm_device *dev, const struct drm_mode_fb_cmd2 *mode_cmd, + struct rockchip_logo *logo); +struct drm_framebuffer * rockchip_fb_alloc(struct drm_device *dev, const struct drm_mode_fb_cmd2 *mode_cmd, - struct drm_gem_object **obj, struct rockchip_logo *logo, - unsigned int num_planes); + struct drm_gem_object **obj, unsigned int num_planes); -dma_addr_t rockchip_fb_get_dma_addr(struct drm_framebuffer *fb, - unsigned int plane); -void *rockchip_fb_get_kvaddr(struct drm_framebuffer *fb, unsigned int plane); -#define to_rockchip_fb(x) container_of(x, struct rockchip_drm_fb, fb) +#define to_rockchip_logo_fb(x) container_of(x, struct rockchip_drm_logo_fb, fb) -struct rockchip_drm_fb { +struct rockchip_drm_logo_fb { struct drm_framebuffer fb; - dma_addr_t dma_addr[ROCKCHIP_MAX_FB_BUFFER]; - void *kvaddr[ROCKCHIP_MAX_FB_BUFFER]; - struct drm_gem_object *obj[ROCKCHIP_MAX_FB_BUFFER]; struct rockchip_logo *logo; + struct rockchip_gem_object rk_obj; + /* + * Used for delayed logo fb release + */ + struct delayed_work destroy_work; }; + #endif /* _ROCKCHIP_DRM_FB_H */ -- Gitblit v1.6.2