- 18 8月, 2015 12 次提交
-
-
由 Russell King 提交于
As mentioned in the previous commit, the dw-hdmi driver does not support pixel doubled modes at present; it does not configure the PLL correctly for these modes. Therefore, filter out the double-clocked modes as we presently are unable to support them. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
dw_hdmi sets a pixel repetition factor of 1 for VICs 10-15, 25-30 and 35-38. However, DRM uses their native resolutions in its timing information. For example, VIC 14 can be 1440x480 with no repetition, or 720x480 with one pixel repetition. As DRM uses 1440 pixels per line for this video mode, we need no pixel repetition. In any case, pixel repetition appears broken in dw_hdmi. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
iMX6 devices suffer from an errata (ERR005174) where the audio FIFO can be emptied while it is partially full, resulting in misalignment of the audio samples. To prevent this, the errata workaround recommends writing N as zero until the audio FIFO has been loaded by DMA. Writing N=0 prevents the HDMI bridge from reading from the audio FIFO, effectively disabling audio. This means we need to provide the audio driver with a pair of functions to enable/disable audio. These are dw_hdmi_audio_enable() and dw_hdmi_audio_disable(). A spinlock is introduced to ensure that setting the CTS/N values can't race, ensuring that the audio driver calling the enable/disable functions (which are called in an atomic context) can't race with a modeset. Tested-by: NYakir Yang <ykk@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Introduce dw_hdmi_set_sample_rate(), which allows us to configure the audio sample rate, setting the CTS/N values appropriately. Tested-by: NYakir Yang <ykk@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Remove the struct hdmi_vmode mhsyncpolarity/mvsyncpolarity/minterlaced members, which are only used within a single function. We can directly reference the appropriate mode->flags instead. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
This driver does not make use of regmaps, let's remove this unnecessary structure member. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
When a YCBCR format is selected, we can merely copy the colorimetry information directly as we use the same definitions for both the unpacked AVI info frame and the hdmi_data_info structure. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Use drm_hdmi_avi_infoframe_from_display_mode() to compose the AVI frame. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Clean up hdmi_set_clk_regenerator() by allowing it to take the audio sample rate and ratio directly, rather than hiding it inside the function. Raise the unsupported pixel clock/sample rate message from debug to error level as this results in audio not working correctly. Tested-by: NYakir Yang <ykk@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
The phy configuration is dependent on the SoC, and we look up values for some of the registers in SoC specific data. However, we had partially programmed the phy before we had successfully looked up the clock rate. Also, we were only checking that we had a valid configuration for the currctrl register. Move all these lookups to the start of this function instead, so we can check that all lookups were successful before beginning to program the phy. Tested-by: NYakir Yang <ykk@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
The phy comments in dw_hdmi.c applied to the iMX6 version. Move these comments to the iMX6 dw_hdmi-imx data along side the data. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 01 4月, 2015 2 次提交
-
-
由 Yakir Yang 提交于
Because of iMX6 & Rockchip have differnet mpll config parameter, the VLEVCTRL parameter would be different. In this case we should separate VLEVCTRL setting from the common dw_hdmi driver, config this parameter in platform driver(dw_hdmi-imx and dw_hdmi-rockchip) Signed-off-by: NYakir Yang <ykk@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Yakir Yang 提交于
Using a local struct pointer to reduce one level of indirection makes the code slightly more readable. Signed-off-by: NYakir Yang <ykk@rock-chips.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 31 3月, 2015 3 次提交
-
-
由 Russell King 提交于
Patch derived from one from Yakir Yang. Yakir Yang says: For Designerware HDMI, the following write sequence is recommended: 1. aud_n3 (set bit ncts_atomic_write if desired) 2. aud_cts3 (set CTS_manual and CTS value if desired/enabled) 3. aud_cts2 (required in CTS_manual) 4. aud_cts1 (required in CTS_manual) 5. aud_n3 (bit ncts_atomic_write with same value as in step 1.) 6. aud_n2 7. aud_n1 However, avoid the ncts_atomic_write_bit and CTS_manual settings in this patch, both of which are marked reserved in the iMX6 documentation. All iMX6 code in the wild seems to want CTS_manual cleared. Having requested clarification from FSL, it appears that neither of these bits are implemented in their version of the IP. Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de> Tested-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NAndy Yan <andy.yan@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
The HDMI n/cts settings need to be updated whenever the audio sample rate or the video pixel clock changes. This needs to be protected against concurrency as there is no synchronisation between these two operations. Introduce a mutex (called audio_mutex) to protect against two threads trying to update the video clock rate and pixel clock simultaneously. Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de> Tested-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NAndy Yan <andy.yan@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
由 Russell King 提交于
Combine these two functions into a single implementation. These two functions are called consecutively anyway. Idea from a patch by Yakir Yang. Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de> Tested-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NAndy Yan <andy.yan@rock-chips.com> Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
-
- 28 1月, 2015 2 次提交
-
-
由 Fabio Estevam 提交于
Commit fbc4572e9c48e45b ("drm/bridge: make bridge registration independent of drm flow") introduced some drm/bridge API modifications. Make the necessary changes so that we can avoid the build breakage: drivers/gpu/drm/bridge/dw_hdmi.c: In function 'dw_hdmi_bridge_destroy': drivers/gpu/drm/bridge/dw_hdmi.c:1378:2: error: implicit declaration of function 'drm_bridge_cleanup' [-Werror=implicit-function-declaration] drivers/gpu/drm/bridge/dw_hdmi.c: At top level: drivers/gpu/drm/bridge/dw_hdmi.c:1471:2: error: unknown field 'destroy' specified in initializer drivers/gpu/drm/bridge/dw_hdmi.c: In function 'dw_hdmi_register': drivers/gpu/drm/bridge/dw_hdmi.c:1535:2: error: implicit declaration of function 'drm_bridge_init' [-Werror=implicit-function-declaration] Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
由 Fabio Estevam 提交于
If devm_request_threaded_irq() fails we should jump to 'err_iahb' label that will disable the clocks that were previously enabled. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de> Signed-off-by: NThierry Reding <treding@nvidia.com>
-
- 08 1月, 2015 8 次提交
-
-
由 Steve Longerbeam 提交于
The encoder ->prepare() and ->mode_set() methods need to use the hw adjusted mode, not the original mode. Signed-off-by: NSteve Longerbeam <steve_longerbeam@mentor.com> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Philipp Zabel 提交于
Otherwise a spurious interrupt might trigger (and crash) the interrupt handler before probing finished. Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
Rockchip RK3288 hdmi is compatible with dw_hdmi Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
RK3288 HDMI will not work without the spare bit of HDMI_PHY_CONF0 enable Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
HDMI_IH_I2CMPHY_STAT0 is a clear on write register, which indicates i2cm operation status(i2c transfer done or error), every hdmi phy register configuration must check this register to make sure the configuration has complete. But the indication bit should be cleared after check, otherwise the corresponding bit will hold on forever, this may give a wrong signal for next check. Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
some platform may not support all the display mode, add mode_valid interface check it Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
On rockchip rk3288, only word(32-bit) accesses are permitted for hdmi registers. Byte width accesses (writeb, readb) generate an imprecise external abort. Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
the original imx hdmi driver is under drm/imx/, which depends on imx-drm, so move the imx hdmi driver out to drm/bridge and rename it to dw_hdmi Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
- 07 1月, 2015 4 次提交
-
-
由 Andy Yan 提交于
hdmi phy configuration is platform specific, which can be adjusted according to the board to get the best SI Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
IMX6 and Rockchip RK3288 and JZ4780 (Ingenic Xburst/MIPS) use the interface compatible Designware HDMI IP, but they also have some lightly differences, such as phy pll configuration, register width, 4K support, clk useage, and the crtc mux configuration is also platform specific. To reuse the imx hdmi driver, convert it to drm_bridge handle encoder in imx-hdmi_pltfm.c, as most of the encoder operation are platform specific such as crtc select and panel format set This patch depends on Russell King's patch: drm: imx: convert imx-drm to use the generic DRM OF helper http://driverdev.linuxdriverproject.org/pipermail/driverdev-devel/2014-July/053484.htmlSigned-off-by: NAndy Yan <andy.yan@rock-chips.com> Signed-off-by: NYakir Yang <ykk@rock-chips.com> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
drm driver may probe before the i2c bus, so the driver should defer probing until it is available Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
由 Andy Yan 提交于
CHECK: Alignment should match open parenthesis + if ((hdmi->vic == 10) || (hdmi->vic == 11) || + (hdmi->vic == 12) || (hdmi->vic == 13) || CHECK: braces {} should be used on all arms of this statement + if (hdmi->hdmi_data.video_mode.mdvi) [...] + else { [...] Signed-off-by: NAndy Yan <andy.yan@rock-chips.com> Reviewed-by: NDaniel Kurtz <djkurtz@chromium.org> Tested-by: NRussell King <rmk+kernel@arm.linux.org.uk> Acked-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
-
- 26 11月, 2014 1 次提交
-
-
由 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: NPhilipp Zabel <p.zabel@pengutronix.de> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 20 10月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
A platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 29 9月, 2014 1 次提交
-
-
由 Catalina Mocanu 提交于
This fixes the following checkpatch.pl warning: WARNING: else is not generally useful after a break or return. Signed-off-by: NCatalina Mocanu <catalina.mocanu@gmail.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 04 6月, 2014 1 次提交
-
-
由 Philipp Zabel 提交于
The i.MX Image Processing Unit (IPU) contains a number of image processing blocks that sit right in the middle between DRM and V4L2. Some of the modules, such as Display Controller, Processor, and Interface (DC, DP, DI) or CMOS Sensor Interface (CSI) and their FIFOs could be assigned to either framework, but others, such as the dma controller (IDMAC) and image converter (IC) can be used by both. The IPUv3 core driver provides an internal API to access the modules, to be used by both DRM and V4L2 IPUv3 drivers. Signed-off-by: NLucas Stach <l.stach@pengutronix.de> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 23 5月, 2014 1 次提交
-
-
由 Fabio Estevam 提交于
WARNING: Missing a blank line after declarations #160: FILE: drivers/staging/imx-drm/imx-hdmi.c:160: + u8 val = hdmi_readb(hdmi, reg) & ~mask; + val |= data & mask; WARNING: Missing a blank line after declarations #1609: FILE: drivers/staging/imx-drm/imx-hdmi.c:1609: + const struct platform_device_id *device_id = of_id->data; + hdmi->dev_type = device_id->driver_data; total: 0 errors, 2 warnings, 1767 lines checked drivers/staging/imx-drm/imx-hdmi.c has style problems, please review. If any of these errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 26 4月, 2014 3 次提交
-
-
由 Russell King 提交于
The initial state at boot is assumed to be disconnected, and we hope to receive an interrupt to update the status. Let's be more explicit about the current state - reading the PHY status register tells us the current level of the hotplug signal, which we can report back in the _detect() method. Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Fabio Estevam 提交于
No need to return a 'fake' return value on platform_get_irq() failure. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
由 Emil Renner Berthing 提交于
Simplify hdmi_phy_wait_i2c_done so the call to hdmi_readb is only done in one place. Also check for timout before waiting as suggested by Troy Kisky. This also fixes a checkpatch warning. Signed-off-by: NEmil Renner Berthing <kernel@esmil.dk> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 22 4月, 2014 1 次提交
-
-
由 Andrzej Hajda 提交于
Many drm connectors do not need mode validation. The patch makes this callback optional and removes dumb implementations. v2: Rebase: - imx move to a shared (but still dummy) ->mode_valid implementation. - probe helpers have been extracted to drm_probe_helper.c Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> (v1) Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
-