[{"id":1760808,"web_url":"http://patchwork.ozlabs.org/comment/1760808/","msgid":"<20170831101913.sjs32rsmbfal5xj3@imgtec.com>","list_archive_url":null,"date":"2017-08-31T10:19:13","subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","submitter":{"id":68430,"url":"http://patchwork.ozlabs.org/api/people/68430/","name":"Eric Engestrom","email":"eric.engestrom@imgtec.com"},"content":"On Wednesday, 2017-08-30 20:07:08 +0200, Linus Walleij wrote:\n> We detect and enable the use of the PL110 variant, an earlier\n> incarnation of PL111. The only real difference is that the\n> control and interrupt enable registers have swapped place.\n> The Versatile AB and Versatile PB have a variant inbetween\n> PL110 and PL111, it is PL110 but they have already swapped the\n> two registers so those two need a bit of special handling.\n> \n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n> ---\n>  drivers/gpu/drm/pl111/pl111_display.c | 27 +++--------\n>  drivers/gpu/drm/pl111/pl111_drm.h     | 17 +++++++\n>  drivers/gpu/drm/pl111/pl111_drv.c     | 84 ++++++++++++++++++++++++++++++++++-\n>  3 files changed, 105 insertions(+), 23 deletions(-)\n> \n> diff --git a/drivers/gpu/drm/pl111/pl111_display.c b/drivers/gpu/drm/pl111/pl111_display.c\n> index ef86ef60aed1..6447f36c243a 100644\n> --- a/drivers/gpu/drm/pl111/pl111_display.c\n> +++ b/drivers/gpu/drm/pl111/pl111_display.c\n> @@ -201,7 +201,7 @@ static void pl111_display_enable(struct drm_simple_display_pipe *pipe,\n>  \t\tbreak;\n>  \t}\n>  \n> -\twritel(cntl, priv->regs + CLCD_PL111_CNTL);\n> +\twritel(cntl, priv->regs + priv->ctrl);\n>  \n>  \tdrm_panel_enable(priv->panel);\n>  \n> @@ -219,7 +219,7 @@ void pl111_display_disable(struct drm_simple_display_pipe *pipe)\n>  \tdrm_panel_disable(priv->panel);\n>  \n>  \t/* Disable and Power Down */\n> -\twritel(0, priv->regs + CLCD_PL111_CNTL);\n> +\twritel(0, priv->regs + priv->ctrl);\n>  \n>  \tdrm_panel_unprepare(priv->panel);\n>  \n> @@ -259,7 +259,7 @@ int pl111_enable_vblank(struct drm_device *drm, unsigned int crtc)\n>  {\n>  \tstruct pl111_drm_dev_private *priv = drm->dev_private;\n>  \n> -\twritel(CLCD_IRQ_NEXTBASE_UPDATE, priv->regs + CLCD_PL111_IENB);\n> +\twritel(CLCD_IRQ_NEXTBASE_UPDATE, priv->regs + priv->ienb);\n>  \n>  \treturn 0;\n>  }\n> @@ -268,7 +268,7 @@ void pl111_disable_vblank(struct drm_device *drm, unsigned int crtc)\n>  {\n>  \tstruct pl111_drm_dev_private *priv = drm->dev_private;\n>  \n> -\twritel(0, priv->regs + CLCD_PL111_IENB);\n> +\twritel(0, priv->regs + priv->ienb);\n>  }\n>  \n>  static int pl111_display_prepare_fb(struct drm_simple_display_pipe *pipe,\n> @@ -412,22 +412,6 @@ int pl111_display_init(struct drm_device *drm)\n>  \tstruct device_node *endpoint;\n>  \tu32 tft_r0b0g0[3];\n>  \tint ret;\n> -\tstatic const u32 formats[] = {\n> -\t\tDRM_FORMAT_ABGR8888,\n> -\t\tDRM_FORMAT_XBGR8888,\n> -\t\tDRM_FORMAT_ARGB8888,\n> -\t\tDRM_FORMAT_XRGB8888,\n> -\t\tDRM_FORMAT_BGR565,\n> -\t\tDRM_FORMAT_RGB565,\n> -\t\tDRM_FORMAT_ABGR1555,\n> -\t\tDRM_FORMAT_XBGR1555,\n> -\t\tDRM_FORMAT_ARGB1555,\n> -\t\tDRM_FORMAT_XRGB1555,\n> -\t\tDRM_FORMAT_ABGR4444,\n> -\t\tDRM_FORMAT_XBGR4444,\n> -\t\tDRM_FORMAT_ARGB4444,\n> -\t\tDRM_FORMAT_XRGB4444,\n> -\t};\n>  \n>  \tendpoint = of_graph_get_next_endpoint(dev->of_node, NULL);\n>  \tif (!endpoint)\n> @@ -456,7 +440,8 @@ int pl111_display_init(struct drm_device *drm)\n>  \n>  \tret = drm_simple_display_pipe_init(drm, &priv->pipe,\n>  \t\t\t\t\t   &pl111_display_funcs,\n> -\t\t\t\t\t   formats, ARRAY_SIZE(formats),\n> +\t\t\t\t\t   priv->variant->formats,\n> +\t\t\t\t\t   priv->variant->nformats,\n>  \t\t\t\t\t   priv->connector);\n>  \tif (ret)\n>  \t\treturn ret;\n> diff --git a/drivers/gpu/drm/pl111/pl111_drm.h b/drivers/gpu/drm/pl111/pl111_drm.h\n> index 8804af0f8997..b316a8a0fbc0 100644\n> --- a/drivers/gpu/drm/pl111/pl111_drm.h\n> +++ b/drivers/gpu/drm/pl111/pl111_drm.h\n> @@ -31,6 +31,20 @@\n>  \n>  struct drm_minor;\n>  \n> +/**\n> + * struct pl111_variant_data - encodes IP differences\n> + * @name: the name of this variant\n> + * @is_pl110: this is the early PL110 variant\n> + * @formats: array of supported pixel formats on this variant\n> + * @nformats: the length of the array of supported pixel formats\n> + */\n> +struct pl111_variant_data {\n> +\tconst char *name;\n> +\tbool is_pl110;\n> +\tconst u32 *formats;\n> +\tunsigned int nformats;\n> +};\n> +\n>  struct pl111_drm_dev_private {\n>  \tstruct drm_device *drm;\n>  \n> @@ -42,6 +56,8 @@ struct pl111_drm_dev_private {\n>  \tstruct drm_fbdev_cma *fbdev;\n>  \n>  \tvoid *regs;\n> +\tu32 ienb;\n> +\tu32 ctrl;\n>  \t/* The pixel clock (a reference to our clock divider off of CLCDCLK). */\n>  \tstruct clk *clk;\n>  \t/* pl111's internal clock divider. */\n> @@ -50,6 +66,7 @@ struct pl111_drm_dev_private {\n>  \t * subsystem and pl111_display_enable().\n>  \t */\n>  \tspinlock_t tim2_lock;\n> +\tstruct pl111_variant_data *variant;\n>  };\n>  \n>  int pl111_display_init(struct drm_device *dev);\n> diff --git a/drivers/gpu/drm/pl111/pl111_drv.c b/drivers/gpu/drm/pl111/pl111_drv.c\n> index e66cbf202e17..f6863c0fb809 100644\n> --- a/drivers/gpu/drm/pl111/pl111_drv.c\n> +++ b/drivers/gpu/drm/pl111/pl111_drv.c\n> @@ -206,6 +206,7 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>  {\n>  \tstruct device *dev = &amba_dev->dev;\n>  \tstruct pl111_drm_dev_private *priv;\n> +\tstruct pl111_variant_data *variant = id->data;\n>  \tstruct drm_device *drm;\n>  \tint ret;\n>  \n> @@ -219,6 +220,33 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>  \tamba_set_drvdata(amba_dev, drm);\n>  \tpriv->drm = drm;\n>  \tdrm->dev_private = priv;\n> +\tpriv->variant = variant;\n> +\n> +\t/*\n> +\t * The PL110 and PL111 variants have two registers\n> +\t * swapped: interrupt enable and control. For this reason\n> +\t * we use offsets that we can change per variant.\n> +\t */\n> +\tif (variant->is_pl110) {\n> +\t\t/*\n> +\t\t * The ARM Versatile boards are even more special:\n> +\t\t * their PrimeCell ID say they are PL110 but the\n> +\t\t * control and interrupt enable registers are anyway\n> +\t\t * swapped to the PL111 order so they are not following\n> +\t\t * the PL110 datasheet.\n> +\t\t */\n> +\t\tif (of_machine_is_compatible(\"arm,versatile-ab\") ||\n> +\t\t    of_machine_is_compatible(\"arm,versatile-pb\")) {\n> +\t\t\tpriv->ienb = CLCD_PL111_IENB;\n> +\t\t\tpriv->ctrl = CLCD_PL111_CNTL;\n> +\t\t} else {\n> +\t\t\tpriv->ienb = CLCD_PL110_IENB;\n> +\t\t\tpriv->ctrl = CLCD_PL110_CNTL;\n> +\t\t}\n> +\t} else {\n> +\t\tpriv->ienb = CLCD_PL111_IENB;\n> +\t\tpriv->ctrl = CLCD_PL111_CNTL;\n> +\t}\n>  \n>  \tpriv->regs = devm_ioremap_resource(dev, &amba_dev->res);\n>  \tif (IS_ERR(priv->regs)) {\n> @@ -227,10 +255,10 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>  \t}\n>  \n>  \t/* turn off interrupts before requesting the irq */\n> -\twritel(0, priv->regs + CLCD_PL111_IENB);\n> +\twritel(0, priv->regs + priv->ienb);\n>  \n>  \tret = devm_request_irq(dev, amba_dev->irq[0], pl111_irq, 0,\n> -\t\t\t       \"pl111\", priv);\n> +\t\t\t       variant->name, priv);\n>  \tif (ret != 0) {\n>  \t\tdev_err(dev, \"%s failed irq %d\\n\", __func__, ret);\n>  \t\treturn ret;\n> @@ -269,10 +297,62 @@ static int pl111_amba_remove(struct amba_device *amba_dev)\n>  \treturn 0;\n>  }\n>  \n> +/*\n> + * This variant exist in early versions like the ARM Integrator\n> + * and this version lacks the 565 and 444 pixel formats.\n> + */\n> +static const u32 pl110_pixel_formats[] = {\n> +\tDRM_FORMAT_ABGR8888,\n> +\tDRM_FORMAT_XBGR8888,\n> +\tDRM_FORMAT_ARGB8888,\n> +\tDRM_FORMAT_XRGB8888,\n> +\tDRM_FORMAT_ABGR1555,\n> +\tDRM_FORMAT_XBGR1555,\n> +\tDRM_FORMAT_ARGB1555,\n> +\tDRM_FORMAT_XRGB1555,\n> +};\n> +\n> +struct pl111_variant_data pl110_variant = {\n\nI think this (and `pl111_variant` below) can be `static const`, right?\n\n> +\t.name = \"PL110\",\n> +\t.is_pl110 = true,\n> +\t.formats = pl110_pixel_formats,\n> +\t.nformats = ARRAY_SIZE(pl110_pixel_formats),\n> +};\n> +\n> +/* RealView, Versatile Express etc use this modern variant */\n> +static const u32 pl111_pixel_formats[] = {\n> +\tDRM_FORMAT_ABGR8888,\n> +\tDRM_FORMAT_XBGR8888,\n> +\tDRM_FORMAT_ARGB8888,\n> +\tDRM_FORMAT_XRGB8888,\n> +\tDRM_FORMAT_BGR565,\n> +\tDRM_FORMAT_RGB565,\n> +\tDRM_FORMAT_ABGR1555,\n> +\tDRM_FORMAT_XBGR1555,\n> +\tDRM_FORMAT_ARGB1555,\n> +\tDRM_FORMAT_XRGB1555,\n> +\tDRM_FORMAT_ABGR4444,\n> +\tDRM_FORMAT_XBGR4444,\n> +\tDRM_FORMAT_ARGB4444,\n> +\tDRM_FORMAT_XRGB4444,\n> +};\n> +\n> +struct pl111_variant_data pl111_variant = {\n> +\t.name = \"PL111\",\n> +\t.formats = pl111_pixel_formats,\n> +\t.nformats = ARRAY_SIZE(pl111_pixel_formats),\n> +};\n> +\n>  static struct amba_id pl111_id_table[] = {\n\nNot 100% sure on this one, but I think it can also be `const`, as\namba_lookup() and pl111_amba_probe() are the only users I could find and\nboth take a `const struct amba_id *` (and pl111_amba_probe() doesn't\neven use it).\n\n(Just a couple drive-by comments, I don't know enough for an actual\nreview, sorry...)\n\n>  \t{\n> +\t\t.id = 0x00041110,\n> +\t\t.mask = 0x000fffff,\n> +\t\t.data = &pl110_variant,\n> +\t},\n> +\t{\n>  \t\t.id = 0x00041111,\n>  \t\t.mask = 0x000fffff,\n> +\t\t.data = &pl111_variant,\n>  \t},\n>  \t{0, 0},\n>  };\n> -- \n> 2.13.5\n>","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"f+l0ETVE\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjdfF40Rcz9sNr\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tThu, 31 Aug 2017 20:19:49 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnMZc-0001n0-8L; Thu, 31 Aug 2017 10:19:44 +0000","from mailapp01.imgtec.com ([195.59.15.196])\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnMZY-0001m2-91 for linux-arm-kernel@lists.infradead.org;\n\tThu, 31 Aug 2017 10:19:42 +0000","from hhmail02.hh.imgtec.org (unknown [10.100.10.20])\n\tby Forcepoint Email with ESMTPS id C9204F60846F0;\n\tThu, 31 Aug 2017 11:19:10 +0100 (IST)","from imgtec.com (10.60.4.28) by hhmail02.hh.imgtec.org\n\t(10.100.10.21) with Microsoft SMTP Server (TLS) id 14.3.294.0;\n\tThu, 31 Aug 2017 11:19:13 +0100"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:\n\tMessage-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=UPcMzuUPN//V88NkHsfpuUPXJbnkPwg1EAgS2nhXH6c=;\n\tb=f+l0ETVEoNPlgj\n\tMGNYTOiWN2Sm0Pv5k9nhsghgJBJVGb2odW0JgQ715VLpa+i5MrPQe55VYiaJKFz+rD2fhevNStPQn\n\tmK2I+Jh225leEw6pEFYrjZdJ3/6IZBvspOqJa6oI6Wu5Lx4O6D6Cc+qVKTj2sG9hgTDN7g51ybhM1\n\tJa5E0iwHTFrLh+jIElN/jFac0cFpyw2pK4HvINQFA65oKYHQLbYL/5SxcTOsqEF5e+dZcAxJj1DAW\n\tS3vDnEtZeR+ylsamtvVPjoqscRS5HncFIgHuKsnxD0R6TzfiSp+z+XMPiyAoWMSWEICuFPkLoozf5\n\t61Ti+nR3l4xOPMtLSLmg==;","Date":"Thu, 31 Aug 2017 11:19:13 +0100","From":"Eric Engestrom <eric.engestrom@imgtec.com>","To":"Linus Walleij <linus.walleij@linaro.org>","Subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","Message-ID":"<20170831101913.sjs32rsmbfal5xj3@imgtec.com>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-5-linus.walleij@linaro.org>","MIME-Version":"1.0","Content-Disposition":"inline","In-Reply-To":"<20170830180711.2791-5-linus.walleij@linaro.org>","User-Agent":"NeoMutt/20170714 (1.8.3)","X-Originating-IP":"[10.60.4.28]","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170831_031940_466856_11F4A275 ","X-CRM114-Status":"GOOD (  23.59  )","X-Spam-Score":"-1.9 (-)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-1.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/,\n\tno trust [195.59.15.196 listed in list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"dri-devel@lists.freedesktop.org, Eric Anholt <eric@anholt.net>,\n\tSean Paul <seanpaul@chromium.org>,\n\tJani Nikula <jani.nikula@linux.intel.com>, \n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tlinux-arm-kernel@lists.infradead.org","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761217,"web_url":"http://patchwork.ozlabs.org/comment/1761217/","msgid":"<87h8wnzlgz.fsf@anholt.net>","list_archive_url":null,"date":"2017-08-31T17:38:20","subject":"Re: [PATCH 3/7] drm/pl111: Replace custom connector with panel\n\tbridge","submitter":{"id":608,"url":"http://patchwork.ozlabs.org/api/people/608/","name":"Eric Anholt","email":"eric@anholt.net"},"content":"Linus Walleij <linus.walleij@linaro.org> writes:\n\n> This replaces the custom connector in the PL111 with the\n> panel bridge helper.\n>\n> This works nicely for all standard panels, but since there\n> are several PL11x-based systems that will need to use the dumb\n> VGA connector bridge we use drm_of_find_panel_or_bridge()\n> and make some headroom for dealing with bridges that are\n> not panels as well, and drop a TODO in the code.\n>\n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n\n> diff --git a/drivers/gpu/drm/pl111/pl111_display.c b/drivers/gpu/drm/pl111/pl111_display.c\n> index c6ca4f1bbd49..ef86ef60aed1 100644\n> --- a/drivers/gpu/drm/pl111/pl111_display.c\n> +++ b/drivers/gpu/drm/pl111/pl111_display.c\n> @@ -93,7 +93,7 @@ static void pl111_display_enable(struct drm_simple_display_pipe *pipe,\n>  \tstruct pl111_drm_dev_private *priv = drm->dev_private;\n>  \tconst struct drm_display_mode *mode = &cstate->mode;\n>  \tstruct drm_framebuffer *fb = plane->state->fb;\n> -\tstruct drm_connector *connector = &priv->connector.connector;\n> +\tstruct drm_connector *connector = priv->connector;\n>  \tu32 cntl;\n>  \tu32 ppl, hsw, hfp, hbp;\n>  \tu32 lpp, vsw, vfp, vbp;\n> @@ -155,7 +155,7 @@ static void pl111_display_enable(struct drm_simple_display_pipe *pipe,\n>  \n>  \twritel(0, priv->regs + CLCD_TIM3);\n>  \n> -\tdrm_panel_prepare(priv->connector.panel);\n> +\tdrm_panel_prepare(priv->panel);\n\nIf we're moving to panel-bridge, then we should drop our manual panel\nprepare/enable/disable calls -- the panel-bridge will have already\npanel_prepare()d before our encoder's enable, and will panel_enable()\nafter we finish.","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"HnWkYpkE\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjqX36qxQz9s7c\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 03:45:07 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTWa-0002Rs-25; Thu, 31 Aug 2017 17:45:04 +0000","from anholt.net ([50.246.234.109])\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTWV-0002Kz-Ub for linux-arm-kernel@lists.infradead.org;\n\tThu, 31 Aug 2017 17:45:01 +0000","from localhost (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id 0D42C10A164C;\n\tThu, 31 Aug 2017 10:44:35 -0700 (PDT)","from anholt.net ([127.0.0.1])\n\tby localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new,\n\tport 10024)\n\twith LMTP id KG0Ebm5RXP43; Thu, 31 Aug 2017 10:44:33 -0700 (PDT)","from eliezer.anholt.net (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id BF19D10A1176;\n\tThu, 31 Aug 2017 10:44:33 -0700 (PDT)","by eliezer.anholt.net (Postfix, from userid 1000)\n\tid 7AFA32E292A; Thu, 31 Aug 2017 10:38:20 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type:Cc:\n\tList-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:\n\tMIME-Version:Message-ID:Date:References:In-Reply-To:Subject:To:From:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:\n\tResent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner;\n\tbh=2vaqfp7M9pG4lLPMESkCZl2ekbS8fYhzlngzXX65N7Q=;\n\tb=HnWkYpkEFffjWZlhF1M958S47\n\tbFjSDSkF5aV3NH4875TPVarecr2UiaGJCMsiPvtlhQY6AilnHMUQv32zY6yKhsd7yt2QVzoLPcCRl\n\t1IFGH61lNsm1wqwXcNsMzsYuzf5sTIygNpDiNBHYxRm/3o8TtQNGgJROPkGdz9zimuifpB9/DuJAe\n\t2NZ6i99NNIZ2eq/NB6/qa5QYzpqFvpG/TMQK57N4+ctbFv9BWiLZYyyXIEt0bAmljVl9qWGHT8wfe\n\t6L6HTqd4JwAHD7u/dxbZAx/1RyrGRGA7KDeICxrM51Mq0lhiW5zGXfzxR1jVyYHEst2F9EC6/PCaC\n\t1LHl2++5Q==;","X-Virus-Scanned":"Debian amavisd-new at anholt.net","From":"Eric Anholt <eric@anholt.net>","To":"Linus Walleij <linus.walleij@linaro.org>,\n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tJani Nikula <jani.nikula@linux.intel.com>,\n\tSean Paul <seanpaul@chromium.org>","Subject":"Re: [PATCH 3/7] drm/pl111: Replace custom connector with panel\n\tbridge","In-Reply-To":"<20170830180711.2791-4-linus.walleij@linaro.org>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-4-linus.walleij@linaro.org>","User-Agent":"Notmuch/0.22.2+1~gb0bcfaa (http://notmuchmail.org) Emacs/25.2.2\n\t(x86_64-pc-linux-gnu)","Date":"Thu, 31 Aug 2017 10:38:20 -0700","Message-ID":"<87h8wnzlgz.fsf@anholt.net>","MIME-Version":"1.0","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170831_104500_028859_B8817CF1 ","X-CRM114-Status":"GOOD (  12.78  )","X-Spam-Score":"-1.9 (-)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-1.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-0.0 SPF_HELO_PASS          SPF: HELO matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Linus Walleij <linus.walleij@linaro.org>,\n\tlinux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org","Content-Type":"multipart/mixed;\n\tboundary=\"===============2931376251845903371==\"","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761222,"web_url":"http://patchwork.ozlabs.org/comment/1761222/","msgid":"<87efrrzldd.fsf@anholt.net>","list_archive_url":null,"date":"2017-08-31T17:40:30","subject":"Re: [PATCH 2/7] drm/pl111: Add all registers to debugfs","submitter":{"id":608,"url":"http://patchwork.ozlabs.org/api/people/608/","name":"Eric Anholt","email":"eric@anholt.net"},"content":"Linus Walleij <linus.walleij@linaro.org> writes:\n\n> This adds all the main control registers to the debugfs\n> register file. This was helpful for my debugging so it will\n> likely help others as well.\n\nThis and the previous patch are:\n\nReviewed-by: Eric Anholt <eric@anholt.net>","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"qgWa9ixX\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjqb33P8mz9s7c\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 03:47:43 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTZ6-00052Y-5O; Thu, 31 Aug 2017 17:47:40 +0000","from anholt.net ([50.246.234.109])\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTYa-0004ZJ-35 for linux-arm-kernel@lists.infradead.org;\n\tThu, 31 Aug 2017 17:47:13 +0000","from localhost (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id 07F0810A164C;\n\tThu, 31 Aug 2017 10:46:45 -0700 (PDT)","from anholt.net ([127.0.0.1])\n\tby localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new,\n\tport 10024)\n\twith LMTP id O7sYzMftiRfr; Thu, 31 Aug 2017 10:46:43 -0700 (PDT)","from eliezer.anholt.net (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id C499F10A1176;\n\tThu, 31 Aug 2017 10:46:43 -0700 (PDT)","by eliezer.anholt.net (Postfix, from userid 1000)\n\tid 9F5002E292A; Thu, 31 Aug 2017 10:40:30 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type:Cc:\n\tList-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:\n\tMIME-Version:Message-ID:Date:References:In-Reply-To:Subject:To:From:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:\n\tResent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner;\n\tbh=3hL1F9059CVZQKbnwdeRkq1vNJ7s9x+M7zoDCG4sy+Y=;\n\tb=qgWa9ixX18oz2I9cMtwxSDdck\n\tji0SIsCoxoxnKb+NXLEdwqU8CVjDfaTpglYSMjbwPsj5mbHktoTxB6c/Us8flBuymJJLWFzN+GQXM\n\tb/k9CQtkxjWsvHiuCl4VDEOqcABwXwC5Y+iBfpe8w8MfvkiRqWP0UqznZZKoTDKdJ16nIFZuErlSi\n\t+eQGy/hkIT5Bym5FRyLJLTxrHeAEaP1BYv0drpsZpVBSmtRmJlARasz+o6GEmPal5Ex2hFxRo60sR\n\tK61UOr0k3Or7fa+Zxjq0RF/xKTZXmbbgPUnVchaPrsEPCksYcDlYFRRFFA4bV6ESxhkElsi34UT8c\n\tn9Inek9vA==;","X-Virus-Scanned":"Debian amavisd-new at anholt.net","From":"Eric Anholt <eric@anholt.net>","To":"Linus Walleij <linus.walleij@linaro.org>,\n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tJani Nikula <jani.nikula@linux.intel.com>,\n\tSean Paul <seanpaul@chromium.org>","Subject":"Re: [PATCH 2/7] drm/pl111: Add all registers to debugfs","In-Reply-To":"<20170830180711.2791-3-linus.walleij@linaro.org>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-3-linus.walleij@linaro.org>","User-Agent":"Notmuch/0.22.2+1~gb0bcfaa (http://notmuchmail.org) Emacs/25.2.2\n\t(x86_64-pc-linux-gnu)","Date":"Thu, 31 Aug 2017 10:40:30 -0700","Message-ID":"<87efrrzldd.fsf@anholt.net>","MIME-Version":"1.0","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170831_104708_792347_1C787EE7 ","X-CRM114-Status":"UNSURE (   9.32  )","X-CRM114-Notice":"Please train this message.","X-Spam-Score":"-1.9 (-)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-1.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-0.0 SPF_HELO_PASS          SPF: HELO matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Linus Walleij <linus.walleij@linaro.org>,\n\tlinux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org","Content-Type":"multipart/mixed;\n\tboundary=\"===============0725062800182005546==\"","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761228,"web_url":"http://patchwork.ozlabs.org/comment/1761228/","msgid":"<87bmmvzl34.fsf@anholt.net>","list_archive_url":null,"date":"2017-08-31T17:46:39","subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","submitter":{"id":608,"url":"http://patchwork.ozlabs.org/api/people/608/","name":"Eric Anholt","email":"eric@anholt.net"},"content":"Linus Walleij <linus.walleij@linaro.org> writes:\n\n> We detect and enable the use of the PL110 variant, an earlier\n> incarnation of PL111. The only real difference is that the\n> control and interrupt enable registers have swapped place.\n> The Versatile AB and Versatile PB have a variant inbetween\n> PL110 and PL111, it is PL110 but they have already swapped the\n> two registers so those two need a bit of special handling.\n>\n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n\nWith the other Eric's little const fixes,\n\nReviewed-by: Eric Anholt <eric@anholt.net>","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"dM60Wiah\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjqjZ0Xy0z9s7c\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 03:53:22 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTeZ-0000C3-14; Thu, 31 Aug 2017 17:53:19 +0000","from anholt.net ([50.246.234.109])\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTeV-0000A8-RL for linux-arm-kernel@lists.infradead.org;\n\tThu, 31 Aug 2017 17:53:17 +0000","from localhost (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id 08DEE10A164C;\n\tThu, 31 Aug 2017 10:52:54 -0700 (PDT)","from anholt.net ([127.0.0.1])\n\tby localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new,\n\tport 10024)\n\twith LMTP id s7TxTBGPF31K; Thu, 31 Aug 2017 10:52:53 -0700 (PDT)","from eliezer.anholt.net (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id EE28410A1176;\n\tThu, 31 Aug 2017 10:52:52 -0700 (PDT)","by eliezer.anholt.net (Postfix, from userid 1000)\n\tid 0288D2E292A; Thu, 31 Aug 2017 10:46:40 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type:Cc:\n\tList-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:\n\tMIME-Version:Message-ID:Date:References:In-Reply-To:Subject:To:From:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:\n\tResent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner;\n\tbh=hN+azDwMZGqbASR2MTbc35zpM5EwYkHc+12cZw96+bE=;\n\tb=dM60Wiah7d3+/O9GbYI745LZV\n\tGhOXTrrDDAmVZtt+gneftD/MWqBAmw70qZDrf9Vhg2Egq+fYoP1cKPdUpH/n++icJmb0S8+0SK5Hj\n\tuek8qYzB/plEEMFKD50VjkqasH0cOGEB9RK4TS/PymmvbMbBSBIG8bHe1GiDF57E2UhOU0WSffd6z\n\tBRKqQ4hK/9/zPdgQ5z6WEqPP9hSnk5SDSDc0A5H0p2V+OTnnNBrssEDMbQBFR9nsYs0hUCvijXBfm\n\teN1Vr0hWSmtL4SRSmcEd1ex4HYW1WBdXz/OEZl9ppijuZgPCEq0gSd74WiaN85/fFxUwccIOhNhDl\n\tLxA7/CqTA==;","X-Virus-Scanned":"Debian amavisd-new at anholt.net","From":"Eric Anholt <eric@anholt.net>","To":"Linus Walleij <linus.walleij@linaro.org>,\n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tJani Nikula <jani.nikula@linux.intel.com>,\n\tSean Paul <seanpaul@chromium.org>","Subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","In-Reply-To":"<20170830180711.2791-5-linus.walleij@linaro.org>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-5-linus.walleij@linaro.org>","User-Agent":"Notmuch/0.22.2+1~gb0bcfaa (http://notmuchmail.org) Emacs/25.2.2\n\t(x86_64-pc-linux-gnu)","Date":"Thu, 31 Aug 2017 10:46:39 -0700","Message-ID":"<87bmmvzl34.fsf@anholt.net>","MIME-Version":"1.0","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170831_105315_919227_CF170158 ","X-CRM114-Status":"GOOD (  10.50  )","X-Spam-Score":"-1.9 (-)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-1.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-0.0 SPF_HELO_PASS          SPF: HELO matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Linus Walleij <linus.walleij@linaro.org>,\n\tlinux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org","Content-Type":"multipart/mixed;\n\tboundary=\"===============0958058055982399224==\"","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761236,"web_url":"http://patchwork.ozlabs.org/comment/1761236/","msgid":"<878thzzkiz.fsf@anholt.net>","list_archive_url":null,"date":"2017-08-31T17:58:44","subject":"Re: [PATCH 7/7] drm/pl111: Add handling of Versatile platforms","submitter":{"id":608,"url":"http://patchwork.ozlabs.org/api/people/608/","name":"Eric Anholt","email":"eric@anholt.net"},"content":"Linus Walleij <linus.walleij@linaro.org> writes:\n\n> The ARM reference designs in the Versatile family: Integrator,\n> Versatile and RealView can make use of the new DRM driver as well.\n> We just need to create a bit of platform-specific code for them\n> that we isolate to its own file.\n>\n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n> ---\n>  drivers/gpu/drm/pl111/Makefile          |   1 +\n>  drivers/gpu/drm/pl111/pl111_display.c   |   7 -\n>  drivers/gpu/drm/pl111/pl111_drv.c       |   5 +\n>  drivers/gpu/drm/pl111/pl111_versatile.c | 270 ++++++++++++++++++++++++++++++++\n>  drivers/gpu/drm/pl111/pl111_versatile.h |   9 ++\n>  5 files changed, 285 insertions(+), 7 deletions(-)\n>  create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.c\n>  create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.h\n>\n> diff --git a/drivers/gpu/drm/pl111/Makefile b/drivers/gpu/drm/pl111/Makefile\n> index c5f8f9684848..fce1453a93e1 100644\n> --- a/drivers/gpu/drm/pl111/Makefile\n> +++ b/drivers/gpu/drm/pl111/Makefile\n> @@ -1,4 +1,5 @@\n>  pl111_drm-y +=\tpl111_display.o \\\n> +\t\tpl111_versatile.o \\\n>  \t\tpl111_drv.o\n>  \n>  pl111_drm-$(CONFIG_DEBUG_FS) += pl111_debugfs.o\n> diff --git a/drivers/gpu/drm/pl111/pl111_display.c b/drivers/gpu/drm/pl111/pl111_display.c\n> index 37f409867934..f7b043f4fed6 100644\n> --- a/drivers/gpu/drm/pl111/pl111_display.c\n> +++ b/drivers/gpu/drm/pl111/pl111_display.c\n> @@ -454,13 +454,6 @@ int pl111_display_init(struct drm_device *drm)\n>  \t}\n>  \tof_node_put(endpoint);\n>  \n> -\tif (tft_r0b0g0[0] != 0 ||\n> -\t    tft_r0b0g0[1] != 8 ||\n> -\t    tft_r0b0g0[2] != 16) {\n> -\t\tdev_err(dev, \"arm,pl11x,tft-r0g0b0-pads != [0,8,16] not yet supported\\n\");\n> -\t\treturn -EINVAL;\n> -\t}\n\nI had a note in the DOC section of pl111_drv.c about needing to filter\navailable formats based on this property.  Could you update that with\nsome explanation of the new state of things?  (Do we actually need to\nfilter the formats?)\n\nI haven't verified that we get the same pin routing setup as the fbdev\ndriver did for these platforms, but even if they don't match yet this\nseems like an excellent start and we can make sure we sort them out as\nwe add panel drivers.\n\nI've verified that my Cygnus board continues working with your series.","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org\n\theader.b=\"fFn4UNEz\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xjqzX4hxpz9s7c\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 04:05:28 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTqG-0000Iq-RO; Thu, 31 Aug 2017 18:05:24 +0000","from anholt.net ([50.246.234.109])\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnTqC-0007Vb-4J for linux-arm-kernel@lists.infradead.org;\n\tThu, 31 Aug 2017 18:05:22 +0000","from localhost (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id 6388D10A164C;\n\tThu, 31 Aug 2017 11:04:58 -0700 (PDT)","from anholt.net ([127.0.0.1])\n\tby localhost (kingsolver.anholt.net [127.0.0.1]) (amavisd-new,\n\tport 10024)\n\twith LMTP id Kf7zaUsO-mgL; Thu, 31 Aug 2017 11:04:57 -0700 (PDT)","from eliezer.anholt.net (localhost [127.0.0.1])\n\tby anholt.net (Postfix) with ESMTP id 17CE710A1176;\n\tThu, 31 Aug 2017 11:04:57 -0700 (PDT)","by eliezer.anholt.net (Postfix, from userid 1000)\n\tid 611A62E292A; Thu, 31 Aug 2017 10:58:44 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:Content-Type:Cc:\n\tList-Subscribe:List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:\n\tMIME-Version:Message-ID:Date:References:In-Reply-To:Subject:To:From:Reply-To:\n\tContent-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:\n\tResent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner;\n\tbh=zxo8DCpUxcCO7vpztWnEWsZtvvdRhFB7sBVAOy2OrB0=;\n\tb=fFn4UNEzgvWuVDa8VXPI00pyi\n\tTpC3xwDfbOTdMM1ZzjDpbEN655kY2vAz+NkoCG4SlK2wwMzp+HE9ssmeZ0COQl+38seaBLe0j13gv\n\t82ngvtlDsvHY381eD73JsUKgEjlKC2THqjbAa4w/tanPtwvVlcKrKbLzx00dbDjGgh6d+urQMPSKe\n\tfB72I3q5RwYMBAwQpxZ9VnQittsEw5LZVHqhGjfODRQcWOdlbzAwJ+XPdRbBiES5d2MeI4H0pfAMY\n\tFn9Xw351gWNNn5oKOTxOs9P8hKDgrZcpw6KJh5XBUPK7HKuOr40cLFP5OrWp7pWVLBXMJLatJ71Cz\n\tvvUvZWq/w==;","X-Virus-Scanned":"Debian amavisd-new at anholt.net","From":"Eric Anholt <eric@anholt.net>","To":"Linus Walleij <linus.walleij@linaro.org>,\n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tJani Nikula <jani.nikula@linux.intel.com>,\n\tSean Paul <seanpaul@chromium.org>","Subject":"Re: [PATCH 7/7] drm/pl111: Add handling of Versatile platforms","In-Reply-To":"<20170830180711.2791-8-linus.walleij@linaro.org>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-8-linus.walleij@linaro.org>","User-Agent":"Notmuch/0.22.2+1~gb0bcfaa (http://notmuchmail.org) Emacs/25.2.2\n\t(x86_64-pc-linux-gnu)","Date":"Thu, 31 Aug 2017 10:58:44 -0700","Message-ID":"<878thzzkiz.fsf@anholt.net>","MIME-Version":"1.0","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170831_110520_279226_DE90DE2C ","X-CRM114-Status":"GOOD (  15.83  )","X-Spam-Score":"-1.9 (-)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-1.9 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-0.0 SPF_HELO_PASS          SPF: HELO matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Linus Walleij <linus.walleij@linaro.org>,\n\tlinux-arm-kernel@lists.infradead.org, dri-devel@lists.freedesktop.org","Content-Type":"multipart/mixed;\n\tboundary=\"===============8378263338371322979==\"","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761513,"web_url":"http://patchwork.ozlabs.org/comment/1761513/","msgid":"<CACvgo51zbo1vA6s+c9db9yS-8L=fpQUGDptk7XjxjXUY8ZndqA@mail.gmail.com>","list_archive_url":null,"date":"2017-09-01T08:23:10","subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","submitter":{"id":48680,"url":"http://patchwork.ozlabs.org/api/people/48680/","name":"Emil Velikov","email":"emil.l.velikov@gmail.com"},"content":"On 31 August 2017 at 11:19, Eric Engestrom <eric.engestrom@imgtec.com> wrote:\n> On Wednesday, 2017-08-30 20:07:08 +0200, Linus Walleij wrote:\n>> We detect and enable the use of the PL110 variant, an earlier\n>> incarnation of PL111. The only real difference is that the\n>> control and interrupt enable registers have swapped place.\n>> The Versatile AB and Versatile PB have a variant inbetween\n>> PL110 and PL111, it is PL110 but they have already swapped the\n>> two registers so those two need a bit of special handling.\n>>\n>> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n>> ---\n>>  drivers/gpu/drm/pl111/pl111_display.c | 27 +++--------\n>>  drivers/gpu/drm/pl111/pl111_drm.h     | 17 +++++++\n>>  drivers/gpu/drm/pl111/pl111_drv.c     | 84 ++++++++++++++++++++++++++++++++++-\n>>  3 files changed, 105 insertions(+), 23 deletions(-)\n>>\n>> diff --git a/drivers/gpu/drm/pl111/pl111_display.c b/drivers/gpu/drm/pl111/pl111_display.c\n>> index ef86ef60aed1..6447f36c243a 100644\n>> --- a/drivers/gpu/drm/pl111/pl111_display.c\n>> +++ b/drivers/gpu/drm/pl111/pl111_display.c\n>> @@ -201,7 +201,7 @@ static void pl111_display_enable(struct drm_simple_display_pipe *pipe,\n>>               break;\n>>       }\n>>\n>> -     writel(cntl, priv->regs + CLCD_PL111_CNTL);\n>> +     writel(cntl, priv->regs + priv->ctrl);\n>>\n>>       drm_panel_enable(priv->panel);\n>>\n>> @@ -219,7 +219,7 @@ void pl111_display_disable(struct drm_simple_display_pipe *pipe)\n>>       drm_panel_disable(priv->panel);\n>>\n>>       /* Disable and Power Down */\n>> -     writel(0, priv->regs + CLCD_PL111_CNTL);\n>> +     writel(0, priv->regs + priv->ctrl);\n>>\n>>       drm_panel_unprepare(priv->panel);\n>>\n>> @@ -259,7 +259,7 @@ int pl111_enable_vblank(struct drm_device *drm, unsigned int crtc)\n>>  {\n>>       struct pl111_drm_dev_private *priv = drm->dev_private;\n>>\n>> -     writel(CLCD_IRQ_NEXTBASE_UPDATE, priv->regs + CLCD_PL111_IENB);\n>> +     writel(CLCD_IRQ_NEXTBASE_UPDATE, priv->regs + priv->ienb);\n>>\n>>       return 0;\n>>  }\n>> @@ -268,7 +268,7 @@ void pl111_disable_vblank(struct drm_device *drm, unsigned int crtc)\n>>  {\n>>       struct pl111_drm_dev_private *priv = drm->dev_private;\n>>\n>> -     writel(0, priv->regs + CLCD_PL111_IENB);\n>> +     writel(0, priv->regs + priv->ienb);\n>>  }\n>>\n>>  static int pl111_display_prepare_fb(struct drm_simple_display_pipe *pipe,\n>> @@ -412,22 +412,6 @@ int pl111_display_init(struct drm_device *drm)\n>>       struct device_node *endpoint;\n>>       u32 tft_r0b0g0[3];\n>>       int ret;\n>> -     static const u32 formats[] = {\n>> -             DRM_FORMAT_ABGR8888,\n>> -             DRM_FORMAT_XBGR8888,\n>> -             DRM_FORMAT_ARGB8888,\n>> -             DRM_FORMAT_XRGB8888,\n>> -             DRM_FORMAT_BGR565,\n>> -             DRM_FORMAT_RGB565,\n>> -             DRM_FORMAT_ABGR1555,\n>> -             DRM_FORMAT_XBGR1555,\n>> -             DRM_FORMAT_ARGB1555,\n>> -             DRM_FORMAT_XRGB1555,\n>> -             DRM_FORMAT_ABGR4444,\n>> -             DRM_FORMAT_XBGR4444,\n>> -             DRM_FORMAT_ARGB4444,\n>> -             DRM_FORMAT_XRGB4444,\n>> -     };\n>>\n>>       endpoint = of_graph_get_next_endpoint(dev->of_node, NULL);\n>>       if (!endpoint)\n>> @@ -456,7 +440,8 @@ int pl111_display_init(struct drm_device *drm)\n>>\n>>       ret = drm_simple_display_pipe_init(drm, &priv->pipe,\n>>                                          &pl111_display_funcs,\n>> -                                        formats, ARRAY_SIZE(formats),\n>> +                                        priv->variant->formats,\n>> +                                        priv->variant->nformats,\n>>                                          priv->connector);\n>>       if (ret)\n>>               return ret;\n>> diff --git a/drivers/gpu/drm/pl111/pl111_drm.h b/drivers/gpu/drm/pl111/pl111_drm.h\n>> index 8804af0f8997..b316a8a0fbc0 100644\n>> --- a/drivers/gpu/drm/pl111/pl111_drm.h\n>> +++ b/drivers/gpu/drm/pl111/pl111_drm.h\n>> @@ -31,6 +31,20 @@\n>>\n>>  struct drm_minor;\n>>\n>> +/**\n>> + * struct pl111_variant_data - encodes IP differences\n>> + * @name: the name of this variant\n>> + * @is_pl110: this is the early PL110 variant\n>> + * @formats: array of supported pixel formats on this variant\n>> + * @nformats: the length of the array of supported pixel formats\n>> + */\n>> +struct pl111_variant_data {\n>> +     const char *name;\n>> +     bool is_pl110;\n>> +     const u32 *formats;\n>> +     unsigned int nformats;\n>> +};\n>> +\n>>  struct pl111_drm_dev_private {\n>>       struct drm_device *drm;\n>>\n>> @@ -42,6 +56,8 @@ struct pl111_drm_dev_private {\n>>       struct drm_fbdev_cma *fbdev;\n>>\n>>       void *regs;\n>> +     u32 ienb;\n>> +     u32 ctrl;\n>>       /* The pixel clock (a reference to our clock divider off of CLCDCLK). */\n>>       struct clk *clk;\n>>       /* pl111's internal clock divider. */\n>> @@ -50,6 +66,7 @@ struct pl111_drm_dev_private {\n>>        * subsystem and pl111_display_enable().\n>>        */\n>>       spinlock_t tim2_lock;\n>> +     struct pl111_variant_data *variant;\n>>  };\n>>\n>>  int pl111_display_init(struct drm_device *dev);\n>> diff --git a/drivers/gpu/drm/pl111/pl111_drv.c b/drivers/gpu/drm/pl111/pl111_drv.c\n>> index e66cbf202e17..f6863c0fb809 100644\n>> --- a/drivers/gpu/drm/pl111/pl111_drv.c\n>> +++ b/drivers/gpu/drm/pl111/pl111_drv.c\n>> @@ -206,6 +206,7 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>>  {\n>>       struct device *dev = &amba_dev->dev;\n>>       struct pl111_drm_dev_private *priv;\n>> +     struct pl111_variant_data *variant = id->data;\n>>       struct drm_device *drm;\n>>       int ret;\n>>\n>> @@ -219,6 +220,33 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>>       amba_set_drvdata(amba_dev, drm);\n>>       priv->drm = drm;\n>>       drm->dev_private = priv;\n>> +     priv->variant = variant;\n>> +\n>> +     /*\n>> +      * The PL110 and PL111 variants have two registers\n>> +      * swapped: interrupt enable and control. For this reason\n>> +      * we use offsets that we can change per variant.\n>> +      */\n>> +     if (variant->is_pl110) {\n>> +             /*\n>> +              * The ARM Versatile boards are even more special:\n>> +              * their PrimeCell ID say they are PL110 but the\n>> +              * control and interrupt enable registers are anyway\n>> +              * swapped to the PL111 order so they are not following\n>> +              * the PL110 datasheet.\n>> +              */\n>> +             if (of_machine_is_compatible(\"arm,versatile-ab\") ||\n>> +                 of_machine_is_compatible(\"arm,versatile-pb\")) {\n>> +                     priv->ienb = CLCD_PL111_IENB;\n>> +                     priv->ctrl = CLCD_PL111_CNTL;\n>> +             } else {\n>> +                     priv->ienb = CLCD_PL110_IENB;\n>> +                     priv->ctrl = CLCD_PL110_CNTL;\n>> +             }\n>> +     } else {\n>> +             priv->ienb = CLCD_PL111_IENB;\n>> +             priv->ctrl = CLCD_PL111_CNTL;\n>> +     }\n>>\n>>       priv->regs = devm_ioremap_resource(dev, &amba_dev->res);\n>>       if (IS_ERR(priv->regs)) {\n>> @@ -227,10 +255,10 @@ static int pl111_amba_probe(struct amba_device *amba_dev,\n>>       }\n>>\n>>       /* turn off interrupts before requesting the irq */\n>> -     writel(0, priv->regs + CLCD_PL111_IENB);\n>> +     writel(0, priv->regs + priv->ienb);\n>>\n>>       ret = devm_request_irq(dev, amba_dev->irq[0], pl111_irq, 0,\n>> -                            \"pl111\", priv);\n>> +                            variant->name, priv);\n>>       if (ret != 0) {\n>>               dev_err(dev, \"%s failed irq %d\\n\", __func__, ret);\n>>               return ret;\n>> @@ -269,10 +297,62 @@ static int pl111_amba_remove(struct amba_device *amba_dev)\n>>       return 0;\n>>  }\n>>\n>> +/*\n>> + * This variant exist in early versions like the ARM Integrator\n>> + * and this version lacks the 565 and 444 pixel formats.\n>> + */\n>> +static const u32 pl110_pixel_formats[] = {\n>> +     DRM_FORMAT_ABGR8888,\n>> +     DRM_FORMAT_XBGR8888,\n>> +     DRM_FORMAT_ARGB8888,\n>> +     DRM_FORMAT_XRGB8888,\n>> +     DRM_FORMAT_ABGR1555,\n>> +     DRM_FORMAT_XBGR1555,\n>> +     DRM_FORMAT_ARGB1555,\n>> +     DRM_FORMAT_XRGB1555,\n>> +};\n>> +\n>> +struct pl111_variant_data pl110_variant = {\n>\n> I think this (and `pl111_variant` below) can be `static const`, right?\n>\nStatic - yes, const - I don't think so.\nStruct amba_id::data lacks the constness, so the const qualifier will\nget discarded.\n\nIn practise everyone considers/uses ::data as const, so that could be\ntweaked with separate patch.\n\n-Emil","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"MoAtYruN\"; \n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n\tunprotected) header.d=gmail.com header.i=@gmail.com\n\theader.b=\"iHPp0T/N\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xkC1q1Cs4z9t2S\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 18:23:43 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnhEp-0007hT-77; Fri, 01 Sep 2017 08:23:39 +0000","from mail-wm0-x244.google.com ([2a00:1450:400c:c09::244])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dnhEj-0007eg-R1 for linux-arm-kernel@lists.infradead.org;\n\tFri, 01 Sep 2017 08:23:36 +0000","by mail-wm0-x244.google.com with SMTP id m85so1801075wma.0\n\tfor <linux-arm-kernel@lists.infradead.org>;\n\tFri, 01 Sep 2017 01:23:12 -0700 (PDT)","by 10.28.44.86 with HTTP; Fri, 1 Sep 2017 01:23:10 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:\n\tReferences:In-Reply-To:MIME-Version:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=atziuDi/3Rc63/ErQstexE347AFPGq+r4eOCkZPs/og=;\n\tb=MoAtYruN33HbVr\n\t4eUA9jQWj17jUesQlL4nYjMS9zZI8hxdOfC/uBRoQGlRQYuf2xrvjbTVqBD8LRhha+LCI7HNrIr0X\n\t6Uyr5zQt4w28aS8XAYoEN8BB7FcyLTMaeyFmRDpeInwDCV+wupRmEUkDaYJF1RFH0qtc+mGJoH8Hf\n\tdKlplS7gpnbsAZSb9sdDJwzrV1nBUYjWq0cZ9blFvkLS/BorVfFL+fnp8Kv6AkohjlpoMQaS++sLc\n\tqns+jDdP81rSMjcUSkmFpmpI34y/0HLeFTwpobIuGaoDau1AtzGUxJBjAW+ysCb4Hg+vzHwEb0aYV\n\tuACzRXCDOSyIOi/s7BPQ==;","v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=bahqocuYxuSkB9e5dJkp7IGr9CxhTtFXehLe5+0NRzo=;\n\tb=iHPp0T/N9G4yHTH2lMdBz1nZX8GOIC0segbSPoGi8fdF4KvxqeM+1v+wpxIeM7mEzH\n\t+U8AN1jmWlC614biHdfgPovZPjavoEdHymJiFF1q76p+WUIrE5GzzbOuNuqP0Brtefi2\n\tdTbwxQrmPrtv1obE7cp3UPdSKZ82t+mNlRrS9puxfH3f/qbiFVVtkKC/UZ4ccMaeC5W0\n\tx6Je4MDJV2XNPNQREsRqQ21DqdKbl9kqdI14iixilTp9Arpo9E58fxmqa1bLJ6iFMvfz\n\tmS3LIQsV+0sKJqGKmLdtUHSsOMQ+wIUi/K4DKKzm+tXU1CyRcc+4bW1ovoTGD/3onHXE\n\tEQ0w=="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=bahqocuYxuSkB9e5dJkp7IGr9CxhTtFXehLe5+0NRzo=;\n\tb=gl9Hrfn/xj2mMOIwbfxa6OQtDUiWGNTckecgg9Tyt8FnCCBEW2oYiFgQQLWF53i51L\n\tE8inpYc1bHDepBlrBRM3gfDILrPy7OQPfyfVVHzVJYdeVhu9/qMyxgO7Je/cpabI8nnE\n\t0EQK5trhaeZpi4hssQyz6RJiaGBVkkE2ScwSU1DFuTvbXoSE/eegMB/Nsu4qD3KL9tnu\n\tgY4YOEv6eEuYMHLzYusKAylWuqjyMrtGD2pvVkKKnR2oV90gmwRiYF9bLfKaCrPthPwu\n\tTYGZ+4aHBF5ngRLzpC+vR/L5LEMP2trwJHOsMVQ7w+qSdKXNVtzooOwqxZcI+dru0yDg\n\tv/ug==","X-Gm-Message-State":"AHPjjUgaTwDwjtWfaYEx7QKsPdpFx68E+S2EFauuOTn4bxmn/frlm9d7\n\t6uSfEM9txFVONwngZp6weCz29jjNxIdM","X-Google-Smtp-Source":"ADKCNb5+0scMmEUtXNcu09ZVC+B+sWeUsDHS5l/3lm5ZMQfE03DjODUcQ085Rp38bNd4wFpjSFH2jTlWi3+6V/8kQ/M=","X-Received":"by 10.28.147.210 with SMTP id v201mr582911wmd.181.1504254191309; \n\tFri, 01 Sep 2017 01:23:11 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<20170831101913.sjs32rsmbfal5xj3@imgtec.com>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-5-linus.walleij@linaro.org>\n\t<20170831101913.sjs32rsmbfal5xj3@imgtec.com>","From":"Emil Velikov <emil.l.velikov@gmail.com>","Date":"Fri, 1 Sep 2017 09:23:10 +0100","Message-ID":"<CACvgo51zbo1vA6s+c9db9yS-8L=fpQUGDptk7XjxjXUY8ZndqA@mail.gmail.com>","Subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","To":"Eric Engestrom <eric.engestrom@imgtec.com>","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170901_012334_294370_08BF1A71 ","X-CRM114-Status":"GOOD (  18.63  )","X-Spam-Score":"-2.0 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.0 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail\n\tprovider (emil.l.velikov[at]gmail.com)\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Daniel Vetter <daniel.vetter@intel.com>,\n\tLinus Walleij <linus.walleij@linaro.org>,\n\tLAKML <linux-arm-kernel@lists.infradead.org>,\n\tML dri-devel <dri-devel@lists.freedesktop.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761542,"web_url":"http://patchwork.ozlabs.org/comment/1761542/","msgid":"<CACRpkdZL=j1zPqX4zfqpepBsDuxsiu0jDUsezJOsqi_j_DeQ0w@mail.gmail.com>","list_archive_url":null,"date":"2017-09-01T09:22:19","subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","submitter":{"id":7055,"url":"http://patchwork.ozlabs.org/api/people/7055/","name":"Linus Walleij","email":"linus.walleij@linaro.org"},"content":"On Fri, Sep 1, 2017 at 10:23 AM, Emil Velikov <emil.l.velikov@gmail.com> wrote:\n\n>>Eric E:\n>>> +struct pl111_variant_data pl110_variant = {\n>>\n>> I think this (and `pl111_variant` below) can be `static const`, right?\n>>\n> Static - yes, const - I don't think so.\n> Struct amba_id::data lacks the constness, so the const qualifier will\n> get discarded.\n\nI fixed it with a (void*) cast so we can have it right in the driver.\n\n> In practise everyone considers/uses ::data as const, so that could be\n> tweaked with separate patch.\n\nI think it is not necessarily possible to make that const since the amba_id\nis used in several dynamically generated board files. But I may\nbe wrong.\n\nYours,\nLinus Walleij","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"pJ1tQgeE\"; \n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"Hi9BaB/u\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xkDLL4n7Vz9s7C\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 19:23:06 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dniAH-00045W-TV; Fri, 01 Sep 2017 09:23:01 +0000","from mail-oi0-x22e.google.com ([2607:f8b0:4003:c06::22e])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dni9x-0003n8-6E for linux-arm-kernel@lists.infradead.org;\n\tFri, 01 Sep 2017 09:22:56 +0000","by mail-oi0-x22e.google.com with SMTP id t75so16070062oie.3\n\tfor <linux-arm-kernel@lists.infradead.org>;\n\tFri, 01 Sep 2017 02:22:20 -0700 (PDT)","by 10.157.58.74 with HTTP; Fri, 1 Sep 2017 02:22:19 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:\n\tReferences:In-Reply-To:MIME-Version:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=3mxZRwjOTD+z+sLAMebaIMnw76r6lZBevNte4k5qjYU=;\n\tb=pJ1tQgeE8uRkQI\n\tpBcCoopGAUIgPlGzkQ3+6f/A6Xg05gQ403sqsca4Is1bpxEM7cn2IIWPibRk0gdubm2WpokOt3vkD\n\t94OpsJVdE/6yvOh/G486dm7xK7Kmy8x2gpeqR/y7JXGBPEVciZ1GilSljpJxrOxUlUdYrWUN9JZBe\n\t6pUgOpjg2ACiAZEPTj3bJrLnupk6ob6PPyCDnRQEHwqRGvBWyoEsSGa7X+B6ftG+H6R+KtUok6Zz9\n\tt2xpxbRAOB7meaKYFlTXvl1z1ZFioiXIeFkL4G3c8PCpDl2tgZParSkMP8ypspMiOQJq/15RBfbz8\n\tHbmXu3Nslav0OP2Y63QQ==;","v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=IOkWstILSinlJKH7IHyJKz0WvwnckcSb2Hj5jTmcCkw=;\n\tb=Hi9BaB/uN90fzQOpTKPrR8kLBYEH5Tc7bQjCVqhCrqybtfSTGvs8GlcKbcvSNpAsmB\n\tdxDqKoqyTWf+PRqLFeNdRUTDSWmlPxTT+Maf7EpWcL8gcmD91VAdWP6MBkcWnD2DipTj\n\tZqIilOjm4tOXZGhf7xRJ413Jp8+gxs5un0/+o="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=IOkWstILSinlJKH7IHyJKz0WvwnckcSb2Hj5jTmcCkw=;\n\tb=UwDWDWJysfdNq/n5FOs5KeMN7K1Cg4B0BEyHqK7S2Jfow03LrYJwI035hBO22Ko6+p\n\tkAOHciHxxfIZx6QQLgrqNnEUi/JkGRRNBC+SI23E8PbZLubvD4xVnDTgyiZ8Aa6Hkky2\n\tjgQleHS3/4BI5KXvbhgQHdvIb2bP+X+puXZYmSW9FIwiXQ6TGj+kuJbWk+u2g1IVorc4\n\tB6P/EXf+wVu2s5QUfuJzjbh+jibkqYoCVYpMlZlmW3QTi4/2YVpMD7SY6UskM7EIhtzc\n\tED8nzYYOdxJyLVMr5/zOH16xfoozFb5cy6sCO8XqDaVpC9La8rv2Z8+JebvCjTgOiXdo\n\tIw8w==","X-Gm-Message-State":"AHPjjUjVdUh4b1hMQlkW5a5CmSmxXnWT5r0iPIiX5/R2ga8EyYYM1evp\n\tN8Z9HQ6lHZzhN9jnXQ26q7ucCCaRRrHB","X-Google-Smtp-Source":"ADKCNb6vanBOGRaliVQUws0AswT2PSxeqTN37zTpbkVUeDYsRI9sY5jtEroHfSJJ9AVULJwR1t4RGIfgYWLA3LZx6Rg=","X-Received":"by 10.202.245.145 with SMTP id\n\tt139mr1426566oih.261.1504257739763; \n\tFri, 01 Sep 2017 02:22:19 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<CACvgo51zbo1vA6s+c9db9yS-8L=fpQUGDptk7XjxjXUY8ZndqA@mail.gmail.com>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-5-linus.walleij@linaro.org>\n\t<20170831101913.sjs32rsmbfal5xj3@imgtec.com>\n\t<CACvgo51zbo1vA6s+c9db9yS-8L=fpQUGDptk7XjxjXUY8ZndqA@mail.gmail.com>","From":"Linus Walleij <linus.walleij@linaro.org>","Date":"Fri, 1 Sep 2017 11:22:19 +0200","Message-ID":"<CACRpkdZL=j1zPqX4zfqpepBsDuxsiu0jDUsezJOsqi_j_DeQ0w@mail.gmail.com>","Subject":"Re: [PATCH 4/7] drm/pl111: Enable PL110 variant","To":"Emil Velikov <emil.l.velikov@gmail.com>","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170901_022241_728434_34B7B170 ","X-CRM114-Status":"UNSURE (   9.84  )","X-CRM114-Notice":"Please train this message.","X-Spam-Score":"-2.7 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.7 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,\n\tlow\n\ttrust [2607:f8b0:4003:c06:0:0:0:22e listed in] [list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"Daniel Vetter <daniel.vetter@intel.com>,\n\tEric Engestrom <eric.engestrom@imgtec.com>,\n\tLAKML <linux-arm-kernel@lists.infradead.org>,\n\tML dri-devel <dri-devel@lists.freedesktop.org>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}},{"id":1761543,"web_url":"http://patchwork.ozlabs.org/comment/1761543/","msgid":"<CACRpkdZnXJHx6P+YqAuDo8G5RC9+2pa9-2jhZp5HH-oKnHM+sQ@mail.gmail.com>","list_archive_url":null,"date":"2017-09-01T09:27:05","subject":"Re: [PATCH 7/7] drm/pl111: Add handling of Versatile platforms","submitter":{"id":7055,"url":"http://patchwork.ozlabs.org/api/people/7055/","name":"Linus Walleij","email":"linus.walleij@linaro.org"},"content":"On Thu, Aug 31, 2017 at 7:58 PM, Eric Anholt <eric@anholt.net> wrote:\n> Linus Walleij <linus.walleij@linaro.org> writes:\n>\n>> The ARM reference designs in the Versatile family: Integrator,\n>> Versatile and RealView can make use of the new DRM driver as well.\n>> We just need to create a bit of platform-specific code for them\n>> that we isolate to its own file.\n>>\n>> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n>> ---\n>>  drivers/gpu/drm/pl111/Makefile          |   1 +\n>>  drivers/gpu/drm/pl111/pl111_display.c   |   7 -\n>>  drivers/gpu/drm/pl111/pl111_drv.c       |   5 +\n>>  drivers/gpu/drm/pl111/pl111_versatile.c | 270 ++++++++++++++++++++++++++++++++\n>>  drivers/gpu/drm/pl111/pl111_versatile.h |   9 ++\n>>  5 files changed, 285 insertions(+), 7 deletions(-)\n>>  create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.c\n>>  create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.h\n>>\n>> diff --git a/drivers/gpu/drm/pl111/Makefile b/drivers/gpu/drm/pl111/Makefile\n>> index c5f8f9684848..fce1453a93e1 100644\n>> --- a/drivers/gpu/drm/pl111/Makefile\n>> +++ b/drivers/gpu/drm/pl111/Makefile\n>> @@ -1,4 +1,5 @@\n>>  pl111_drm-y +=       pl111_display.o \\\n>> +             pl111_versatile.o \\\n>>               pl111_drv.o\n>>\n>>  pl111_drm-$(CONFIG_DEBUG_FS) += pl111_debugfs.o\n>> diff --git a/drivers/gpu/drm/pl111/pl111_display.c b/drivers/gpu/drm/pl111/pl111_display.c\n>> index 37f409867934..f7b043f4fed6 100644\n>> --- a/drivers/gpu/drm/pl111/pl111_display.c\n>> +++ b/drivers/gpu/drm/pl111/pl111_display.c\n>> @@ -454,13 +454,6 @@ int pl111_display_init(struct drm_device *drm)\n>>       }\n>>       of_node_put(endpoint);\n>>\n>> -     if (tft_r0b0g0[0] != 0 ||\n>> -         tft_r0b0g0[1] != 8 ||\n>> -         tft_r0b0g0[2] != 16) {\n>> -             dev_err(dev, \"arm,pl11x,tft-r0g0b0-pads != [0,8,16] not yet supported\\n\");\n>> -             return -EINVAL;\n>> -     }\n>\n> I had a note in the DOC section of pl111_drv.c about needing to filter\n> available formats based on this property.  Could you update that with\n> some explanation of the new state of things?  (Do we actually need to\n> filter the formats?)\n\nNo we don't need to filter it really, only the Nomadik makes use of this\nproperty and I haven't come to adding support for that yet.\n\n> I haven't verified that we get the same pin routing setup as the fbdev\n> driver did for these platforms, but even if they don't match yet this\n> seems like an excellent start and we can make sure we sort them out as\n> we add panel drivers.\n\nThis should be fine with panels I think, the problem is how the\nCLCD/PL11x is integrated with the silicon, as sometimes the VHDL\ncoders just arbitrarily manage to switch things around. It should\nbe handled entirely in the PL11x driver.\n\n> I've verified that my Cygnus board continues working with your series.\n\nNice! I have graphics working on the RealView machines.\n\nNow I just need to figure out a few minor things like augmenting the\nlist of resolutions from the panel for the bus bandwidth and\nsome dumb VGA bridge business.\n\nYours,\nLinus Walleij","headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"ptwoGuXO\"; \n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=linaro.org header.i=@linaro.org\n\theader.b=\"jXYqDzZQ\"; dkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xkDRX6mHsz9t2x\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tFri,  1 Sep 2017 19:27:36 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dniEd-0006wL-Em; Fri, 01 Sep 2017 09:27:31 +0000","from mail-oi0-x231.google.com ([2607:f8b0:4003:c06::231])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1dniEZ-0006EX-Bo for linux-arm-kernel@lists.infradead.org;\n\tFri, 01 Sep 2017 09:27:29 +0000","by mail-oi0-x231.google.com with SMTP id w10so16266711oie.1\n\tfor <linux-arm-kernel@lists.infradead.org>;\n\tFri, 01 Sep 2017 02:27:06 -0700 (PDT)","by 10.157.58.74 with HTTP; Fri, 1 Sep 2017 02:27:05 -0700 (PDT)"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From:\n\tReferences:In-Reply-To:MIME-Version:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=LsD0NNJI3OS3KSvNsjeorNcVO1X3y1J402atERYJp44=;\n\tb=ptwoGuXO1h9xsQ\n\tJ2L+b+sgScv2RIcJgISY/OcswVMj9FY8QUsCa0RFSzUHYmz93hBO/oKSGhDWO36Kn23zzHENAGHmS\n\tmcpxgKaxJAqedLyQecg8rd8uNIRFuqttxyEmREUGJp9dIJM/WAwsn/Pt73GKKTZ+bQGhaGUZ7HSyj\n\thm3T0x8vZddI7XMgATESNYzV7v7vZLjQ5gK3GK7SP7W3RlesDll1RjSRn/1RM2Rv6RoWd2K+Dv3uW\n\tqZs3nTgIMnork5azAQT2Y+LVYo/mQyK9Mb1PYBNZl4/NvGNkZl/DvspEnfD+Hd6uRYCW5zOWp5rWu\n\tLMGCzgqdZwaCTI08uBwg==;","v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google;\n\th=mime-version:in-reply-to:references:from:date:message-id:subject:to\n\t:cc; bh=jk9afLG5/ciIcorG63hcmnsa4kQSx07tpVvVnlLOqEY=;\n\tb=jXYqDzZQs7lGKtxOoN1OJGedDFM8Y+Cke7Kx4ad6siH2aHmLKyXaWmEurQ9+lvHk3p\n\tGltiFNwCwExM/2AbBFIxwj115uOr1xI3u9VSWPzjnrOZ+/ysaj2h9lY/b3ugDnuWRQ7V\n\taSCZG58MM7L+3ctkfGzlewr63q+sbd6JJhBSk="],"X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:in-reply-to:references:from:date\n\t:message-id:subject:to:cc;\n\tbh=jk9afLG5/ciIcorG63hcmnsa4kQSx07tpVvVnlLOqEY=;\n\tb=IJ3wqkMVllsMkUQdnE4FXlXUjU6NV6PV4aNokOadnnFD93YyKoHb9VQKhPihjpiPB4\n\tskdgEhMZYRz7FNnIBTKqoZF9BqYx254rZwEyCW99NFVzuDgn0UuNWrWQsOBoIge3QzOG\n\tzFnmHOG9oRY7dD8s8+a8oxflgjV7IEpvUYZe47dFvfq0hB+g7+zM9s9CcNW2ZzmCM8tf\n\tEFEW7TFY6wMU2v6W8sxdNTwj8H2/+F2/VYDL7S/muKRHsr66vBID17VqzTttN3D3FEZm\n\tZu93WTY/pg2HHs4V1dsgYIl2UEWxZ2CsdyDGBHqMNsKQkoNtK/THjsjTPo7JIBRmGMrC\n\tISIw==","X-Gm-Message-State":"AHPjjUgE/8KcwPxcb1WGenzxYXJRigeE28bY28RtsPhd+igzF9gjZfZG\n\tiYLyDZp+Wj+pjLk8RIEZSLrpwti+9zJi","X-Google-Smtp-Source":"ADKCNb50isKkQOGMLsjvTI2+V/8lRM7HjZVY0O0ikXcwX5oHD4GF1BI3loTQc5czz1lZqBhpgbWq4ZzhXIoVHv2IxiI=","X-Received":"by 10.202.72.13 with SMTP id v13mr1501966oia.78.1504258026091;\n\tFri, 01 Sep 2017 02:27:06 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<878thzzkiz.fsf@anholt.net>","References":"<20170830180711.2791-1-linus.walleij@linaro.org>\n\t<20170830180711.2791-8-linus.walleij@linaro.org>\n\t<878thzzkiz.fsf@anholt.net>","From":"Linus Walleij <linus.walleij@linaro.org>","Date":"Fri, 1 Sep 2017 11:27:05 +0200","Message-ID":"<CACRpkdZnXJHx6P+YqAuDo8G5RC9+2pa9-2jhZp5HH-oKnHM+sQ@mail.gmail.com>","Subject":"Re: [PATCH 7/7] drm/pl111: Add handling of Versatile platforms","To":"Eric Anholt <eric@anholt.net>","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170901_022727_494947_479066AB ","X-CRM114-Status":"GOOD (  20.34  )","X-Spam-Score":"-2.7 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.7 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,\n\tlow\n\ttrust [2607:f8b0:4003:c06:0:0:0:231 listed in] [list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"\"linux-arm-kernel@lists.infradead.org\"\n\t<linux-arm-kernel@lists.infradead.org>,\n\tDaniel Vetter <daniel.vetter@intel.com>,\n\tSean Paul <seanpaul@chromium.org>, \n\t\"open list:DRM PANEL DRIVERS\" <dri-devel@lists.freedesktop.org>,\n\tJani Nikula <jani.nikula@linux.intel.com>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"}}]