Config: enable techpack display driver compilation for lahaina

This change enables display drivers code compilation
for lahaina target and current location of header files
is replacing the header files in usr/include/drm directory
before installing display specific header files. This change
ensures both the drm and msm_drv header files are exported
to user mode clients.

Change-Id: If6fc347598b902e670b7206dbcb82fe0740b3984
Signed-off-by: Shashank Babu Chinta Venkata <sbchin@codeaurora.org>
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
Signed-off-by: Narendra Muppalla <NarendraM@codeaurora.org>
This commit is contained in:
Narendra Muppalla 2019-12-12 10:50:17 -08:00
parent beb705e598
commit a0b168f7b3
20 changed files with 1466 additions and 48 deletions

View File

@ -9,6 +9,15 @@ ifeq ($(CONFIG_ARCH_KONA), y)
LINUXINCLUDE += -include $(srctree)/techpack/display/config/konadispconf.h
endif
ifeq ($(CONFIG_ARCH_LAHAINA), y)
include $(srctree)/techpack/display/config/lahainadisp.conf
LINUXINCLUDE += -include $(srctree)/techpack/display/config/lahainadispconf.h
LINUXINCLUDE += \
-I$(srctree)/techpack/display/include/uapi/display \
-I$(srctree)/techpack/display/include
USERINCLUDE += -I$(srctree)/techpack/display/include/uapi/display
endif
ifeq ($(CONFIG_ARCH_LITO), y)
include $(srctree)/techpack/display/config/saipdisp.conf
endif

8
config/lahainadisp.conf Normal file
View File

@ -0,0 +1,8 @@
export CONFIG_DRM_MSM=y
export CONFIG_DRM_MSM_SDE=y
export CONFIG_SYNC_FILE=y
export CONFIG_DRM_MSM_DSI=y
export CONFIG_DSI_PARSER=y
export CONFIG_DRM_SDE_WB=y
export CONFIG_DRM_MSM_REGISTER_LOGGING=y
export CONFIG_QCOM_MDSS_PLL=y

15
config/lahainadispconf.h Normal file
View File

@ -0,0 +1,15 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2020, The Linux Foundation. All rights reserved.
*/
#define CONFIG_DRM_MSM 1
#define CONFIG_DRM_MSM_SDE 1
#define CONFIG_SYNC_FILE 1
#define CONFIG_DRM_MSM_DSI 1
#define CONFIG_DSI_PARSER 1
#define CONFIG_DRM_SDE_WB 1
#define CONFIG_DRM_MSM_REGISTER_LOGGING 1
#define CONFIG_DRM_SDE_EVTLOG_DEBUG 1
#define CONFIG_QCOM_MDSS_PLL 1

View File

@ -1,4 +1,4 @@
# SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note
header-y += media/
header-y += drm/
# Top-level Makefile calls into asm-$(ARCH)
# List only non-arch directories below

View File

@ -0,0 +1,4 @@
# SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note
header-y += media/
header-y += drm/

View File

@ -1,3 +1,4 @@
# SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note
header-y += msm_sde_rotator.h
header-y += mmm_color_fmt.h

File diff suppressed because it is too large Load Diff

View File

@ -22,6 +22,8 @@ msm_drm-$(CONFIG_DRM_MSM_DP) += dp/dp_usbpd.o \
dp/dp_drm.o \
dp/dp_hdcp2p2.o \
dp/dp_mst_drm.o \
sde_hdcp_1x.o \
sde_hdcp_2x.o \
msm_drm-$(CONFIG_DRM_MSM_SDE) += sde/sde_crtc.o \
sde/sde_encoder.o \
@ -45,8 +47,6 @@ msm_drm-$(CONFIG_DRM_MSM_SDE) += sde/sde_crtc.o \
sde/sde_hw_ad4.o \
sde/sde_hw_uidle.o \
sde_edid_parser.o \
sde_hdcp_1x.o \
sde_hdcp_2x.o \
sde/sde_hw_catalog.o \
sde/sde_hw_cdm.o \
sde/sde_hw_dspp.o \

View File

@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/
#ifndef _SDE_CONNECTOR_H_
#define _SDE_CONNECTOR_H_
#include <uapi/drm/msm_drm_pp.h>
#include <drm/msm_drm_pp.h>
#include <drm/drmP.h>
#include <drm/drm_atomic.h>
#include <drm/drm_panel.h>

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2014-2019 The Linux Foundation. All rights reserved.
* Copyright (c) 2014-2020 The Linux Foundation. All rights reserved.
* Copyright (C) 2013 Red Hat
* Author: Rob Clark <robdclark@gmail.com>
*
@ -20,7 +20,7 @@
#include <linux/sort.h>
#include <linux/debugfs.h>
#include <linux/ktime.h>
#include <uapi/drm/sde_drm.h>
#include <drm/sde_drm.h>
#include <drm/drm_mode.h>
#include <drm/drm_crtc.h>
#include <drm/drm_probe_helper.h>

View File

@ -1,11 +1,11 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
*/
#define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__
#include <linux/debugfs.h>
#include <uapi/drm/sde_drm.h>
#include <drm/sde_drm.h>
#include "sde_encoder_phys.h"
#include "sde_formats.h"

View File

@ -1,12 +1,12 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
*/
#define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__
#include <uapi/drm/drm_fourcc.h>
#include <uapi/media/msm_media_info.h>
#include <drm/drm_fourcc.h>
#include <media/mmm_color_fmt.h>
#include "sde_kms.h"
#include "sde_formats.h"
@ -686,11 +686,11 @@ static void _sde_get_v_h_subsample_rate(
static int _sde_format_get_media_color_ubwc(const struct sde_format *fmt)
{
static const struct sde_media_color_map sde_media_ubwc_map[] = {
{DRM_FORMAT_ABGR8888, COLOR_FMT_RGBA8888_UBWC},
{DRM_FORMAT_XBGR8888, COLOR_FMT_RGBA8888_UBWC},
{DRM_FORMAT_ABGR2101010, COLOR_FMT_RGBA1010102_UBWC},
{DRM_FORMAT_XBGR2101010, COLOR_FMT_RGBA1010102_UBWC},
{DRM_FORMAT_BGR565, COLOR_FMT_RGB565_UBWC},
{DRM_FORMAT_ABGR8888, MMM_COLOR_FMT_RGBA8888_UBWC},
{DRM_FORMAT_XBGR8888, MMM_COLOR_FMT_RGBA8888_UBWC},
{DRM_FORMAT_ABGR2101010, MMM_COLOR_FMT_RGBA1010102_UBWC},
{DRM_FORMAT_XBGR2101010, MMM_COLOR_FMT_RGBA1010102_UBWC},
{DRM_FORMAT_BGR565, MMM_COLOR_FMT_RGB565_UBWC},
};
int color_fmt = -1;
int i;
@ -698,11 +698,11 @@ static int _sde_format_get_media_color_ubwc(const struct sde_format *fmt)
if (fmt->base.pixel_format == DRM_FORMAT_NV12) {
if (SDE_FORMAT_IS_DX(fmt)) {
if (fmt->unpack_tight)
color_fmt = COLOR_FMT_NV12_BPP10_UBWC;
color_fmt = MMM_COLOR_FMT_NV12_BPP10_UBWC;
else
color_fmt = COLOR_FMT_P010_UBWC;
color_fmt = MMM_COLOR_FMT_P010_UBWC;
} else
color_fmt = COLOR_FMT_NV12_UBWC;
color_fmt = MMM_COLOR_FMT_NV12_UBWC;
return color_fmt;
}
@ -743,28 +743,36 @@ static int _sde_format_get_plane_sizes_ubwc(
uint32_t uv_meta_scanlines = 0;
layout->num_planes = 2;
layout->plane_pitch[0] = VENUS_Y_STRIDE(color, width);
y_sclines = VENUS_Y_SCANLINES(color, height);
layout->plane_size[0] = MSM_MEDIA_ALIGN(layout->plane_pitch[0] *
layout->plane_pitch[0] = MMM_COLOR_FMT_Y_STRIDE(color, width);
y_sclines = MMM_COLOR_FMT_Y_SCANLINES(color, height);
layout->plane_size[0] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[0] *
y_sclines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
layout->plane_pitch[1] = VENUS_UV_STRIDE(color, width);
uv_sclines = VENUS_UV_SCANLINES(color, height);
layout->plane_size[1] = MSM_MEDIA_ALIGN(layout->plane_pitch[1] *
layout->plane_pitch[1] = MMM_COLOR_FMT_UV_STRIDE(color, width);
uv_sclines = MMM_COLOR_FMT_UV_SCANLINES(color, height);
layout->plane_size[1] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[1] *
uv_sclines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
if (!meta)
goto done;
layout->num_planes += 2;
layout->plane_pitch[2] = VENUS_Y_META_STRIDE(color, width);
y_meta_scanlines = VENUS_Y_META_SCANLINES(color, height);
layout->plane_size[2] = MSM_MEDIA_ALIGN(layout->plane_pitch[2] *
layout->plane_pitch[2] =
MMM_COLOR_FMT_Y_META_STRIDE(color, width);
y_meta_scanlines =
MMM_COLOR_FMT_Y_META_SCANLINES(color, height);
layout->plane_size[2] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[2] *
y_meta_scanlines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
layout->plane_pitch[3] = VENUS_UV_META_STRIDE(color, width);
uv_meta_scanlines = VENUS_UV_META_SCANLINES(color, height);
layout->plane_size[3] = MSM_MEDIA_ALIGN(layout->plane_pitch[3] *
layout->plane_pitch[3] =
MMM_COLOR_FMT_UV_META_STRIDE(color, width);
uv_meta_scanlines =
MMM_COLOR_FMT_UV_META_SCANLINES(color, height);
layout->plane_size[3] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[3] *
uv_meta_scanlines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
} else {
@ -772,17 +780,22 @@ static int _sde_format_get_plane_sizes_ubwc(
layout->num_planes = 1;
layout->plane_pitch[0] = VENUS_RGB_STRIDE(color, width);
rgb_scanlines = VENUS_RGB_SCANLINES(color, height);
layout->plane_size[0] = MSM_MEDIA_ALIGN(layout->plane_pitch[0] *
layout->plane_pitch[0] =
MMM_COLOR_FMT_RGB_STRIDE(color, width);
rgb_scanlines = MMM_COLOR_FMT_RGB_SCANLINES(color, height);
layout->plane_size[0] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[0] *
rgb_scanlines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
if (!meta)
goto done;
layout->num_planes += 2;
layout->plane_pitch[2] = VENUS_RGB_META_STRIDE(color, width);
rgb_meta_scanlines = VENUS_RGB_META_SCANLINES(color, height);
layout->plane_size[2] = MSM_MEDIA_ALIGN(layout->plane_pitch[2] *
layout->plane_pitch[2] =
MMM_COLOR_FMT_RGB_META_STRIDE(color, width);
rgb_meta_scanlines =
MMM_COLOR_FMT_RGB_META_SCANLINES(color, height);
layout->plane_size[2] =
MMM_COLOR_FMT_ALIGN(layout->plane_pitch[2] *
rgb_meta_scanlines, SDE_UBWC_PLANE_SIZE_ALIGNMENT);
}

View File

@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
*/
#ifndef _SDE_HW_PINGPONG_H
@ -10,7 +10,7 @@
#include "sde_hw_mdss.h"
#include "sde_hw_util.h"
#include "sde_hw_blk.h"
#include <uapi/drm/msm_drm_pp.h>
#include <drm/msm_drm_pp.h>
struct sde_hw_pingpong;
struct sde_hw_merge_3d;

View File

@ -1,10 +1,10 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
*/
#define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__
#include <uapi/drm/sde_drm.h>
#include <drm/sde_drm.h>
#include "msm_drv.h"
#include "sde_kms.h"
#include "sde_hw_mdss.h"

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2014-2019 The Linux Foundation. All rights reserved.
* Copyright (C) 2014-2020 The Linux Foundation. All rights reserved.
* Copyright (C) 2013 Red Hat
* Author: Rob Clark <robdclark@gmail.com>
*
@ -20,8 +20,8 @@
#include <linux/debugfs.h>
#include <linux/dma-buf.h>
#include <uapi/drm/sde_drm.h>
#include <uapi/drm/msm_drm_pp.h>
#include <drm/sde_drm.h>
#include <drm/msm_drm_pp.h>
#include "msm_prop.h"
#include "msm_drv.h"

View File

@ -1,11 +1,11 @@
// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
* Copyright (c) 2015-2020, The Linux Foundation. All rights reserved.
*/
#define pr_fmt(fmt) "[drm:%s:%d] " fmt, __func__, __LINE__
#include <uapi/drm/sde_drm.h>
#include <drm/sde_drm.h>
#include <drm/drm_probe_helper.h>
#include "msm_kms.h"