Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753437AbdCFKAC (ORCPT ); Mon, 6 Mar 2017 05:00:02 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:46040 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752835AbdCFJ7y (ORCPT ); Mon, 6 Mar 2017 04:59:54 -0500 DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org DF0B160117 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=architt@codeaurora.org Subject: Re: [PATCH V3 0/4] megachips-stdpxxxx-ge-b850v3-fw To: Peter Senna Tschudin References: Cc: airlied@linux.ie, akpm@linux-foundation.org, daniel.vetter@ffwll.ch, davem@davemloft.net, devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org, enric.balletbo@collabora.com, eballetbo@gmail.com, galak@codeaurora.org, gregkh@linuxfoundation.org, heiko@sntech.de, ijc+devicetree@hellion.org.uk, javier@dowhile0.org, jslaby@suse.cz, kernel@pengutronix.de, linux-arm-kernel@lists.infradead.org, linux@armlinux.org.uk, linux-kernel@vger.kernel.org, linux@roeck-us.net, mark.rutland@arm.com, martin.donnelly@ge.com, martyn.welch@collabora.co.uk, mchehab@osg.samsung.com, pawel.moll@arm.com, peter.senna@gmail.com, p.zabel@pengutronix.de, thierry.reding@gmail.com, rmk+kernel@armlinux.org.uk, robh+dt@kernel.org, shawnguo@kernel.org, tiwai@suse.com, treding@nvidia.com, laurent.pinchart@ideasonboard.com From: Archit Taneja Message-ID: <3583de63-eda5-5d9c-741e-040db1ccee69@codeaurora.org> Date: Mon, 6 Mar 2017 15:27:16 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4025 Lines: 95 Hi, On 3/3/2017 9:27 PM, Peter Senna Tschudin wrote: > The video processing pipeline on the second output on the GE B850v3: > > Host -> LVDS|--(STDP4028)--|DP -> DP|--(STDP2690)--|DP++ -> Video output > > Each bridge has a dedicated flash containing firmware for supporting the > custom design. The result is that in this design neither the STDP4028 > nor the STDP2690 behave as the stock bridges would. The compatible > strings include the suffix "-ge-b850v3-fw" to make it clear that the > driver is for the bridges with the firmware which is specific for the GE > B850v3. > > The driver is powerless to control the video processing pipeline, as the > two bridges behaves as a single one. The driver is only needed for > telling the host about EDID / HPD, and for giving the host powers to ack > interrupts. queued Patches 1,2 and 3 to drm-misc-next. Made stdp2690_get_edid static in Patch #3 to fix a sparse warning. Thanks, Archit > > Changes from V2: > - Added Acked-by: Rob Herring on patch 1/4 > - Fixed the driver to allow it to be compiled as a module > > Changes from V1: > - Fix bindings documentation > - Fix white space issues on the driver > - Improved ge_b850v3_lvds_remove() to not rely on ge_b850v3_lvds_ptr->edid > > Changes from V7(was GE B850v3 LVDS/DP++ Bridge): > - New devicetree binding with one node per bridge, and two ports per bridge > - Two i2c_devices, one per bridge > - Removed uneeded mutexes > - Moved documentation to bindings/display/bridge > - Included test for EDID extension blocks > - Renamed bridge pointer to ge_b850v3_lvds_ptr > - Removed the call to drm_helper_hpd_irq_event() > - Removed assignments to bridge.driver_private > > Changes from V6: > - Removed check for pixel clock as the bridge supports up to 330Mhz while the > host is limited to 264 MHz in very specific conditions. > - Added a second mutex to avoid concurrency issues while acking interrupts > from threaded interrupt handlers. > - Renamed the edid mutex to be more descriptive. > - Added a .detach() function that disables the interrupts. > - Adopted i2c_new_secondary_device() and updated the dts and documentation to > match the new method. > - Removed useless test to drm_bridge_add() > - Did some refactoring around devm_request_threaded_irq() > - Added a missing call to i2c_unregister_device() on the i2c_driver.remove() > function. > > Changes from V5: > - Change to MAINTAINERS in a separate patch > - Reworked interrupt handler initialization > - Removed useless calls to: drm_connector_register(), > drm_helper_hpd_irq_event(), and drm_bridge_enable() > > Changes from V4: > - Renamed the i2c_driver.name from "ge,b850v3-lvds-dp" to "b850v3-lvds-dp" to > remove the comma from the driver name > > Changes from V3: > - Removed the patch that was configuring the mapping between IPUs and external > displays on the dts file > > Peter Senna Tschudin (4): > dt-bindings: display: megachips-stdpxxxx-ge-b850v3-fw > MAINTAINERS: Add entry for megachips-stdpxxxx-ge-b850v3-fw > drm/bridge: Drivers for megachips-stdpxxxx-ge-b850v3-fw (LVDS-DP++) > dts/imx6q-b850v3: Use megachips-stdpxxxx-ge-b850v3-fw bridges > (LVDS-DP++) > > .../bridge/megachips-stdpxxxx-ge-b850v3-fw.txt | 94 +++++ > .../devicetree/bindings/vendor-prefixes.txt | 1 + > MAINTAINERS | 8 + > arch/arm/boot/dts/imx6q-b850v3.dts | 68 ++++ > drivers/gpu/drm/bridge/Kconfig | 11 + > drivers/gpu/drm/bridge/Makefile | 1 + > .../drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c | 428 +++++++++++++++++++++ > 7 files changed, 611 insertions(+) > create mode 100644 Documentation/devicetree/bindings/display/bridge/megachips-stdpxxxx-ge-b850v3-fw.txt > create mode 100644 drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c > -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, hosted by The Linux Foundation