From: Eric Anholt <eric@anholt.net> To: Florian Fainelli <f.fainelli@gmail.com>, Michael Turquette <mturquette@baylibre.com>, Stephen Boyd <sboyd@codeaurora.org>, Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>, dri-devel@lists.freedesktop.org, Thierry Reding <thierry.reding@gmail.com> Cc: linux-rpi-kernel@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Stephen Warren <swarren@wwwdotorg.org>, Lee Jones <lee@kernel.org>, bcm-kernel-feedback-list@broadcom.com, linux-clk@vger.kernel.org, Eric Anholt <eric@anholt.net> Subject: [PATCH 00/11] drm/vc4: DSI panel support + Raspberry Pi touchscreen Date: Wed, 14 Dec 2016 11:46:10 -0800 [thread overview] Message-ID: <20161214194621.16499-1-eric@anholt.net> (raw) After 9 months of development, I finally got the DSI panel to light up from poweron, and this is the series for enabling it. I've included the whole thing Cced to all the subsystems, as there are some interesting choices we have to make (how the analog PHY clocks are represented in common clocks¸ and how the touchscreen panel is represented in DT). There's one commit left out of the series, which is the fix to allow bcm2835_dma.c's poll-for-completion from IRQ handlers for the DSI1 register write workaround. However, with the panel's DSI transaction workaround, we're not triggering our IRQ handler anyway. Note that patch #11 is not intended to be pushed, it's just a demo. Eric Anholt (11): clk: bcm2835: Don't rate change PLLs on behalf of DSI PLL dividers. clk: bcm2835: Register the DSI0/DSI1 pixel clocks. clk: bcm2835: Add leaf clock measurement support, disabled by default drm/vc4: Set up SCALER_DISPCTRL at boot. drm/vc4: Add support for feeding DSI encoders from the pixel valve. dt-bindings: Document the VC4 DSI module nodes. drm/vc4: Add DSI driver dt-bindings: Document the Raspberry Pi Touchscreen nodes. drm/panel: Add support for the Raspberry Pi 7" Touchscreen. ARM: bcm2835: dt: Add the DSI module nodes and clocks. ARM: bcm2835: Enable the Raspberry Pi touchscreen panel. .../bindings/clock/brcm,bcm2835-cprman.txt | 15 +- .../devicetree/bindings/display/brcm,bcm-vc4.txt | 35 + .../display/panel/raspberrypi,touchscreen.txt | 45 + arch/arm/boot/dts/bcm2835-rpi.dtsi | 8 + arch/arm/boot/dts/bcm283x.dtsi | 77 +- drivers/clk/bcm/clk-bcm2835.c | 302 +++- drivers/gpu/drm/panel/Kconfig | 8 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-raspberrypi-touchscreen.c | 509 ++++++ drivers/gpu/drm/vc4/Kconfig | 2 + drivers/gpu/drm/vc4/Makefile | 1 + drivers/gpu/drm/vc4/vc4_crtc.c | 33 +- drivers/gpu/drm/vc4/vc4_debugfs.c | 1 + drivers/gpu/drm/vc4/vc4_drv.c | 1 + drivers/gpu/drm/vc4/vc4_drv.h | 5 + drivers/gpu/drm/vc4/vc4_dsi.c | 1725 ++++++++++++++++++++ drivers/gpu/drm/vc4/vc4_hvs.c | 14 + drivers/gpu/drm/vc4/vc4_regs.h | 5 + include/dt-bindings/clock/bcm2835.h | 2 + 19 files changed, 2722 insertions(+), 67 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,touchscreen.txt create mode 100644 drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c create mode 100644 drivers/gpu/drm/vc4/vc4_dsi.c -- 2.11.0
WARNING: multiple messages have this Message-ID (diff)
From: eric@anholt.net (Eric Anholt) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH 00/11] drm/vc4: DSI panel support + Raspberry Pi touchscreen Date: Wed, 14 Dec 2016 11:46:10 -0800 [thread overview] Message-ID: <20161214194621.16499-1-eric@anholt.net> (raw) After 9 months of development, I finally got the DSI panel to light up from poweron, and this is the series for enabling it. I've included the whole thing Cced to all the subsystems, as there are some interesting choices we have to make (how the analog PHY clocks are represented in common clocks? and how the touchscreen panel is represented in DT). There's one commit left out of the series, which is the fix to allow bcm2835_dma.c's poll-for-completion from IRQ handlers for the DSI1 register write workaround. However, with the panel's DSI transaction workaround, we're not triggering our IRQ handler anyway. Note that patch #11 is not intended to be pushed, it's just a demo. Eric Anholt (11): clk: bcm2835: Don't rate change PLLs on behalf of DSI PLL dividers. clk: bcm2835: Register the DSI0/DSI1 pixel clocks. clk: bcm2835: Add leaf clock measurement support, disabled by default drm/vc4: Set up SCALER_DISPCTRL at boot. drm/vc4: Add support for feeding DSI encoders from the pixel valve. dt-bindings: Document the VC4 DSI module nodes. drm/vc4: Add DSI driver dt-bindings: Document the Raspberry Pi Touchscreen nodes. drm/panel: Add support for the Raspberry Pi 7" Touchscreen. ARM: bcm2835: dt: Add the DSI module nodes and clocks. ARM: bcm2835: Enable the Raspberry Pi touchscreen panel. .../bindings/clock/brcm,bcm2835-cprman.txt | 15 +- .../devicetree/bindings/display/brcm,bcm-vc4.txt | 35 + .../display/panel/raspberrypi,touchscreen.txt | 45 + arch/arm/boot/dts/bcm2835-rpi.dtsi | 8 + arch/arm/boot/dts/bcm283x.dtsi | 77 +- drivers/clk/bcm/clk-bcm2835.c | 302 +++- drivers/gpu/drm/panel/Kconfig | 8 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-raspberrypi-touchscreen.c | 509 ++++++ drivers/gpu/drm/vc4/Kconfig | 2 + drivers/gpu/drm/vc4/Makefile | 1 + drivers/gpu/drm/vc4/vc4_crtc.c | 33 +- drivers/gpu/drm/vc4/vc4_debugfs.c | 1 + drivers/gpu/drm/vc4/vc4_drv.c | 1 + drivers/gpu/drm/vc4/vc4_drv.h | 5 + drivers/gpu/drm/vc4/vc4_dsi.c | 1725 ++++++++++++++++++++ drivers/gpu/drm/vc4/vc4_hvs.c | 14 + drivers/gpu/drm/vc4/vc4_regs.h | 5 + include/dt-bindings/clock/bcm2835.h | 2 + 19 files changed, 2722 insertions(+), 67 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/panel/raspberrypi,touchscreen.txt create mode 100644 drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c create mode 100644 drivers/gpu/drm/vc4/vc4_dsi.c -- 2.11.0
next reply other threads:[~2016-12-14 19:46 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-12-14 19:46 Eric Anholt [this message] 2016-12-14 19:46 ` [PATCH 00/11] drm/vc4: DSI panel support + Raspberry Pi touchscreen Eric Anholt 2016-12-14 19:46 ` [PATCH 01/11] clk: bcm2835: Don't rate change PLLs on behalf of DSI PLL dividers Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 02/11] clk: bcm2835: Register the DSI0/DSI1 pixel clocks Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-21 23:14 ` Stephen Boyd 2016-12-21 23:14 ` Stephen Boyd 2016-12-21 23:14 ` Stephen Boyd 2016-12-22 1:23 ` Eric Anholt 2016-12-22 1:23 ` Eric Anholt 2016-12-22 1:23 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 03/11] clk: bcm2835: Add leaf clock measurement support, disabled by default Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 04/11] drm/vc4: Set up SCALER_DISPCTRL at boot Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2017-01-31 19:35 ` Daniel Vetter 2017-01-31 19:35 ` Daniel Vetter 2017-01-31 19:35 ` Daniel Vetter 2016-12-14 19:46 ` [PATCH 05/11] drm/vc4: Add support for feeding DSI encoders from the pixel valve Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2017-01-31 19:39 ` Daniel Vetter 2017-01-31 19:39 ` Daniel Vetter 2017-01-31 19:39 ` Daniel Vetter 2017-01-31 19:54 ` Eric Anholt 2017-01-31 19:54 ` Eric Anholt 2017-01-31 19:54 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 06/11] dt-bindings: Document the VC4 DSI module nodes Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 07/11] drm/vc4: Add DSI driver Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2017-01-31 19:51 ` Daniel Vetter 2017-01-31 19:51 ` Daniel Vetter 2017-01-31 19:51 ` Daniel Vetter 2016-12-14 19:46 ` [PATCH 08/11] dt-bindings: Document the Raspberry Pi Touchscreen nodes Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 09/11] drm/panel: Add support for the Raspberry Pi 7" Touchscreen Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2017-01-31 21:07 ` Thierry Reding 2017-01-31 21:07 ` Thierry Reding 2017-01-31 21:07 ` Thierry Reding 2017-01-31 21:17 ` Daniel Vetter 2017-01-31 21:17 ` Daniel Vetter 2017-01-31 21:17 ` Daniel Vetter 2017-01-31 21:42 ` Thierry Reding 2017-01-31 21:42 ` Thierry Reding 2017-01-31 21:42 ` Thierry Reding 2017-01-31 21:19 ` Daniel Vetter 2017-01-31 21:19 ` Daniel Vetter 2017-01-31 21:19 ` Daniel Vetter 2017-01-31 21:38 ` Thierry Reding 2017-01-31 21:38 ` Thierry Reding 2016-12-14 19:46 ` [PATCH 10/11] ARM: bcm2835: dt: Add the DSI module nodes and clocks Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` [PATCH 11/11] ARM: bcm2835: Enable the Raspberry Pi touchscreen panel Eric Anholt 2016-12-14 19:46 ` Eric Anholt 2016-12-14 19:46 ` Eric Anholt
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20161214194621.16499-1-eric@anholt.net \ --to=eric@anholt.net \ --cc=bcm-kernel-feedback-list@broadcom.com \ --cc=dri-devel@lists.freedesktop.org \ --cc=f.fainelli@gmail.com \ --cc=lee@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-clk@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-rpi-kernel@lists.infradead.org \ --cc=mark.rutland@arm.com \ --cc=mturquette@baylibre.com \ --cc=robh+dt@kernel.org \ --cc=sboyd@codeaurora.org \ --cc=swarren@wwwdotorg.org \ --cc=thierry.reding@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.