summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/panel/panel-simple.c
Commit message (Collapse)AuthorAgeFilesLines
...
* drm/panel: Add display timing for HannStar HSD070PWW1Philipp Zabel2015-04-021-13/+13
| | | | | | | | | | | | | | | The HannStar HSD070PWW1 LVDS panel data sheet lists allowed ranges additionally to the typical values for pixel clock rate (64.3-82 MHz) and blanking intervals (54-681 clock cycles horizontally, 3-23 lines vertically). This patch replaces this panel's display mode with the display timing information to describe acceptable timings. Since the HSYNC and VSYNC are unused, the distribution between front porches, back porches, and sync pulse lengths was chosen at will. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add display timing supportPhilipp Zabel2015-04-021-0/+42
| | | | | | | | | | | The simple panel driver's ->get_modes() implementation calculates the display mode list from the typical timings and the ->get_timings() implementation returns the timings to the connected encoder for mode validation and fixup. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> [treding@nvidia.com: select VIDEOMODE_HELPERS] Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add support for OrtusTech COM43H4M85ULC panelPhilipp Zabel2015-04-021-0/+27
| | | | | | | | This adds support for the COM43H4M85ULC 3.7" 800x480 panel to the DRM simple panel driver. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add bus format for Giantplus GPG482739QS5 panelPhilipp Zabel2015-04-021-0/+1
| | | | | | | This patch adds the bus_format field to the GPG482739QS5 panel structure. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for AUO b101ean01 panelHuang Lin2015-04-021-0/+26
| | | | | | | | | The AUO b101ean01 panel is a 10.1" 1280x800 panel which can be supported by the simple panel driver. Signed-off-by: Huang Lin <hl@rock-chips.com> Reviewed-by: Daniel Kurtz <djkurtz@chromium.org> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for Innolux ZJ070NA-01PMichael Grzeschik2015-04-021-0/+26
| | | | | | | | | | The Innolux ZJ070NA-01P is a 7.0" TFT LCD panel with an integrated LED backlight unit. This panel is used on the Technexion Toucan. Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for Innolux AT043TN24Nicolas Ferre2015-04-021-0/+28
| | | | | | | | | The Innolux AT043TN24 4.3" WQVGA TFT LCD panel. This panel with backlight is found in PDA 4.3" LCD screen (TM43xx series for instance). Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for Shelly SCA07010-BFN-LNNBoris BREZILLON2015-04-021-0/+26
| | | | | | | | | | The Shelly SCA07010-BFN-LNN is a 7.0" WVGA TFT LCD panel. This panel with backlight is found in PDA 7" LCD screen (TM70xx series for instance). Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for Samsung LTN140AT29 panelStéphane Marchesin2015-04-021-0/+26
| | | | | | | | | | | | This panel is used by the Nyan Blaze board and can be supported by the simple-panel driver. Signed-off-by: Stéphane Marchesin <marcheu@chromium.org> [tomeu.vizoso@collabora.com: add device tree binding document] Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Acked-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add AVIC TM070DDH03 panel supportPhilipp Zabel2015-01-281-0/+31
| | | | | | | | The Shanghai AVIC Optoelectronics TM070DDH03 is a 7" 1024x600 TFT LCD panel connecting to a 24-bit RGB LVDS interface. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add support for Giantplus GPG482739QS5Philipp Zabel2015-01-281-0/+26
| | | | | | | | | | | | | | | This patch adds support for the GiantPlus GPG48273QS5 4.3" WQVGA TFT LCD panel to the simple-panel driver. This panel is connected via a parallel bus and uses both HSYNC and VSYNC, whose lengths are unfortunately not clearly defined. The datasheet only specifies the front- and backporch length, but the timing diagram suggests that both sync signals should be asserted for exactly one clock cycle. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm: panel: simple-panel: add bus format information for foxlink panelBoris Brezillon2015-01-211-0/+1
| | | | | | | Foxlink's fl500wvr00-a0t supports RGB888 format. Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Thierry Reding <treding@nvidia.com>
* drm: panel: simple-panel: add support for bus_format retrievalBoris Brezillon2015-01-211-0/+5
| | | | | | | | Provide a way to specify panel requirement in terms of supported media bus format (particularly useful for panels connected to an RGB or LVDS bus). Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com> Acked-by: Thierry Reding <treding@nvidia.com>
* Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linuxLinus Torvalds2014-12-151-16/+117
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull drm updates from Dave Airlie: "Highlights: - AMD KFD driver merge This is the AMD HSA interface for exposing a lowlevel interface for GPGPU use. They have an open source userspace built on top of this interface, and the code looks as good as it was going to get out of tree. - Initial atomic modesetting work The need for an atomic modesetting interface to allow userspace to try and send a complete set of modesetting state to the driver has arisen, and been suffering from neglect this past year. No more, the start of the common code and changes for msm driver to use it are in this tree. Ongoing work to get the userspace ioctl finished and the code clean will probably wait until next kernel. - DisplayID 1.3 and tiled monitor exposed to userspace. Tiled monitor property is now exposed for userspace to make use of. - Rockchip drm driver merged. - imx gpu driver moved out of staging Other stuff: - core: panel - MIPI DSI + new panels. expose suggested x/y properties for virtual GPUs - i915: Initial Skylake (SKL) support gen3/4 reset work start of dri1/ums removal infoframe tracking fixes for lots of things. - nouveau: tegra k1 voltage support GM204 modesetting support GT21x memory reclocking work - radeon: CI dpm fixes GPUVM improvements Initial DPM fan control - rcar-du: HDMI support added removed some support for old boards slave encoder driver for Analog Devices adv7511 - exynos: Exynos4415 SoC support - msm: a4xx gpu support atomic helper conversion - tegra: iommu support universal plane support ganged-mode DSI support - sti: HDMI i2c improvements - vmwgfx: some late fixes. - qxl: use suggested x/y properties" * 'drm-next' of git://people.freedesktop.org/~airlied/linux: (969 commits) drm: sti: fix module compilation issue drm/i915: save/restore GMBUS freq across suspend/resume on gen4 drm: sti: correctly cleanup CRTC and planes drm: sti: add HQVDP plane drm: sti: add cursor plane drm: sti: enable auxiliary CRTC drm: sti: fix delay in VTG programming drm: sti: prepare sti_tvout to support auxiliary crtc drm: sti: use drm_crtc_vblank_{on/off} instead of drm_vblank_{on/off} drm: sti: fix hdmi avi infoframe drm: sti: remove event lock while disabling vblank drm: sti: simplify gdp code drm: sti: clear all mixer control drm: sti: remove gpio for HDMI hot plug detection drm: sti: allow to change hdmi ddc i2c adapter drm/doc: Document drm_add_modes_noedid() usage drm/i915: Remove '& 0xffff' from the mask given to WA_REG() drm/i915: Invert the mask and val arguments in wa_add() and WA_REG() drm: Zero out DRM object memory upon cleanup drm/i915/bdw: Fix the write setting up the WIZ hashing mode ...
| * drm/dsi: Do not require .owner field to be setThierry Reding2014-11-131-1/+0
| | | | | | | | | | | | | | Drivers now no longer need to set the .owner field. It will be automatically set at registration time. Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Update Innolux N116BGE timingsDaniel Kurtz2014-11-071-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are several different models of N116BGE. According to commit 0a2288c06aab ("drm/panel: simple: Add Innolux N116BGE panel support"), the video timings are for the eDP variant. The clock and htotal values added by that patch are out of spec according to the datasheets I have seen for the eDP N116BGE (-EA2 and -EB2). This patch changes the values to the "Typ" values on the datasheet. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> [tested that these timings work with the Tegra132 Norrin panel] Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Add support for Hitachi TX23D38VM0CAALucas Stach2014-11-071-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | The Hitachi TX23D38VM0CAA is a 9" WVGA TFT LCD panel and can be supported by the simple-panel driver. This panel is connected via LVDS and uses the data enable signal for timing. Since HSYNC/VSYNC are ignored, the split between sync length and porches is arbitrary, as long as the complete horizontal blanking interval is 256 clocks, and the vertical blanking interval is 45 lines. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Add support for Innolux G121I1-L01Lucas Stach2014-11-071-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | The Innolux G121I1-L01 is a 12.1" TFT LCD panel and can be supported by the simple-panel driver. This panel is connected via LVDS and uses the data enable signal for timing. Since HSYNC/VSYNC are ignored, the split between sync length and porches is arbitrary, as long as the complete horizontal blanking interval is 160 clocks, and the vertical blanking interval is 24 lines. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Add missing .bpc fieldsThierry Reding2014-11-071-0/+5
| | | | | | | | | | | | | | | | | | | | Various panels were missing the .bpc field which encodes the number of bits per color. Not every display driver relies on this value, but since the panels can be used with any display engine it must be specified so that if a driver knows how to differentiate based on this field it can do so. Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Add AUO B116XW03 panel supportAjay Kumar2014-11-071-0/+26
| | | | | | | | | | | | | | | | | | | | | | The AUO B116XW03 is a 11.6" HD TFT LCD panel connecting to a LVDS interface and with an integrated LED backlight unit. This panel is used on the Samsung Chromebook(XE303C12). Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> [treding@nvidia.com: add missing .bpc field] Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Add HannStar HSD070PWW1 7.0" WXGA TFT LCD panelPhilipp Zabel2014-11-071-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the HannStar Display Corp. HSD070PWW1 7.0" WXGA TFT LCD panel to the simple-panel driver. The binding documentation is included. This panel is connected via LVDS and uses the data enable signal for timing. Since HSYNC/VSYNC are ignored, the split between sync length and porches is arbitrary, as long as the complete horizontal blanking interval is 160 clocks, and the vertical blanking interval is 23 lines. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
| * drm/panel: simple: Update calls to gpiod_get*()Alexandre Courbot2014-11-061-9/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the new flags argument to calls of (devm_)gpiod_get*() and remove any direction setting code afterwards. Currently both forms (with or without the flags argument) are valid thanks to transitional macros in <linux/gpio/consumer.h>. These macros will be removed once all consumers are updated and the flags argument will become compulsary. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Acked-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* | gpu: drm: panel: drop owner assignment from platform_driversWolfram Sang2014-10-201-1/+0
|/ | | | | | | A platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
* drm/panel/simple: add optronics B101XTN01.0 (v3)Rob Clark2014-09-101-0/+27
| | | | | | | | | | | | | LVDS panel, make/model described as: AU Optronics Corporation - B101XTN01.0 (H/W:0A) See: http://www.encore-electronic.com/media/B101XTN01.0.pdf Tested with panel attached to an Inforce IFC6410 board. Signed-off-by: Rob Clark <robdclark@gmail.com>
* drm/panel: simple: Use devm_gpiod_get_optional()Alexandre Courbot2014-08-071-7/+5
| | | | | | | Use the new devm_gpiod_get_optional() to simplify the probe code. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add AUO B133HTN01 panel supportAjay Kumar2014-08-061-0/+30
| | | | | | | | | | The AUO B133HTN01 is a 13.6" FHD TFT LCD panel connecting to an eDP interface and with an integrated LED backlight unit. This panel is used on the Samsung Chromebook 2 (XE503C32). Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Support delays in panel functionsAjay Kumar2014-08-061-0/+30
| | | | | | | | | For most of the panels, we need to provide delays during various stages of panel power up and power down. Add a structure to hold those delay values and use them in corresponding functions. Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add proper definition for prepare and unprepareAjay Kumar2014-08-061-10/+27
| | | | | | | | | Move out code from enable and disable routines to prepare and unprepare routines, so that functionality is properly distributed across all the panel functions. Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add dummy prepare and unprepare routinesAjay Kumar2014-08-061-0/+12
| | | | | | | | This patch adds dummy definition for prepare and unprepare routines to simple panel driver. Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Remove simple-panel compatibleThierry Reding2014-08-061-2/+0
| | | | | | | | | | simple-panel is not a valid panel model, so there is no data (video timings, etc.) associated with it. Therefore drivers can't do anything useful with it, so it should not appear in the table of OF matches. Device trees will always need to specify the exact model of the panel. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add Innolux N116BGE panel supportThierry Reding2014-08-061-0/+27
| | | | | | | | | The Innolux N116BGE is an 11.6" WXGA TFT LCD panel connecting to an eDP interface and with an integrated LED backlight unit. It is used in the Tegra132 Norrin reference design. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Add bits-per-color supportStéphane Marchesin2014-08-011-0/+12
| | | | | | | | | The bits-per-color is provided by the EDID normally, but if we're using panels, we need to store it somewhere. So we add a field to the panel descriptor for it. Signed-off-by: Stéphane Marchesin <marcheu@chromium.org> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: add support for InnoLux N156BGE-L21 panelAlban Bedel2014-07-221-0/+25
| | | | | | | | This panel is used by the Medcom Wide and supported by the simple-panel driver. Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: add support for Foxlink FL500WVR00-A0T panelBoris BREZILLON2014-07-151-0/+25
| | | | | | | | This panel is used by Atmel's SAMA5D3 Evaluation Kits (sama5d3xek) and supported by the simple-panel driver. Signed-off-by: Boris BREZILLON <boris.brezillon@free-electrons.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Set non-continuous clock flag on supporting panelsAlexandre Courbot2014-07-141-2/+3
| | | | | | | | | The LG LD070WX3-SL01 and Panasonic VVX10F004B00 are DSI support non-continuous clock mode. Set the MIPI_DSI_CLOCK_NON_CONTINUOUS to their definition so host drivers become aware of this capability. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple - Add AUO B133XTN01 panel supportStéphane Marchesin2014-06-091-0/+25
| | | | | | | | | This panel is used by nyan-big and can be supported by the simple-panel driver. Signed-off-by: Stéphane Marchesin <marcheu@chromium.org> [treding@nvidia.com: add device tree binding document] Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple - Disable panel on shutdownThierry Reding2014-06-051-0/+19
| | | | | | | When a device is shut down, disable the panel to make sure the display backlight doesn't stay lit. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: add support for EDT ET057090DHU panelStefan Agner2014-06-051-0/+26
| | | | | | | | This panel is sold by Toradex for Colibri T20/T30 and Apalis T30 evaluation kits. Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add support for EDT ETM0700G0DH6 and ET070080DH6 panelsPhilipp Zabel2014-06-051-0/+29
| | | | | | | | The EDT ETM0700G0DH6 and ET070080DH6 are 7" 800x480 panels, which can be supported by the simple panel driver. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: add support for LG LD070WX3-SL01 panelAlexandre Courbot2014-04-041-0/+30
| | | | | | | | This panel is used by Tegra Note 7 and supported by the simple-panel driver. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: add support for LG LH500WX1-SD03 panelAlexandre Courbot2014-04-041-0/+30
| | | | | | | | This panel is used by the NVIDIA SHIELD and supported by the simple-panel driver. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Allow DSI panels to provide mode flagsThierry Reding2014-04-041-0/+3
| | | | | | | | | In order to differentiate between the different video modes (burst vs. non-burst, sync pulses vs. sync events) supported by peripherals, pass the flags that specify this mode in the panel description to the DSI peripheral device when probed. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: simple: Allow GPIO accesses to sleepThierry Reding2014-04-041-2/+2
| | | | | | | | | The enable GPIO for panels may be provided by GPIO expanders on slow busses (such as I2C), and therefore toggling the GPIO may sleep. Since these accesses don't happen in interrupt context, use the *_cansleep() variants of the GPIO API. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: remove redundant regulator_disable()Alexandre Courbot2014-04-041-2/+0
| | | | | | | | regulator_disable() is already performed by panel_simple_disable(), which is called by panel_simple_remove(). Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: use gpiod interface for enable GPIOAlexandre Courbot2014-04-041-49/+18
| | | | | | | | | Use the new GPIO descriptor interface to handle the panel's enable GPIO. This considerably simplifies the code. Signed-off-by: Alexandre Courbot <acourbot@nvidia.com> [treding@nvidia.com: rework to improve readability] Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add LG 12.9" LCD panelThierry Reding2014-04-041-0/+25
| | | | | | | The LP129QE LCD has an LED backlight and a display resolution of 2560x1700 pixels. Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: update EDID BLOB in panel_simple_get_modes()Stephen Warren2014-01-141-0/+1
| | | | | | | | | This stashes away the EDID data so that the sysfs per-connector file "edid" can display it. Without this change, the "edid" file is always empty. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add support for Chunghwa CLAA101WA01A panelStephen Warren2014-01-081-0/+25
| | | | | | | | The Chunghwa CLAA101WA01A is a 10.1" 1366x768 panel, which can be supported by the simple panel driver. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add support for Samsung LTN101NT05 panelMarc Dietrich2014-01-081-0/+25
| | | | | | | | | | | The Samsung LNT101NT05 10.1" WXVGA panel can be supported by the simple panel driver. Cc: linux-fbdev@vger.kernel.org Cc: dri-devel@lists.freedesktop.org Cc: David Airlie <airlied@linux.ie> Signed-off-by: Marc Dietrich <marvin24@gmx.de> Signed-off-by: Thierry Reding <treding@nvidia.com>
* drm/panel: Add support for Panasonic VVX10F004B0Thierry Reding2013-12-171-7/+87
| | | | | | | The Panasonic VVX10F004B0 is a 10.1" WUXGA TFT LCD panel connected using four DSI lanes. Signed-off-by: Thierry Reding <treding@nvidia.com>
OpenPOWER on IntegriCloud