Message ID | 1415098370-12263-2-git-send-email-p.zabel@pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Am Dienstag, den 04.11.2014, 11:52 +0100 schrieb Philipp Zabel: > The imx-drm driver was put into staging mostly for the following reasons, > all of which have been addressed or superseded: > - convert the irq driver to use linear irq domains > - work out the device tree bindings, this lead to the common of_graph > bindings being used > - factor out common helper functions, this mostly resulted in the > component framework and drm of_graph helpers. > > Before adding new fixes, and certainly before adding new features, > move it into its proper place below drivers/gpu/drm. > > Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> > --- > Since this patch is generated with --find-renames, it should be applied > on top of the staging-next branch of the staging tree, or at least after > commit f582d9a8b955 (drivers: staging: imx-drm driver cleanup). The full commit as also available at: git://git.pengutronix.de/git/pza/linux.git topic/imx-drm-destaging regards Philipp
Hi Philipp, Just a flyby question On 04/11/14 10:52, Philipp Zabel wrote: > The imx-drm driver was put into staging mostly for the following reasons, > all of which have been addressed or superseded: > - convert the irq driver to use linear irq domains > - work out the device tree bindings, this lead to the common of_graph > bindings being used Afaics Steve's patches introduce some non-backward compatible changes to the DT bindings (s/port/crtc/). Shouldn't those be discussed/resolved prior to pushing the driver out of staging ? Cheers, Emil
Am Dienstag, den 04.11.2014, 16:19 +0000 schrieb Emil Velikov: > Hi Philipp, > > Just a flyby question > > On 04/11/14 10:52, Philipp Zabel wrote: > > The imx-drm driver was put into staging mostly for the following reasons, > > all of which have been addressed or superseded: > > - convert the irq driver to use linear irq domains > > - work out the device tree bindings, this lead to the common of_graph > > bindings being used > Afaics Steve's patches introduce some non-backward compatible changes to > the DT bindings (s/port/crtc/). Shouldn't those be discussed/resolved > prior to pushing the driver out of staging ? Those binding changes are backwards. We moved away from mentioning crtcs in the device tree earlier, as those are most definitely not a property of the hardware. The two output ports of the IPU in the device tree correspond to the physical output signals of the two DIs, not to the crtcs, which are a linux specific abstraction, more closely related to parts of the DP and DC units. What is exactly represented by each crtc could be changed in the code without affecting the device tree bindings. In hardware, it is possible to link both of the DC/DP output channels to either DI dynamically. The driver could be changed to stop associating each crtc with a fixed DI, and select the appropriate DI automatically for a given crtc <-> encoder pair. In my opinion the time for non-backward compatible changes has passed anyway. That being said, if a case is to be made for device tree changes, it should be discussed before the move. regards Philipp
diff --git a/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt b/Documentation/devicetree/bindings/drm/imx/fsl-imx-drm.txt similarity index 100% rename from Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt rename to Documentation/devicetree/bindings/drm/imx/fsl-imx-drm.txt diff --git a/Documentation/devicetree/bindings/staging/imx-drm/hdmi.txt b/Documentation/devicetree/bindings/drm/imx/hdmi.txt similarity index 100% rename from Documentation/devicetree/bindings/staging/imx-drm/hdmi.txt rename to Documentation/devicetree/bindings/drm/imx/hdmi.txt diff --git a/Documentation/devicetree/bindings/staging/imx-drm/ldb.txt b/Documentation/devicetree/bindings/drm/imx/ldb.txt similarity index 100% rename from Documentation/devicetree/bindings/staging/imx-drm/ldb.txt rename to Documentation/devicetree/bindings/drm/imx/ldb.txt diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig index e3b4b0f..8e2d0c9 100644 --- a/drivers/gpu/drm/Kconfig +++ b/drivers/gpu/drm/Kconfig @@ -200,3 +200,5 @@ source "drivers/gpu/drm/tegra/Kconfig" source "drivers/gpu/drm/panel/Kconfig" source "drivers/gpu/drm/sti/Kconfig" + +source "drivers/gpu/drm/imx/Kconfig" diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile index 9292a76..3829bb1 100644 --- a/drivers/gpu/drm/Makefile +++ b/drivers/gpu/drm/Makefile @@ -62,6 +62,7 @@ obj-$(CONFIG_DRM_BOCHS) += bochs/ obj-$(CONFIG_DRM_MSM) += msm/ obj-$(CONFIG_DRM_TEGRA) += tegra/ obj-$(CONFIG_DRM_STI) += sti/ +obj-$(CONFIG_DRM_IMX) += imx/ obj-y += i2c/ obj-y += panel/ obj-y += bridge/ diff --git a/drivers/staging/imx-drm/Kconfig b/drivers/gpu/drm/imx/Kconfig similarity index 100% rename from drivers/staging/imx-drm/Kconfig rename to drivers/gpu/drm/imx/Kconfig diff --git a/drivers/staging/imx-drm/Makefile b/drivers/gpu/drm/imx/Makefile similarity index 100% rename from drivers/staging/imx-drm/Makefile rename to drivers/gpu/drm/imx/Makefile diff --git a/drivers/staging/imx-drm/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c similarity index 100% rename from drivers/staging/imx-drm/imx-drm-core.c rename to drivers/gpu/drm/imx/imx-drm-core.c diff --git a/drivers/staging/imx-drm/imx-drm.h b/drivers/gpu/drm/imx/imx-drm.h similarity index 100% rename from drivers/staging/imx-drm/imx-drm.h rename to drivers/gpu/drm/imx/imx-drm.h diff --git a/drivers/staging/imx-drm/imx-hdmi.c b/drivers/gpu/drm/imx/imx-hdmi.c similarity index 100% rename from drivers/staging/imx-drm/imx-hdmi.c rename to drivers/gpu/drm/imx/imx-hdmi.c diff --git a/drivers/staging/imx-drm/imx-hdmi.h b/drivers/gpu/drm/imx/imx-hdmi.h similarity index 100% rename from drivers/staging/imx-drm/imx-hdmi.h rename to drivers/gpu/drm/imx/imx-hdmi.h diff --git a/drivers/staging/imx-drm/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c similarity index 100% rename from drivers/staging/imx-drm/imx-ldb.c rename to drivers/gpu/drm/imx/imx-ldb.c diff --git a/drivers/staging/imx-drm/imx-tve.c b/drivers/gpu/drm/imx/imx-tve.c similarity index 100% rename from drivers/staging/imx-drm/imx-tve.c rename to drivers/gpu/drm/imx/imx-tve.c diff --git a/drivers/staging/imx-drm/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c similarity index 100% rename from drivers/staging/imx-drm/ipuv3-crtc.c rename to drivers/gpu/drm/imx/ipuv3-crtc.c diff --git a/drivers/staging/imx-drm/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3-plane.c similarity index 100% rename from drivers/staging/imx-drm/ipuv3-plane.c rename to drivers/gpu/drm/imx/ipuv3-plane.c diff --git a/drivers/staging/imx-drm/ipuv3-plane.h b/drivers/gpu/drm/imx/ipuv3-plane.h similarity index 100% rename from drivers/staging/imx-drm/ipuv3-plane.h rename to drivers/gpu/drm/imx/ipuv3-plane.h diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c similarity index 100% rename from drivers/staging/imx-drm/parallel-display.c rename to drivers/gpu/drm/imx/parallel-display.c diff --git a/drivers/staging/Kconfig b/drivers/staging/Kconfig index 3b01fef..815de37 100644 --- a/drivers/staging/Kconfig +++ b/drivers/staging/Kconfig @@ -84,8 +84,6 @@ source "drivers/staging/gdm72xx/Kconfig" source "drivers/staging/gdm724x/Kconfig" -source "drivers/staging/imx-drm/Kconfig" - source "drivers/staging/fwserial/Kconfig" source "drivers/staging/goldfish/Kconfig" diff --git a/drivers/staging/Makefile b/drivers/staging/Makefile index 26ecead..33c640b 100644 --- a/drivers/staging/Makefile +++ b/drivers/staging/Makefile @@ -35,7 +35,6 @@ obj-$(CONFIG_STAGING_BOARD) += board/ obj-$(CONFIG_USB_WPAN_HCD) += ozwpan/ obj-$(CONFIG_WIMAX_GDM72XX) += gdm72xx/ obj-$(CONFIG_LTE_GDM724X) += gdm724x/ -obj-$(CONFIG_DRM_IMX) += imx-drm/ obj-$(CONFIG_FIREWIRE_SERIAL) += fwserial/ obj-$(CONFIG_GOLDFISH) += goldfish/ obj-$(CONFIG_LUSTRE_FS) += lustre/ diff --git a/drivers/staging/imx-drm/TODO b/drivers/staging/imx-drm/TODO deleted file mode 100644 index 29636fb..0000000 --- a/drivers/staging/imx-drm/TODO +++ /dev/null @@ -1,17 +0,0 @@ -TODO: -- get DRM Maintainer review for this code -- decide where to put the base driver. It is not specific to a subsystem - and would be used by DRM/KMS and media/V4L2 - -Missing features (not necessarily for moving out of staging): - -- Add support for IC (Image converter) -- Add support for CSI (CMOS Sensor interface) -- Add support for VDIC (Video Deinterlacer) - -Many work-in-progress patches for the above features exist. Contact -Sascha Hauer <kernel@pengutronix.de> if you are interested in working -on a specific feature. - -Please send any patches to Greg Kroah-Hartman <gregkh@linuxfoundation.org> and -Sascha Hauer <kernel@pengutronix.de>
The imx-drm driver was put into staging mostly for the following reasons, all of which have been addressed or superseded: - convert the irq driver to use linear irq domains - work out the device tree bindings, this lead to the common of_graph bindings being used - factor out common helper functions, this mostly resulted in the component framework and drm of_graph helpers. Before adding new fixes, and certainly before adding new features, move it into its proper place below drivers/gpu/drm. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> --- Since this patch is generated with --find-renames, it should be applied on top of the staging-next branch of the staging tree, or at least after commit f582d9a8b955 (drivers: staging: imx-drm driver cleanup). --- .../{staging/imx-drm => drm/imx}/fsl-imx-drm.txt | 0 .../bindings/{staging/imx-drm => drm/imx}/hdmi.txt | 0 .../bindings/{staging/imx-drm => drm/imx}/ldb.txt | 0 drivers/gpu/drm/Kconfig | 2 ++ drivers/gpu/drm/Makefile | 1 + drivers/{staging/imx-drm => gpu/drm/imx}/Kconfig | 0 drivers/{staging/imx-drm => gpu/drm/imx}/Makefile | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-drm-core.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-drm.h | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-hdmi.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-hdmi.h | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-ldb.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/imx-tve.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-crtc.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-plane.c | 0 drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-plane.h | 0 .../{staging/imx-drm => gpu/drm/imx}/parallel-display.c | 0 drivers/staging/Kconfig | 2 -- drivers/staging/Makefile | 1 - drivers/staging/imx-drm/TODO | 17 ----------------- 20 files changed, 3 insertions(+), 20 deletions(-) rename Documentation/devicetree/bindings/{staging/imx-drm => drm/imx}/fsl-imx-drm.txt (100%) rename Documentation/devicetree/bindings/{staging/imx-drm => drm/imx}/hdmi.txt (100%) rename Documentation/devicetree/bindings/{staging/imx-drm => drm/imx}/ldb.txt (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/Kconfig (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/Makefile (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-drm-core.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-drm.h (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-hdmi.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-hdmi.h (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-ldb.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/imx-tve.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-crtc.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-plane.c (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/ipuv3-plane.h (100%) rename drivers/{staging/imx-drm => gpu/drm/imx}/parallel-display.c (100%) delete mode 100644 drivers/staging/imx-drm/TODO