From: Magnus Damm <magnus.damm@gmail.com>
To: linux-sh@vger.kernel.org
Subject: [PATCH/RFC] Simplify Gen3 DU and VSP Kconfig bits
Date: Thu, 15 Oct 2015 07:11:20 +0000 [thread overview]
Message-ID: <20151015071120.11093.50169.sendpatchset@little-apple> (raw)
From: Magnus Damm <damm+renesas@opensource.se>
Simplify the R-Car DU configuration by removing various Kconfig entires.
Without this patch the DU driver has the following entries:
- CONFIG_DRM_RCAR_DU
- CONFIG_DRM_RCAR_HDMI
- CONFIG_DRM_RCAR_LVDS
- CONFIG_DRM_RCAR_VSP
With this patch the required entries are reduced to:
- CONFIG_DRM_RCAR_DU
This changes simplifies configuration but the downside is obviously
larger run time size. We are however talking kilobytes in a world
using gigabytes.
Signed-off-by: Magnus Damm <damm+renesas@opensource.se>
---
Written against vsp1-kms-gen3-20150929
drivers/gpu/drm/rcar-du/Kconfig | 19 -----------------
drivers/gpu/drm/rcar-du/Makefile | 12 ++++-------
drivers/gpu/drm/rcar-du/rcar_du_hdmicon.h | 8 -------
drivers/gpu/drm/rcar-du/rcar_du_hdmienc.h | 9 --------
drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.h | 16 --------------
drivers/gpu/drm/rcar-du/rcar_du_vsp.h | 8 -------
include/media/vsp1.h | 31 +++++++++++++++++++++++++++--
7 files changed, 34 insertions(+), 69 deletions(-)
--- 0001/drivers/gpu/drm/rcar-du/Kconfig
+++ work/drivers/gpu/drm/rcar-du/Kconfig 2015-10-15 15:52:44.670513000 +0900
@@ -11,22 +11,3 @@ config DRM_RCAR_DU
help
Choose this option if you have an R-Car chipset.
If M is selected the module will be called rcar-du-drm.
-
-config DRM_RCAR_HDMI
- bool "R-Car DU HDMI Encoder Support"
- depends on DRM_RCAR_DU
- help
- Enable support for external HDMI encoders.
-
-config DRM_RCAR_LVDS
- bool "R-Car DU LVDS Encoder Support"
- depends on DRM_RCAR_DU
- help
- Enable support for the R-Car Display Unit embedded LVDS encoders.
-
-config DRM_RCAR_VSP
- bool "R-Car DU VSP Compositor Support"
- depends on DRM_RCAR_DU
- depends on VIDEO_RENESAS_VSP1
- help
- Enable support to expose the R-Car VSP Compositor as KMS planes.
--- 0001/drivers/gpu/drm/rcar-du/Makefile
+++ work/drivers/gpu/drm/rcar-du/Makefile 2015-10-15 15:53:07.890513000 +0900
@@ -5,12 +5,10 @@ rcar-du-drm-y := rcar_du_crtc.o \
rcar_du_kms.o \
rcar_du_lvdscon.o \
rcar_du_plane.o \
- rcar_du_vgacon.o
-
-rcar-du-drm-$(CONFIG_DRM_RCAR_HDMI) += rcar_du_hdmicon.o \
- rcar_du_hdmienc.o
-rcar-du-drm-$(CONFIG_DRM_RCAR_LVDS) += rcar_du_lvdsenc.o
-
-rcar-du-drm-$(CONFIG_DRM_RCAR_VSP) += rcar_du_vsp.o
+ rcar_du_vgacon.o \
+ rcar_du_hdmicon.o \
+ rcar_du_hdmienc.o \
+ rcar_du_vsp.o \
+ rcar_du_lvdsenc.o
obj-$(CONFIG_DRM_RCAR_DU) += rcar-du-drm.o
--- 0001/drivers/gpu/drm/rcar-du/rcar_du_hdmicon.h
+++ work/drivers/gpu/drm/rcar-du/rcar_du_hdmicon.h 2015-10-15 15:51:36.950513000 +0900
@@ -17,15 +17,7 @@
struct rcar_du_device;
struct rcar_du_encoder;
-#if IS_ENABLED(CONFIG_DRM_RCAR_HDMI)
int rcar_du_hdmi_connector_init(struct rcar_du_device *rcdu,
struct rcar_du_encoder *renc);
-#else
-static inline int rcar_du_hdmi_connector_init(struct rcar_du_device *rcdu,
- struct rcar_du_encoder *renc)
-{
- return -ENOSYS;
-}
-#endif
#endif /* __RCAR_DU_HDMICON_H__ */
--- 0001/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.h
+++ work/drivers/gpu/drm/rcar-du/rcar_du_hdmienc.h 2015-10-15 15:51:36.950513000 +0900
@@ -20,16 +20,7 @@ struct device_node;
struct rcar_du_device;
struct rcar_du_encoder;
-#if IS_ENABLED(CONFIG_DRM_RCAR_HDMI)
int rcar_du_hdmienc_init(struct rcar_du_device *rcdu,
struct rcar_du_encoder *renc, struct device_node *np);
-#else
-static inline int rcar_du_hdmienc_init(struct rcar_du_device *rcdu,
- struct rcar_du_encoder *renc,
- struct device_node *np)
-{
- return -ENOSYS;
-}
-#endif
#endif /* __RCAR_DU_HDMIENC_H__ */
--- 0001/drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.h
+++ work/drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.h 2015-10-15 15:54:28.790513000 +0900
@@ -26,26 +26,10 @@ enum rcar_lvds_input {
RCAR_LVDS_INPUT_DU2,
};
-#if IS_ENABLED(CONFIG_DRM_RCAR_LVDS)
int rcar_du_lvdsenc_init(struct rcar_du_device *rcdu);
int rcar_du_lvdsenc_enable(struct rcar_du_lvdsenc *lvds,
struct drm_crtc *crtc, bool enable);
void rcar_du_lvdsenc_atomic_check(struct rcar_du_lvdsenc *lvds,
struct drm_display_mode *mode);
-#else
-static inline int rcar_du_lvdsenc_init(struct rcar_du_device *rcdu)
-{
- return 0;
-}
-static inline int rcar_du_lvdsenc_enable(struct rcar_du_lvdsenc *lvds,
- struct drm_crtc *crtc, bool enable)
-{
- return 0;
-}
-static inline void rcar_du_lvdsenc_atomic_check(struct rcar_du_lvdsenc *lvds,
- struct drm_display_mode *mode)
-{
-}
-#endif
#endif /* __RCAR_DU_LVDSENC_H__ */
--- 0001/drivers/gpu/drm/rcar-du/rcar_du_vsp.h
+++ work/drivers/gpu/drm/rcar-du/rcar_du_vsp.h 2015-10-15 15:55:22.190513000 +0900
@@ -59,18 +59,10 @@ to_rcar_vsp_plane_state(struct drm_plane
return container_of(state, struct rcar_du_vsp_plane_state, state);
}
-#ifdef CONFIG_DRM_RCAR_VSP
int rcar_du_vsp_init(struct rcar_du_vsp *vsp);
void rcar_du_vsp_enable(struct rcar_du_crtc *crtc);
void rcar_du_vsp_disable(struct rcar_du_crtc *crtc);
void rcar_du_vsp_atomic_begin(struct rcar_du_crtc *crtc);
void rcar_du_vsp_atomic_flush(struct rcar_du_crtc *crtc);
-#else
-static inline int rcar_du_vsp_init(struct rcar_du_vsp *vsp) { return 0; };
-static inline void rcar_du_vsp_enable(struct rcar_du_crtc *crtc) { };
-static inline void rcar_du_vsp_disable(struct rcar_du_crtc *crtc) { };
-static inline void rcar_du_vsp_atomic_begin(struct rcar_du_crtc *crtc) { };
-static inline void rcar_du_vsp_atomic_flush(struct rcar_du_crtc *crtc) { };
-#endif
#endif /* __RCAR_DU_VSP_H__ */
--- 0001/include/media/vsp1.h
+++ work/include/media/vsp1.h 2015-10-15 16:00:51.170513000 +0900
@@ -18,16 +18,43 @@
struct device;
struct v4l2_rect;
+#ifdef CONFIG_VIDEO_RENESAS_VSP1
int vsp1_du_init(struct device *dev);
-
int vsp1_du_setup_lif(struct device *dev, unsigned int width,
unsigned int height);
-
int vsp1_du_atomic_begin(struct device *dev);
int vsp1_du_atomic_update(struct device *dev, unsigned int rpf, u32 pixelformat,
unsigned int pitch, dma_addr_t mem[2],
const struct v4l2_rect *src,
const struct v4l2_rect *dst);
int vsp1_du_atomic_flush(struct device *dev);
+#else
+static inline int vsp1_du_init(struct device *dev)
+{
+ return -ENOSYS;
+}
+static inline int vsp1_du_setup_lif(struct device *dev, unsigned int width,
+ unsigned int height)
+{
+ return 0;
+}
+static inline int vsp1_du_atomic_begin(struct device *dev)
+{
+ return 0;
+}
+static inline int vsp1_du_atomic_update(struct device *dev, unsigned int rpf,
+ u32 pixelformat,
+ unsigned int pitch, dma_addr_t mem[2],
+ const struct v4l2_rect *src,
+ const struct v4l2_rect *dst)
+{
+ return 0;
+}
+static inline int vsp1_du_atomic_flush(struct device *dev)
+{
+ return 0;
+}
+
+#endif
#endif /* __MEDIA_VSP1_H__ */
next reply other threads:[~2015-10-15 7:11 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-15 7:11 Magnus Damm [this message]
2015-10-15 7:16 ` [PATCH/RFC] Simplify Gen3 DU and VSP Kconfig bits Laurent Pinchart
2015-10-15 7:57 ` Magnus Damm
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20151015071120.11093.50169.sendpatchset@little-apple \
--to=magnus.damm@gmail.com \
--cc=linux-sh@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.