From patchwork Mon Aug 19 23:03:02 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Stultz X-Patchwork-Id: 171735 Delivered-To: patches@linaro.org Received: by 2002:a92:d204:0:0:0:0:0 with SMTP id y4csp3595781ily; Mon, 19 Aug 2019 16:03:34 -0700 (PDT) X-Received: by 2002:a62:35c6:: with SMTP id c189mr26731121pfa.96.1566255814832; Mon, 19 Aug 2019 16:03:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1566255814; cv=none; d=google.com; s=arc-20160816; b=SbSiMOCrCS4Hh8/rkkS5QnUjbREfqCsCUeHs2bJlouIkGNO9VqGfuTmGqRCklmxjCt Ktu3ugvciZCgwKXobTUmfHXyuMr8dp9f34CZeHgQ4MllZqvMMOnSRMjQnBnNKkEFyUb/ eiqf8aiwWwuJ5qhSpWuZ2WQx/+0fABFxTH1RyV5t37FyciRsfMLgJ/LglgVvxY0TxRAf cjmYCodRibOSAGUKEv0dQS4QvbukQkHV4mnTa0bXVHzrE24HQYLjAHYXHq+X0YIB2Xhh GEFCdMJxXgBbv1BFUmu58WClSVIfJvWrmY6ODoJNdQjrWHhOiYRh+lzA2gjO2yzkiyh0 TEyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=wDN5Qh2/00dJZLoF3M4SXeIuODTG/TUr5/kEaW32ueQ=; b=PbruDQTk1YvmyR4nolIlWaqnK88Q82EQrDVRwjAvdtBefrWfHyWjP8tq3ybbtvIm0m OkXUCrOxhYozP0foOegmVwJgqYh4NUylcw7qeroevFSHM+S63IG+aWZVcQhe2+NjCvDA MnnnODEmjuZU4Ckd+xpC+3wiFw5dQGy65Xgw9DWz9Oy3JDWA4SNfyiKM1BvRRF2c22Is VpK/f+0LZBsQrScaIRYWf4OyzYcuHFBm9bKmRf9FYE/fxM1DWtoOEOkBEDAEv1L7J4Np SI/asdAZNkiEAanKUAkwbzEAt2Oy2QpNySS5E0jRck5jIvtuYZRgDZwAWhx/2LD84f/y smpQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S91jDQRL; spf=pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.stultz@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id p9sor2590262plr.10.2019.08.19.16.03.34 for (Google Transport Security); Mon, 19 Aug 2019 16:03:34 -0700 (PDT) Received-SPF: pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=S91jDQRL; spf=pass (google.com: domain of john.stultz@linaro.org designates 209.85.220.65 as permitted sender) smtp.mailfrom=john.stultz@linaro.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=wDN5Qh2/00dJZLoF3M4SXeIuODTG/TUr5/kEaW32ueQ=; b=S91jDQRL9jZ6o61WERsOkpAq735GpQEx7mzFBahSeaojGWei75IuZ9lEJt4JNDB4DJ +Qr5LZTcdcOTP03dWfYoRxmJzhUpATZIidl+Naurvc/3Q2fryCIrFfafS/lqf2LolT4E A76Sttwj2xZ3n54YuwLd0LWJWdK+zXNK9GTuP3CTxChgWfDk2OvIwmmSGRID53MVITfx vIdJ3NxIZn0Vjp9j6CK/9L/jFys6iXz0o6uZHqRTYTk3BX0/J6WRPvarOgOD+HooDfgd YtwB9UT/PQ2R0S/HDKJn8m7SqFfUUSUzSA60L9yxxlSSs0IP7CoLYWmdrzq6ZuA5zmd5 YbJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=wDN5Qh2/00dJZLoF3M4SXeIuODTG/TUr5/kEaW32ueQ=; b=d+PVNCC7ybxSZrLLS+/4CmOs355DCT/5WdyxGMX6WZNh/xPWSJc61zvtzpb97tLpaV 3KiKkFuW6wffL3cxzTsFyxDCAg7f5pF4AYlgEwck9e+hVo39Dp4J/poOrN6x0M1Nz+Ex JJ3fmt2gwFKZ41car767S22W0cnJYUaXOw5zbEMEvVZoPqJOxc7r0/jEJppL6qP7OLSQ qM6UD0RFNzdzEvQsFOk6EEsmbbzg1f6cZA7IbjKZcjY8w4cEtTyR1sbBxLzhBOYEFx4A RQojQ4XakOaFq4rNCtE8ilgSRVoAQNbylhjHpfCmItAIypiVVTie74uP1WY6wrKEb3Bt UKqQ== X-Gm-Message-State: APjAAAVGEJ0vtMvLPNZYT9e8nJoE2zNrv4lR56fxBrryJP8mg7HSQ9dd GObGKOFrhj+iG9dfZV1aoCCTtWyB X-Google-Smtp-Source: APXvYqwFdxnlTiQNtFl98XWDzM4ANhPbVaXntyLUFZXzFhZG7o1TCYiMLoHN+uSOuXSnAf8SCO07Iw== X-Received: by 2002:a17:902:bb94:: with SMTP id m20mr24644877pls.336.1566255814406; Mon, 19 Aug 2019 16:03:34 -0700 (PDT) Return-Path: Received: from localhost.localdomain ([2601:1c2:680:1319:692:26ff:feda:3a81]) by smtp.gmail.com with ESMTPSA id j15sm17256509pfr.146.2019.08.19.16.03.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 19 Aug 2019 16:03:33 -0700 (PDT) From: John Stultz To: lkml Cc: Xu YiPing , Rongrong Zou , Xinliang Liu , David Airlie , Daniel Vetter , dri-devel , Sam Ravnborg , John Stultz Subject: [PATCH v4 06/25] drm: kirin: Rename ade_plane to kirin_plane Date: Mon, 19 Aug 2019 23:03:02 +0000 Message-Id: <20190819230321.56480-7-john.stultz@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190819230321.56480-1-john.stultz@linaro.org> References: <20190819230321.56480-1-john.stultz@linaro.org> From: Xu YiPing As part of refactoring the kirin driver to better support different hardware revisions, this patch renames the struct ade_plane to kirin_plane. The struct kirin_plane will later used by both kirin620 and future kirin960 driver, and will be moved to a common kirin_drm_drv.h in a future patch Cc: Rongrong Zou Cc: Xinliang Liu Cc: David Airlie Cc: Daniel Vetter Cc: dri-devel Cc: Sam Ravnborg Acked-by: Xinliang Liu Reviewed-by: Sam Ravnborg Signed-off-by: Xu YiPing [jstultz: reworded commit message] Signed-off-by: John Stultz --- .../gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 57 ++++++++++--------- 1 file changed, 29 insertions(+), 28 deletions(-) -- 2.17.1 diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c index 65f1a57f7304..19d279167694 100644 --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c @@ -41,8 +41,9 @@ #define to_ade_crtc(crtc) \ container_of(crtc, struct ade_crtc, base) -#define to_ade_plane(plane) \ - container_of(plane, struct ade_plane, base) +#define to_kirin_plane(plane) \ + container_of(plane, struct kirin_plane, base) + struct ade_hw_ctx { void __iomem *base; @@ -62,15 +63,15 @@ struct ade_crtc { bool enable; }; -struct ade_plane { +struct kirin_plane { struct drm_plane base; - void *ctx; - u8 ch; /* channel */ + void *hw_ctx; + u32 ch; }; struct ade_data { struct ade_crtc acrtc; - struct ade_plane aplane[ADE_CH_NUM]; + struct kirin_plane planes[ADE_CH_NUM]; struct ade_hw_ctx ctx; }; @@ -795,16 +796,16 @@ static void ade_compositor_routing_disable(void __iomem *base, u32 ch) /* * Typicaly, a channel looks like: DMA-->clip-->scale-->ctrans-->compositor */ -static void ade_update_channel(struct ade_plane *aplane, +static void ade_update_channel(struct kirin_plane *kplane, struct drm_framebuffer *fb, int crtc_x, int crtc_y, unsigned int crtc_w, unsigned int crtc_h, u32 src_x, u32 src_y, u32 src_w, u32 src_h) { - struct ade_hw_ctx *ctx = aplane->ctx; + struct ade_hw_ctx *ctx = kplane->hw_ctx; void __iomem *base = ctx->base; u32 fmt = ade_get_format(fb->format->format); - u32 ch = aplane->ch; + u32 ch = kplane->ch; u32 in_w; u32 in_h; @@ -828,11 +829,11 @@ static void ade_update_channel(struct ade_plane *aplane, ade_compositor_routing_set(base, ch, crtc_x, crtc_y, in_w, in_h, fmt); } -static void ade_disable_channel(struct ade_plane *aplane) +static void ade_disable_channel(struct kirin_plane *kplane) { - struct ade_hw_ctx *ctx = aplane->ctx; + struct ade_hw_ctx *ctx = kplane->hw_ctx; void __iomem *base = ctx->base; - u32 ch = aplane->ch; + u32 ch = kplane->ch; DRM_DEBUG_DRIVER("disable channel%d\n", ch + 1); @@ -894,10 +895,10 @@ static int ade_plane_atomic_check(struct drm_plane *plane, static void ade_plane_atomic_update(struct drm_plane *plane, struct drm_plane_state *old_state) { - struct drm_plane_state *state = plane->state; - struct ade_plane *aplane = to_ade_plane(plane); + struct drm_plane_state *state = plane->state; + struct kirin_plane *kplane = to_kirin_plane(plane); - ade_update_channel(aplane, state->fb, state->crtc_x, state->crtc_y, + ade_update_channel(kplane, state->fb, state->crtc_x, state->crtc_y, state->crtc_w, state->crtc_h, state->src_x >> 16, state->src_y >> 16, state->src_w >> 16, state->src_h >> 16); @@ -906,9 +907,9 @@ static void ade_plane_atomic_update(struct drm_plane *plane, static void ade_plane_atomic_disable(struct drm_plane *plane, struct drm_plane_state *old_state) { - struct ade_plane *aplane = to_ade_plane(plane); + struct kirin_plane *kplane = to_kirin_plane(plane); - ade_disable_channel(aplane); + ade_disable_channel(kplane); } static const struct drm_plane_helper_funcs ade_plane_helper_funcs = { @@ -926,7 +927,7 @@ static struct drm_plane_funcs ade_plane_funcs = { .atomic_destroy_state = drm_atomic_helper_plane_destroy_state, }; -static int ade_plane_init(struct drm_device *dev, struct ade_plane *aplane, +static int ade_plane_init(struct drm_device *dev, struct kirin_plane *kplane, enum drm_plane_type type) { const u32 *fmts; @@ -934,18 +935,18 @@ static int ade_plane_init(struct drm_device *dev, struct ade_plane *aplane, int ret = 0; /* get properties */ - fmts_cnt = ade_get_channel_formats(aplane->ch, &fmts); + fmts_cnt = ade_get_channel_formats(kplane->ch, &fmts); if (ret) return ret; - ret = drm_universal_plane_init(dev, &aplane->base, 1, &ade_plane_funcs, + ret = drm_universal_plane_init(dev, &kplane->base, 1, &ade_plane_funcs, fmts, fmts_cnt, NULL, type, NULL); if (ret) { - DRM_ERROR("fail to init plane, ch=%d\n", aplane->ch); + DRM_ERROR("fail to init plane, ch=%d\n", kplane->ch); return ret; } - drm_plane_helper_add(&aplane->base, &ade_plane_helper_funcs); + drm_plane_helper_add(&kplane->base, &ade_plane_helper_funcs); return 0; } @@ -1007,7 +1008,7 @@ static int ade_drm_init(struct platform_device *pdev) struct ade_data *ade; struct ade_hw_ctx *ctx; struct ade_crtc *acrtc; - struct ade_plane *aplane; + struct kirin_plane *kplane; enum drm_plane_type type; int ret; int i; @@ -1033,19 +1034,19 @@ static int ade_drm_init(struct platform_device *pdev) * need to do. */ for (i = 0; i < ADE_CH_NUM; i++) { - aplane = &ade->aplane[i]; - aplane->ch = i; - aplane->ctx = ctx; + kplane = &ade->planes[i]; + kplane->ch = i; + kplane->hw_ctx = ctx; type = i == PRIMARY_CH ? DRM_PLANE_TYPE_PRIMARY : DRM_PLANE_TYPE_OVERLAY; - ret = ade_plane_init(dev, aplane, type); + ret = ade_plane_init(dev, kplane, type); if (ret) return ret; } /* crtc init */ - ret = ade_crtc_init(dev, &acrtc->base, &ade->aplane[PRIMARY_CH].base); + ret = ade_crtc_init(dev, &acrtc->base, &ade->planes[PRIMARY_CH].base); if (ret) return ret;