From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753585AbcHQRWT (ORCPT ); Wed, 17 Aug 2016 13:22:19 -0400 Received: from mail-pf0-f179.google.com ([209.85.192.179]:35642 "EHLO mail-pf0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752340AbcHQRV0 (ORCPT ); Wed, 17 Aug 2016 13:21:26 -0400 From: Sean Paul To: tfiga@chromium.org, dri-devel@lists.freedesktop.org, mark.yao@rock-chips.com Cc: linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, heiko@sntech.de, Sean Paul Subject: [PATCH v3 1/5] drm/rockchip: sort registers define by chip's number Date: Wed, 17 Aug 2016 10:20:52 -0700 Message-Id: <1471454452-2151-1-git-send-email-seanpaul@chromium.org> X-Mailer: git-send-email 2.8.0.rc3.226.g39d4020 In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Mark Yao No functional changes, sort the vop registers to make code more readable. Signed-off-by: Mark Yao [seanpaul resolved conflict with name change from _3066 to _3036] Signed-off-by: Sean Paul --- Changes in v3: - Fix typo from _3066 _3036 (Tomasz Figa) drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 168 ++++++++++++++-------------- 1 file changed, 84 insertions(+), 84 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c index 919992c..44caf14 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -50,6 +50,88 @@ static const uint32_t formats_win_lite[] = { DRM_FORMAT_BGR565, }; +static const struct vop_scl_regs rk3036_win_scl = { + .scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0), + .scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16), + .scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0), + .scale_cbcr_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 16), +}; + +static const struct vop_win_phy rk3036_win0_data = { + .scl = &rk3036_win_scl, + .data_formats = formats_win_full, + .nformats = ARRAY_SIZE(formats_win_full), + .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0), + .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 3), + .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 15), + .act_info = VOP_REG(RK3036_WIN0_ACT_INFO, 0x1fff1fff, 0), + .dsp_info = VOP_REG(RK3036_WIN0_DSP_INFO, 0x0fff0fff, 0), + .dsp_st = VOP_REG(RK3036_WIN0_DSP_ST, 0x1fff1fff, 0), + .yrgb_mst = VOP_REG(RK3036_WIN0_YRGB_MST, 0xffffffff, 0), + .uv_mst = VOP_REG(RK3036_WIN0_CBR_MST, 0xffffffff, 0), + .yrgb_vir = VOP_REG(RK3036_WIN0_VIR, 0xffff, 0), + .uv_vir = VOP_REG(RK3036_WIN0_VIR, 0x1fff, 16), +}; + +static const struct vop_win_phy rk3036_win1_data = { + .data_formats = formats_win_lite, + .nformats = ARRAY_SIZE(formats_win_lite), + .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 1), + .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 6), + .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 19), + .act_info = VOP_REG(RK3036_WIN1_ACT_INFO, 0x1fff1fff, 0), + .dsp_info = VOP_REG(RK3036_WIN1_DSP_INFO, 0x0fff0fff, 0), + .dsp_st = VOP_REG(RK3036_WIN1_DSP_ST, 0x1fff1fff, 0), + .yrgb_mst = VOP_REG(RK3036_WIN1_MST, 0xffffffff, 0), + .yrgb_vir = VOP_REG(RK3036_WIN1_VIR, 0xffff, 0), +}; + +static const struct vop_win_data rk3036_vop_win_data[] = { + { .base = 0x00, .phy = &rk3036_win0_data, + .type = DRM_PLANE_TYPE_PRIMARY }, + { .base = 0x00, .phy = &rk3036_win1_data, + .type = DRM_PLANE_TYPE_CURSOR }, +}; + +static const int rk3036_vop_intrs[] = { + DSP_HOLD_VALID_INTR, + FS_INTR, + LINE_FLAG_INTR, + BUS_ERROR_INTR, +}; + +static const struct vop_intr rk3036_intr = { + .intrs = rk3036_vop_intrs, + .nintrs = ARRAY_SIZE(rk3036_vop_intrs), + .status = VOP_REG(RK3036_INT_STATUS, 0xf, 0), + .enable = VOP_REG(RK3036_INT_STATUS, 0xf, 4), + .clear = VOP_REG(RK3036_INT_STATUS, 0xf, 8), +}; + +static const struct vop_ctrl rk3036_ctrl_data = { + .standby = VOP_REG(RK3036_SYS_CTRL, 0x1, 30), + .out_mode = VOP_REG(RK3036_DSP_CTRL0, 0xf, 0), + .pin_pol = VOP_REG(RK3036_DSP_CTRL0, 0xf, 4), + .htotal_pw = VOP_REG(RK3036_DSP_HTOTAL_HS_END, 0x1fff1fff, 0), + .hact_st_end = VOP_REG(RK3036_DSP_HACT_ST_END, 0x1fff1fff, 0), + .vtotal_pw = VOP_REG(RK3036_DSP_VTOTAL_VS_END, 0x1fff1fff, 0), + .vact_st_end = VOP_REG(RK3036_DSP_VACT_ST_END, 0x1fff1fff, 0), + .cfg_done = VOP_REG(RK3036_REG_CFG_DONE, 0x1, 0), +}; + +static const struct vop_reg_data rk3036_vop_init_reg_table[] = { + {RK3036_DSP_CTRL1, 0x00000000}, +}; + +static const struct vop_data rk3036_vop = { + .init_table = rk3036_vop_init_reg_table, + .table_size = ARRAY_SIZE(rk3036_vop_init_reg_table), + .ctrl = &rk3036_ctrl_data, + .intr = &rk3036_intr, + .win = rk3036_vop_win_data, + .win_size = ARRAY_SIZE(rk3036_vop_win_data), +}; + static const struct vop_scl_extension rk3288_win_full_scl_ext = { .cbcr_vsd_mode = VOP_REG(RK3288_WIN0_CTRL1, 0x1, 31), .cbcr_vsu_mode = VOP_REG(RK3288_WIN0_CTRL1, 0x1, 30), @@ -190,93 +272,11 @@ static const struct vop_data rk3288_vop = { .win_size = ARRAY_SIZE(rk3288_vop_win_data), }; -static const struct vop_scl_regs rk3036_win_scl = { - .scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0), - .scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16), - .scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0), - .scale_cbcr_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 16), -}; - -static const struct vop_win_phy rk3036_win0_data = { - .scl = &rk3036_win_scl, - .data_formats = formats_win_full, - .nformats = ARRAY_SIZE(formats_win_full), - .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0), - .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 3), - .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 15), - .act_info = VOP_REG(RK3036_WIN0_ACT_INFO, 0x1fff1fff, 0), - .dsp_info = VOP_REG(RK3036_WIN0_DSP_INFO, 0x0fff0fff, 0), - .dsp_st = VOP_REG(RK3036_WIN0_DSP_ST, 0x1fff1fff, 0), - .yrgb_mst = VOP_REG(RK3036_WIN0_YRGB_MST, 0xffffffff, 0), - .uv_mst = VOP_REG(RK3036_WIN0_CBR_MST, 0xffffffff, 0), - .yrgb_vir = VOP_REG(RK3036_WIN0_VIR, 0xffff, 0), - .uv_vir = VOP_REG(RK3036_WIN0_VIR, 0x1fff, 16), -}; - -static const struct vop_win_phy rk3036_win1_data = { - .data_formats = formats_win_lite, - .nformats = ARRAY_SIZE(formats_win_lite), - .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 1), - .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 6), - .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 19), - .act_info = VOP_REG(RK3036_WIN1_ACT_INFO, 0x1fff1fff, 0), - .dsp_info = VOP_REG(RK3036_WIN1_DSP_INFO, 0x0fff0fff, 0), - .dsp_st = VOP_REG(RK3036_WIN1_DSP_ST, 0x1fff1fff, 0), - .yrgb_mst = VOP_REG(RK3036_WIN1_MST, 0xffffffff, 0), - .yrgb_vir = VOP_REG(RK3036_WIN1_VIR, 0xffff, 0), -}; - -static const struct vop_win_data rk3036_vop_win_data[] = { - { .base = 0x00, .phy = &rk3036_win0_data, - .type = DRM_PLANE_TYPE_PRIMARY }, - { .base = 0x00, .phy = &rk3036_win1_data, - .type = DRM_PLANE_TYPE_CURSOR }, -}; - -static const int rk3036_vop_intrs[] = { - DSP_HOLD_VALID_INTR, - FS_INTR, - LINE_FLAG_INTR, - BUS_ERROR_INTR, -}; - -static const struct vop_intr rk3036_intr = { - .intrs = rk3036_vop_intrs, - .nintrs = ARRAY_SIZE(rk3036_vop_intrs), - .status = VOP_REG(RK3036_INT_STATUS, 0xf, 0), - .enable = VOP_REG(RK3036_INT_STATUS, 0xf, 4), - .clear = VOP_REG(RK3036_INT_STATUS, 0xf, 8), -}; - -static const struct vop_ctrl rk3036_ctrl_data = { - .standby = VOP_REG(RK3036_SYS_CTRL, 0x1, 30), - .out_mode = VOP_REG(RK3036_DSP_CTRL0, 0xf, 0), - .pin_pol = VOP_REG(RK3036_DSP_CTRL0, 0xf, 4), - .htotal_pw = VOP_REG(RK3036_DSP_HTOTAL_HS_END, 0x1fff1fff, 0), - .hact_st_end = VOP_REG(RK3036_DSP_HACT_ST_END, 0x1fff1fff, 0), - .vtotal_pw = VOP_REG(RK3036_DSP_VTOTAL_VS_END, 0x1fff1fff, 0), - .vact_st_end = VOP_REG(RK3036_DSP_VACT_ST_END, 0x1fff1fff, 0), - .cfg_done = VOP_REG(RK3036_REG_CFG_DONE, 0x1, 0), -}; - -static const struct vop_reg_data rk3036_vop_init_reg_table[] = { - {RK3036_DSP_CTRL1, 0x00000000}, -}; - -static const struct vop_data rk3036_vop = { - .init_table = rk3036_vop_init_reg_table, - .table_size = ARRAY_SIZE(rk3036_vop_init_reg_table), - .ctrl = &rk3036_ctrl_data, - .intr = &rk3036_intr, - .win = rk3036_vop_win_data, - .win_size = ARRAY_SIZE(rk3036_vop_win_data), -}; - static const struct of_device_id vop_driver_dt_match[] = { - { .compatible = "rockchip,rk3288-vop", - .data = &rk3288_vop }, { .compatible = "rockchip,rk3036-vop", .data = &rk3036_vop }, + { .compatible = "rockchip,rk3288-vop", + .data = &rk3288_vop }, {}, }; MODULE_DEVICE_TABLE(of, vop_driver_dt_match); -- 2.8.0.rc3.226.g39d4020 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: [PATCH v3 1/5] drm/rockchip: sort registers define by chip's number Date: Wed, 17 Aug 2016 10:20:52 -0700 Message-ID: <1471454452-2151-1-git-send-email-seanpaul@chromium.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: tfiga@chromium.org, dri-devel@lists.freedesktop.org, mark.yao@rock-chips.com Cc: linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org List-Id: linux-rockchip.vger.kernel.org RnJvbTogTWFyayBZYW8gPG1hcmsueWFvQHJvY2stY2hpcHMuY29tPgoKTm8gZnVuY3Rpb25hbCBj aGFuZ2VzLCBzb3J0IHRoZSB2b3AgcmVnaXN0ZXJzIHRvIG1ha2UKY29kZSBtb3JlIHJlYWRhYmxl LgoKU2lnbmVkLW9mZi1ieTogTWFyayBZYW8gPG1hcmsueWFvQHJvY2stY2hpcHMuY29tPgpbc2Vh bnBhdWwgcmVzb2x2ZWQgY29uZmxpY3Qgd2l0aCBuYW1lIGNoYW5nZSBmcm9tIF8zMDY2IHRvIF8z MDM2XQpTaWduZWQtb2ZmLWJ5OiBTZWFuIFBhdWwgPHNlYW5wYXVsQGNocm9taXVtLm9yZz4KLS0t CgpDaGFuZ2VzIGluIHYzOgoJLSBGaXggdHlwbyBmcm9tIF8zMDY2IF8zMDM2IChUb21hc3ogRmln YSkKCiBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfdm9wX3JlZy5jIHwgMTY4ICsr KysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA4NCBpbnNlcnRpb25z KCspLCA4NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2No aXAvcm9ja2NoaXBfdm9wX3JlZy5jIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlw X3ZvcF9yZWcuYwppbmRleCA5MTk5OTJjLi40NGNhZjE0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfdm9wX3JlZy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9yb2NrY2hpcF92b3BfcmVnLmMKQEAgLTUwLDYgKzUwLDg4IEBAIHN0YXRpYyBjb25z dCB1aW50MzJfdCBmb3JtYXRzX3dpbl9saXRlW10gPSB7CiAJRFJNX0ZPUk1BVF9CR1I1NjUsCiB9 OwogCitzdGF0aWMgY29uc3Qgc3RydWN0IHZvcF9zY2xfcmVncyByazMwMzZfd2luX3NjbCA9IHsK Kwkuc2NhbGVfeXJnYl94ID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9TQ0xfRkFDVE9SX1lSR0IsIDB4 ZmZmZiwgMHgwKSwKKwkuc2NhbGVfeXJnYl95ID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9TQ0xfRkFD VE9SX1lSR0IsIDB4ZmZmZiwgMTYpLAorCS5zY2FsZV9jYmNyX3ggPSBWT1BfUkVHKFJLMzAzNl9X SU4wX1NDTF9GQUNUT1JfQ0JSLCAweGZmZmYsIDB4MCksCisJLnNjYWxlX2NiY3JfeSA9IFZPUF9S RUcoUkszMDM2X1dJTjBfU0NMX0ZBQ1RPUl9DQlIsIDB4ZmZmZiwgMTYpLAorfTsKKworc3RhdGlj IGNvbnN0IHN0cnVjdCB2b3Bfd2luX3BoeSByazMwMzZfd2luMF9kYXRhID0geworCS5zY2wgPSAm cmszMDM2X3dpbl9zY2wsCisJLmRhdGFfZm9ybWF0cyA9IGZvcm1hdHNfd2luX2Z1bGwsCisJLm5m b3JtYXRzID0gQVJSQVlfU0laRShmb3JtYXRzX3dpbl9mdWxsKSwKKwkuZW5hYmxlID0gVk9QX1JF RyhSSzMwMzZfU1lTX0NUUkwsIDB4MSwgMCksCisJLmZvcm1hdCA9IFZPUF9SRUcoUkszMDM2X1NZ U19DVFJMLCAweDcsIDMpLAorCS5yYl9zd2FwID0gVk9QX1JFRyhSSzMwMzZfU1lTX0NUUkwsIDB4 MSwgMTUpLAorCS5hY3RfaW5mbyA9IFZPUF9SRUcoUkszMDM2X1dJTjBfQUNUX0lORk8sIDB4MWZm ZjFmZmYsIDApLAorCS5kc3BfaW5mbyA9IFZPUF9SRUcoUkszMDM2X1dJTjBfRFNQX0lORk8sIDB4 MGZmZjBmZmYsIDApLAorCS5kc3Bfc3QgPSBWT1BfUkVHKFJLMzAzNl9XSU4wX0RTUF9TVCwgMHgx ZmZmMWZmZiwgMCksCisJLnlyZ2JfbXN0ID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9ZUkdCX01TVCwg MHhmZmZmZmZmZiwgMCksCisJLnV2X21zdCA9IFZPUF9SRUcoUkszMDM2X1dJTjBfQ0JSX01TVCwg MHhmZmZmZmZmZiwgMCksCisJLnlyZ2JfdmlyID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9WSVIsIDB4 ZmZmZiwgMCksCisJLnV2X3ZpciA9IFZPUF9SRUcoUkszMDM2X1dJTjBfVklSLCAweDFmZmYsIDE2 KSwKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgdm9wX3dpbl9waHkgcmszMDM2X3dpbjFfZGF0 YSA9IHsKKwkuZGF0YV9mb3JtYXRzID0gZm9ybWF0c193aW5fbGl0ZSwKKwkubmZvcm1hdHMgPSBB UlJBWV9TSVpFKGZvcm1hdHNfd2luX2xpdGUpLAorCS5lbmFibGUgPSBWT1BfUkVHKFJLMzAzNl9T WVNfQ1RSTCwgMHgxLCAxKSwKKwkuZm9ybWF0ID0gVk9QX1JFRyhSSzMwMzZfU1lTX0NUUkwsIDB4 NywgNiksCisJLnJiX3N3YXAgPSBWT1BfUkVHKFJLMzAzNl9TWVNfQ1RSTCwgMHgxLCAxOSksCisJ LmFjdF9pbmZvID0gVk9QX1JFRyhSSzMwMzZfV0lOMV9BQ1RfSU5GTywgMHgxZmZmMWZmZiwgMCks CisJLmRzcF9pbmZvID0gVk9QX1JFRyhSSzMwMzZfV0lOMV9EU1BfSU5GTywgMHgwZmZmMGZmZiwg MCksCisJLmRzcF9zdCA9IFZPUF9SRUcoUkszMDM2X1dJTjFfRFNQX1NULCAweDFmZmYxZmZmLCAw KSwKKwkueXJnYl9tc3QgPSBWT1BfUkVHKFJLMzAzNl9XSU4xX01TVCwgMHhmZmZmZmZmZiwgMCks CisJLnlyZ2JfdmlyID0gVk9QX1JFRyhSSzMwMzZfV0lOMV9WSVIsIDB4ZmZmZiwgMCksCit9Owor CitzdGF0aWMgY29uc3Qgc3RydWN0IHZvcF93aW5fZGF0YSByazMwMzZfdm9wX3dpbl9kYXRhW10g PSB7CisJeyAuYmFzZSA9IDB4MDAsIC5waHkgPSAmcmszMDM2X3dpbjBfZGF0YSwKKwkgIC50eXBl ID0gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSB9LAorCXsgLmJhc2UgPSAweDAwLCAucGh5ID0gJnJr MzAzNl93aW4xX2RhdGEsCisJICAudHlwZSA9IERSTV9QTEFORV9UWVBFX0NVUlNPUiB9LAorfTsK Kworc3RhdGljIGNvbnN0IGludCByazMwMzZfdm9wX2ludHJzW10gPSB7CisJRFNQX0hPTERfVkFM SURfSU5UUiwKKwlGU19JTlRSLAorCUxJTkVfRkxBR19JTlRSLAorCUJVU19FUlJPUl9JTlRSLAor fTsKKworc3RhdGljIGNvbnN0IHN0cnVjdCB2b3BfaW50ciByazMwMzZfaW50ciA9IHsKKwkuaW50 cnMgPSByazMwMzZfdm9wX2ludHJzLAorCS5uaW50cnMgPSBBUlJBWV9TSVpFKHJrMzAzNl92b3Bf aW50cnMpLAorCS5zdGF0dXMgPSBWT1BfUkVHKFJLMzAzNl9JTlRfU1RBVFVTLCAweGYsIDApLAor CS5lbmFibGUgPSBWT1BfUkVHKFJLMzAzNl9JTlRfU1RBVFVTLCAweGYsIDQpLAorCS5jbGVhciA9 IFZPUF9SRUcoUkszMDM2X0lOVF9TVEFUVVMsIDB4ZiwgOCksCit9OworCitzdGF0aWMgY29uc3Qg c3RydWN0IHZvcF9jdHJsIHJrMzAzNl9jdHJsX2RhdGEgPSB7CisJLnN0YW5kYnkgPSBWT1BfUkVH KFJLMzAzNl9TWVNfQ1RSTCwgMHgxLCAzMCksCisJLm91dF9tb2RlID0gVk9QX1JFRyhSSzMwMzZf RFNQX0NUUkwwLCAweGYsIDApLAorCS5waW5fcG9sID0gVk9QX1JFRyhSSzMwMzZfRFNQX0NUUkww LCAweGYsIDQpLAorCS5odG90YWxfcHcgPSBWT1BfUkVHKFJLMzAzNl9EU1BfSFRPVEFMX0hTX0VO RCwgMHgxZmZmMWZmZiwgMCksCisJLmhhY3Rfc3RfZW5kID0gVk9QX1JFRyhSSzMwMzZfRFNQX0hB Q1RfU1RfRU5ELCAweDFmZmYxZmZmLCAwKSwKKwkudnRvdGFsX3B3ID0gVk9QX1JFRyhSSzMwMzZf RFNQX1ZUT1RBTF9WU19FTkQsIDB4MWZmZjFmZmYsIDApLAorCS52YWN0X3N0X2VuZCA9IFZPUF9S RUcoUkszMDM2X0RTUF9WQUNUX1NUX0VORCwgMHgxZmZmMWZmZiwgMCksCisJLmNmZ19kb25lID0g Vk9QX1JFRyhSSzMwMzZfUkVHX0NGR19ET05FLCAweDEsIDApLAorfTsKKworc3RhdGljIGNvbnN0 IHN0cnVjdCB2b3BfcmVnX2RhdGEgcmszMDM2X3ZvcF9pbml0X3JlZ190YWJsZVtdID0geworCXtS SzMwMzZfRFNQX0NUUkwxLCAweDAwMDAwMDAwfSwKK307CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg dm9wX2RhdGEgcmszMDM2X3ZvcCA9IHsKKwkuaW5pdF90YWJsZSA9IHJrMzAzNl92b3BfaW5pdF9y ZWdfdGFibGUsCisJLnRhYmxlX3NpemUgPSBBUlJBWV9TSVpFKHJrMzAzNl92b3BfaW5pdF9yZWdf dGFibGUpLAorCS5jdHJsID0gJnJrMzAzNl9jdHJsX2RhdGEsCisJLmludHIgPSAmcmszMDM2X2lu dHIsCisJLndpbiA9IHJrMzAzNl92b3Bfd2luX2RhdGEsCisJLndpbl9zaXplID0gQVJSQVlfU0la RShyazMwMzZfdm9wX3dpbl9kYXRhKSwKK307CisKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgdm9wX3Nj bF9leHRlbnNpb24gcmszMjg4X3dpbl9mdWxsX3NjbF9leHQgPSB7CiAJLmNiY3JfdnNkX21vZGUg PSBWT1BfUkVHKFJLMzI4OF9XSU4wX0NUUkwxLCAweDEsIDMxKSwKIAkuY2Jjcl92c3VfbW9kZSA9 IFZPUF9SRUcoUkszMjg4X1dJTjBfQ1RSTDEsIDB4MSwgMzApLApAQCAtMTkwLDkzICsyNzIsMTEg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCB2b3BfZGF0YSByazMyODhfdm9wID0gewogCS53aW5fc2l6 ZSA9IEFSUkFZX1NJWkUocmszMjg4X3ZvcF93aW5fZGF0YSksCiB9OwogCi1zdGF0aWMgY29uc3Qg c3RydWN0IHZvcF9zY2xfcmVncyByazMwMzZfd2luX3NjbCA9IHsKLQkuc2NhbGVfeXJnYl94ID0g Vk9QX1JFRyhSSzMwMzZfV0lOMF9TQ0xfRkFDVE9SX1lSR0IsIDB4ZmZmZiwgMHgwKSwKLQkuc2Nh bGVfeXJnYl95ID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9TQ0xfRkFDVE9SX1lSR0IsIDB4ZmZmZiwg MTYpLAotCS5zY2FsZV9jYmNyX3ggPSBWT1BfUkVHKFJLMzAzNl9XSU4wX1NDTF9GQUNUT1JfQ0JS LCAweGZmZmYsIDB4MCksCi0JLnNjYWxlX2NiY3JfeSA9IFZPUF9SRUcoUkszMDM2X1dJTjBfU0NM X0ZBQ1RPUl9DQlIsIDB4ZmZmZiwgMTYpLAotfTsKLQotc3RhdGljIGNvbnN0IHN0cnVjdCB2b3Bf d2luX3BoeSByazMwMzZfd2luMF9kYXRhID0gewotCS5zY2wgPSAmcmszMDM2X3dpbl9zY2wsCi0J LmRhdGFfZm9ybWF0cyA9IGZvcm1hdHNfd2luX2Z1bGwsCi0JLm5mb3JtYXRzID0gQVJSQVlfU0la RShmb3JtYXRzX3dpbl9mdWxsKSwKLQkuZW5hYmxlID0gVk9QX1JFRyhSSzMwMzZfU1lTX0NUUkws IDB4MSwgMCksCi0JLmZvcm1hdCA9IFZPUF9SRUcoUkszMDM2X1NZU19DVFJMLCAweDcsIDMpLAot CS5yYl9zd2FwID0gVk9QX1JFRyhSSzMwMzZfU1lTX0NUUkwsIDB4MSwgMTUpLAotCS5hY3RfaW5m byA9IFZPUF9SRUcoUkszMDM2X1dJTjBfQUNUX0lORk8sIDB4MWZmZjFmZmYsIDApLAotCS5kc3Bf aW5mbyA9IFZPUF9SRUcoUkszMDM2X1dJTjBfRFNQX0lORk8sIDB4MGZmZjBmZmYsIDApLAotCS5k c3Bfc3QgPSBWT1BfUkVHKFJLMzAzNl9XSU4wX0RTUF9TVCwgMHgxZmZmMWZmZiwgMCksCi0JLnly Z2JfbXN0ID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9ZUkdCX01TVCwgMHhmZmZmZmZmZiwgMCksCi0J LnV2X21zdCA9IFZPUF9SRUcoUkszMDM2X1dJTjBfQ0JSX01TVCwgMHhmZmZmZmZmZiwgMCksCi0J LnlyZ2JfdmlyID0gVk9QX1JFRyhSSzMwMzZfV0lOMF9WSVIsIDB4ZmZmZiwgMCksCi0JLnV2X3Zp ciA9IFZPUF9SRUcoUkszMDM2X1dJTjBfVklSLCAweDFmZmYsIDE2KSwKLX07Ci0KLXN0YXRpYyBj b25zdCBzdHJ1Y3Qgdm9wX3dpbl9waHkgcmszMDM2X3dpbjFfZGF0YSA9IHsKLQkuZGF0YV9mb3Jt YXRzID0gZm9ybWF0c193aW5fbGl0ZSwKLQkubmZvcm1hdHMgPSBBUlJBWV9TSVpFKGZvcm1hdHNf d2luX2xpdGUpLAotCS5lbmFibGUgPSBWT1BfUkVHKFJLMzAzNl9TWVNfQ1RSTCwgMHgxLCAxKSwK LQkuZm9ybWF0ID0gVk9QX1JFRyhSSzMwMzZfU1lTX0NUUkwsIDB4NywgNiksCi0JLnJiX3N3YXAg PSBWT1BfUkVHKFJLMzAzNl9TWVNfQ1RSTCwgMHgxLCAxOSksCi0JLmFjdF9pbmZvID0gVk9QX1JF RyhSSzMwMzZfV0lOMV9BQ1RfSU5GTywgMHgxZmZmMWZmZiwgMCksCi0JLmRzcF9pbmZvID0gVk9Q X1JFRyhSSzMwMzZfV0lOMV9EU1BfSU5GTywgMHgwZmZmMGZmZiwgMCksCi0JLmRzcF9zdCA9IFZP UF9SRUcoUkszMDM2X1dJTjFfRFNQX1NULCAweDFmZmYxZmZmLCAwKSwKLQkueXJnYl9tc3QgPSBW T1BfUkVHKFJLMzAzNl9XSU4xX01TVCwgMHhmZmZmZmZmZiwgMCksCi0JLnlyZ2JfdmlyID0gVk9Q X1JFRyhSSzMwMzZfV0lOMV9WSVIsIDB4ZmZmZiwgMCksCi19OwotCi1zdGF0aWMgY29uc3Qgc3Ry dWN0IHZvcF93aW5fZGF0YSByazMwMzZfdm9wX3dpbl9kYXRhW10gPSB7Ci0JeyAuYmFzZSA9IDB4 MDAsIC5waHkgPSAmcmszMDM2X3dpbjBfZGF0YSwKLQkgIC50eXBlID0gRFJNX1BMQU5FX1RZUEVf UFJJTUFSWSB9LAotCXsgLmJhc2UgPSAweDAwLCAucGh5ID0gJnJrMzAzNl93aW4xX2RhdGEsCi0J ICAudHlwZSA9IERSTV9QTEFORV9UWVBFX0NVUlNPUiB9LAotfTsKLQotc3RhdGljIGNvbnN0IGlu dCByazMwMzZfdm9wX2ludHJzW10gPSB7Ci0JRFNQX0hPTERfVkFMSURfSU5UUiwKLQlGU19JTlRS LAotCUxJTkVfRkxBR19JTlRSLAotCUJVU19FUlJPUl9JTlRSLAotfTsKLQotc3RhdGljIGNvbnN0 IHN0cnVjdCB2b3BfaW50ciByazMwMzZfaW50ciA9IHsKLQkuaW50cnMgPSByazMwMzZfdm9wX2lu dHJzLAotCS5uaW50cnMgPSBBUlJBWV9TSVpFKHJrMzAzNl92b3BfaW50cnMpLAotCS5zdGF0dXMg PSBWT1BfUkVHKFJLMzAzNl9JTlRfU1RBVFVTLCAweGYsIDApLAotCS5lbmFibGUgPSBWT1BfUkVH KFJLMzAzNl9JTlRfU1RBVFVTLCAweGYsIDQpLAotCS5jbGVhciA9IFZPUF9SRUcoUkszMDM2X0lO VF9TVEFUVVMsIDB4ZiwgOCksCi19OwotCi1zdGF0aWMgY29uc3Qgc3RydWN0IHZvcF9jdHJsIHJr MzAzNl9jdHJsX2RhdGEgPSB7Ci0JLnN0YW5kYnkgPSBWT1BfUkVHKFJLMzAzNl9TWVNfQ1RSTCwg MHgxLCAzMCksCi0JLm91dF9tb2RlID0gVk9QX1JFRyhSSzMwMzZfRFNQX0NUUkwwLCAweGYsIDAp LAotCS5waW5fcG9sID0gVk9QX1JFRyhSSzMwMzZfRFNQX0NUUkwwLCAweGYsIDQpLAotCS5odG90 YWxfcHcgPSBWT1BfUkVHKFJLMzAzNl9EU1BfSFRPVEFMX0hTX0VORCwgMHgxZmZmMWZmZiwgMCks Ci0JLmhhY3Rfc3RfZW5kID0gVk9QX1JFRyhSSzMwMzZfRFNQX0hBQ1RfU1RfRU5ELCAweDFmZmYx ZmZmLCAwKSwKLQkudnRvdGFsX3B3ID0gVk9QX1JFRyhSSzMwMzZfRFNQX1ZUT1RBTF9WU19FTkQs IDB4MWZmZjFmZmYsIDApLAotCS52YWN0X3N0X2VuZCA9IFZPUF9SRUcoUkszMDM2X0RTUF9WQUNU X1NUX0VORCwgMHgxZmZmMWZmZiwgMCksCi0JLmNmZ19kb25lID0gVk9QX1JFRyhSSzMwMzZfUkVH X0NGR19ET05FLCAweDEsIDApLAotfTsKLQotc3RhdGljIGNvbnN0IHN0cnVjdCB2b3BfcmVnX2Rh dGEgcmszMDM2X3ZvcF9pbml0X3JlZ190YWJsZVtdID0gewotCXtSSzMwMzZfRFNQX0NUUkwxLCAw eDAwMDAwMDAwfSwKLX07Ci0KLXN0YXRpYyBjb25zdCBzdHJ1Y3Qgdm9wX2RhdGEgcmszMDM2X3Zv cCA9IHsKLQkuaW5pdF90YWJsZSA9IHJrMzAzNl92b3BfaW5pdF9yZWdfdGFibGUsCi0JLnRhYmxl X3NpemUgPSBBUlJBWV9TSVpFKHJrMzAzNl92b3BfaW5pdF9yZWdfdGFibGUpLAotCS5jdHJsID0g JnJrMzAzNl9jdHJsX2RhdGEsCi0JLmludHIgPSAmcmszMDM2X2ludHIsCi0JLndpbiA9IHJrMzAz Nl92b3Bfd2luX2RhdGEsCi0JLndpbl9zaXplID0gQVJSQVlfU0laRShyazMwMzZfdm9wX3dpbl9k YXRhKSwKLX07Ci0KIHN0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIHZvcF9kcml2ZXJf ZHRfbWF0Y2hbXSA9IHsKLQl7IC5jb21wYXRpYmxlID0gInJvY2tjaGlwLHJrMzI4OC12b3AiLAot CSAgLmRhdGEgPSAmcmszMjg4X3ZvcCB9LAogCXsgLmNvbXBhdGlibGUgPSAicm9ja2NoaXAscmsz MDM2LXZvcCIsCiAJICAuZGF0YSA9ICZyazMwMzZfdm9wIH0sCisJeyAuY29tcGF0aWJsZSA9ICJy b2NrY2hpcCxyazMyODgtdm9wIiwKKwkgIC5kYXRhID0gJnJrMzI4OF92b3AgfSwKIAl7fSwKIH07 CiBNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCB2b3BfZHJpdmVyX2R0X21hdGNoKTsKLS0gCjIuOC4w LnJjMy4yMjYuZzM5ZDQwMjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: seanpaul@chromium.org (Sean Paul) Date: Wed, 17 Aug 2016 10:20:52 -0700 Subject: [PATCH v3 1/5] drm/rockchip: sort registers define by chip's number In-Reply-To: References: Message-ID: <1471454452-2151-1-git-send-email-seanpaul@chromium.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org From: Mark Yao No functional changes, sort the vop registers to make code more readable. Signed-off-by: Mark Yao [seanpaul resolved conflict with name change from _3066 to _3036] Signed-off-by: Sean Paul --- Changes in v3: - Fix typo from _3066 _3036 (Tomasz Figa) drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 168 ++++++++++++++-------------- 1 file changed, 84 insertions(+), 84 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c index 919992c..44caf14 100644 --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c @@ -50,6 +50,88 @@ static const uint32_t formats_win_lite[] = { DRM_FORMAT_BGR565, }; +static const struct vop_scl_regs rk3036_win_scl = { + .scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0), + .scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16), + .scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0), + .scale_cbcr_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 16), +}; + +static const struct vop_win_phy rk3036_win0_data = { + .scl = &rk3036_win_scl, + .data_formats = formats_win_full, + .nformats = ARRAY_SIZE(formats_win_full), + .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0), + .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 3), + .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 15), + .act_info = VOP_REG(RK3036_WIN0_ACT_INFO, 0x1fff1fff, 0), + .dsp_info = VOP_REG(RK3036_WIN0_DSP_INFO, 0x0fff0fff, 0), + .dsp_st = VOP_REG(RK3036_WIN0_DSP_ST, 0x1fff1fff, 0), + .yrgb_mst = VOP_REG(RK3036_WIN0_YRGB_MST, 0xffffffff, 0), + .uv_mst = VOP_REG(RK3036_WIN0_CBR_MST, 0xffffffff, 0), + .yrgb_vir = VOP_REG(RK3036_WIN0_VIR, 0xffff, 0), + .uv_vir = VOP_REG(RK3036_WIN0_VIR, 0x1fff, 16), +}; + +static const struct vop_win_phy rk3036_win1_data = { + .data_formats = formats_win_lite, + .nformats = ARRAY_SIZE(formats_win_lite), + .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 1), + .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 6), + .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 19), + .act_info = VOP_REG(RK3036_WIN1_ACT_INFO, 0x1fff1fff, 0), + .dsp_info = VOP_REG(RK3036_WIN1_DSP_INFO, 0x0fff0fff, 0), + .dsp_st = VOP_REG(RK3036_WIN1_DSP_ST, 0x1fff1fff, 0), + .yrgb_mst = VOP_REG(RK3036_WIN1_MST, 0xffffffff, 0), + .yrgb_vir = VOP_REG(RK3036_WIN1_VIR, 0xffff, 0), +}; + +static const struct vop_win_data rk3036_vop_win_data[] = { + { .base = 0x00, .phy = &rk3036_win0_data, + .type = DRM_PLANE_TYPE_PRIMARY }, + { .base = 0x00, .phy = &rk3036_win1_data, + .type = DRM_PLANE_TYPE_CURSOR }, +}; + +static const int rk3036_vop_intrs[] = { + DSP_HOLD_VALID_INTR, + FS_INTR, + LINE_FLAG_INTR, + BUS_ERROR_INTR, +}; + +static const struct vop_intr rk3036_intr = { + .intrs = rk3036_vop_intrs, + .nintrs = ARRAY_SIZE(rk3036_vop_intrs), + .status = VOP_REG(RK3036_INT_STATUS, 0xf, 0), + .enable = VOP_REG(RK3036_INT_STATUS, 0xf, 4), + .clear = VOP_REG(RK3036_INT_STATUS, 0xf, 8), +}; + +static const struct vop_ctrl rk3036_ctrl_data = { + .standby = VOP_REG(RK3036_SYS_CTRL, 0x1, 30), + .out_mode = VOP_REG(RK3036_DSP_CTRL0, 0xf, 0), + .pin_pol = VOP_REG(RK3036_DSP_CTRL0, 0xf, 4), + .htotal_pw = VOP_REG(RK3036_DSP_HTOTAL_HS_END, 0x1fff1fff, 0), + .hact_st_end = VOP_REG(RK3036_DSP_HACT_ST_END, 0x1fff1fff, 0), + .vtotal_pw = VOP_REG(RK3036_DSP_VTOTAL_VS_END, 0x1fff1fff, 0), + .vact_st_end = VOP_REG(RK3036_DSP_VACT_ST_END, 0x1fff1fff, 0), + .cfg_done = VOP_REG(RK3036_REG_CFG_DONE, 0x1, 0), +}; + +static const struct vop_reg_data rk3036_vop_init_reg_table[] = { + {RK3036_DSP_CTRL1, 0x00000000}, +}; + +static const struct vop_data rk3036_vop = { + .init_table = rk3036_vop_init_reg_table, + .table_size = ARRAY_SIZE(rk3036_vop_init_reg_table), + .ctrl = &rk3036_ctrl_data, + .intr = &rk3036_intr, + .win = rk3036_vop_win_data, + .win_size = ARRAY_SIZE(rk3036_vop_win_data), +}; + static const struct vop_scl_extension rk3288_win_full_scl_ext = { .cbcr_vsd_mode = VOP_REG(RK3288_WIN0_CTRL1, 0x1, 31), .cbcr_vsu_mode = VOP_REG(RK3288_WIN0_CTRL1, 0x1, 30), @@ -190,93 +272,11 @@ static const struct vop_data rk3288_vop = { .win_size = ARRAY_SIZE(rk3288_vop_win_data), }; -static const struct vop_scl_regs rk3036_win_scl = { - .scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0), - .scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16), - .scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0), - .scale_cbcr_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 16), -}; - -static const struct vop_win_phy rk3036_win0_data = { - .scl = &rk3036_win_scl, - .data_formats = formats_win_full, - .nformats = ARRAY_SIZE(formats_win_full), - .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0), - .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 3), - .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 15), - .act_info = VOP_REG(RK3036_WIN0_ACT_INFO, 0x1fff1fff, 0), - .dsp_info = VOP_REG(RK3036_WIN0_DSP_INFO, 0x0fff0fff, 0), - .dsp_st = VOP_REG(RK3036_WIN0_DSP_ST, 0x1fff1fff, 0), - .yrgb_mst = VOP_REG(RK3036_WIN0_YRGB_MST, 0xffffffff, 0), - .uv_mst = VOP_REG(RK3036_WIN0_CBR_MST, 0xffffffff, 0), - .yrgb_vir = VOP_REG(RK3036_WIN0_VIR, 0xffff, 0), - .uv_vir = VOP_REG(RK3036_WIN0_VIR, 0x1fff, 16), -}; - -static const struct vop_win_phy rk3036_win1_data = { - .data_formats = formats_win_lite, - .nformats = ARRAY_SIZE(formats_win_lite), - .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 1), - .format = VOP_REG(RK3036_SYS_CTRL, 0x7, 6), - .rb_swap = VOP_REG(RK3036_SYS_CTRL, 0x1, 19), - .act_info = VOP_REG(RK3036_WIN1_ACT_INFO, 0x1fff1fff, 0), - .dsp_info = VOP_REG(RK3036_WIN1_DSP_INFO, 0x0fff0fff, 0), - .dsp_st = VOP_REG(RK3036_WIN1_DSP_ST, 0x1fff1fff, 0), - .yrgb_mst = VOP_REG(RK3036_WIN1_MST, 0xffffffff, 0), - .yrgb_vir = VOP_REG(RK3036_WIN1_VIR, 0xffff, 0), -}; - -static const struct vop_win_data rk3036_vop_win_data[] = { - { .base = 0x00, .phy = &rk3036_win0_data, - .type = DRM_PLANE_TYPE_PRIMARY }, - { .base = 0x00, .phy = &rk3036_win1_data, - .type = DRM_PLANE_TYPE_CURSOR }, -}; - -static const int rk3036_vop_intrs[] = { - DSP_HOLD_VALID_INTR, - FS_INTR, - LINE_FLAG_INTR, - BUS_ERROR_INTR, -}; - -static const struct vop_intr rk3036_intr = { - .intrs = rk3036_vop_intrs, - .nintrs = ARRAY_SIZE(rk3036_vop_intrs), - .status = VOP_REG(RK3036_INT_STATUS, 0xf, 0), - .enable = VOP_REG(RK3036_INT_STATUS, 0xf, 4), - .clear = VOP_REG(RK3036_INT_STATUS, 0xf, 8), -}; - -static const struct vop_ctrl rk3036_ctrl_data = { - .standby = VOP_REG(RK3036_SYS_CTRL, 0x1, 30), - .out_mode = VOP_REG(RK3036_DSP_CTRL0, 0xf, 0), - .pin_pol = VOP_REG(RK3036_DSP_CTRL0, 0xf, 4), - .htotal_pw = VOP_REG(RK3036_DSP_HTOTAL_HS_END, 0x1fff1fff, 0), - .hact_st_end = VOP_REG(RK3036_DSP_HACT_ST_END, 0x1fff1fff, 0), - .vtotal_pw = VOP_REG(RK3036_DSP_VTOTAL_VS_END, 0x1fff1fff, 0), - .vact_st_end = VOP_REG(RK3036_DSP_VACT_ST_END, 0x1fff1fff, 0), - .cfg_done = VOP_REG(RK3036_REG_CFG_DONE, 0x1, 0), -}; - -static const struct vop_reg_data rk3036_vop_init_reg_table[] = { - {RK3036_DSP_CTRL1, 0x00000000}, -}; - -static const struct vop_data rk3036_vop = { - .init_table = rk3036_vop_init_reg_table, - .table_size = ARRAY_SIZE(rk3036_vop_init_reg_table), - .ctrl = &rk3036_ctrl_data, - .intr = &rk3036_intr, - .win = rk3036_vop_win_data, - .win_size = ARRAY_SIZE(rk3036_vop_win_data), -}; - static const struct of_device_id vop_driver_dt_match[] = { - { .compatible = "rockchip,rk3288-vop", - .data = &rk3288_vop }, { .compatible = "rockchip,rk3036-vop", .data = &rk3036_vop }, + { .compatible = "rockchip,rk3288-vop", + .data = &rk3288_vop }, {}, }; MODULE_DEVICE_TABLE(of, vop_driver_dt_match); -- 2.8.0.rc3.226.g39d4020