/archives/dri-devel/attachments/20140102/743d824b/attachment.html>
https://bugzilla.kernel.org/show_bug.cgi?id=64891
--- Comment #44 from Joaqu?n Aramend?a ---
Created attachment 120671
--> https://bugzilla.kernel.org/attachment.cgi?id=120671&action=edit
Nouveau locked dmesg 3.13rc6 patched
Ok. Then I got 3.13rc6 with the patch from comment #37. Entering
mult
On IMX6D/Q devices, the display bridge muxes can select either display
interface on either of the IPUs. Therefore, we need to positively know
which IPU each CRTC is.
We partially solve this by passing an IPU ID from the IPUv3 driver into
the DRM CRTC driver, which also passes it into the core cod
Parse the ELD (EDID like data) stored from the HDMI driver to restrict
the sample rates and channels which are available to ALSA. This causes
the ALSA device to reflect the capabilities of the overall audio path,
not just what is supported at the HDMI source interface level.
Signed-off-by: Russel
Add ALSA based HDMI audio driver for imx-hdmi. The imx-hdmi is a
Synopsis DesignWare module, so let's name it after that. The only
buffer format supported is its own special IEC958 based format, which
is not compatible with any ALSA format. To avoid doing too much data
manipulation within the dr
Add hotplug support. We have to make the interrupt handler threaded so
we can call drm_helper_hpd_irq_event(). Keeping in mind that we will
want to share the interrupt with other HDMI interface drivers (eg, audio
and CEC) put the groundwork in now for that, rather than just using
IRQF_ONESHOT.
A
Add core imx-drm support for hotplug connector support. We need to
setup the poll helper after we've setup the connectors; the helper
scans the connectors to determine their capabilities.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 20
1 files
Various cleanups are possible after the previous round of changes; these
have no real functional bearing other than tidying up the code.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 47 +++
drivers/staging/imx-drm/imx-drm.h |5 +-
It is now no longer necessary to keep this structure around; we can
allocate it upon DRM driver load and destroy it thereafter without
affecting the other components now.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 47 ---
1 files change
This mutex doesn't protect anything anymore; get rid of it.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 26 +++---
1 files changed, 3 insertions(+), 23 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-drm-core.c
b/drivers/staging/imx-drm/
Since we're now operating like a conventional DRM driver, doing all
the initialisation within the driver's ->load callback, we don't
need to mess around with the mode groups - we can rely on the one
in the DRM platform code.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c
The core imx_drm_connector and imx_drm_encoder code is no longer
required - the connectors and encoders are all using the component
support, so we can remove this.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 370
drivers/staging/imx-
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 56 +--
1 files changed, 15 insertions(+), 41 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-hdmi.c
b/drivers/staging/imx-drm/imx-hdmi.c
index d81940a8904f..512b39710530 100644
--- a/dr
Now that our bind function is only ever called during the main DRM
driver ->load callback, we don't need to have the imx_drm_connector or
imx_drm_encoder abstractions anymore. So let's get rid of it, and move
the DRM connector and encoder setup into the connector support files.
Signed-off-by: Rus
Provide two helper functions to assist with cleaning up imx-drm
connectors and encoders.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 13 +
drivers/staging/imx-drm/imx-drm.h |2 ++
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/
Provide a helper function to parse possible crtcs before the encoder
is registered. The crtc mask is derived from the position of the
CRTCs registered in the drm_device.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 66
drivers/stagi
The component helper provides us the drm_device which is being
registered. Rather than having to reference a global in imx-drm-core,
use this to get the imxdrm device, and also use it to register the CRTC
against.
This means we never have CRTCs/encoders/connectors without the drivers
private data
imx-fb.c doesn't need to be separate from imx-drm-core.c - all it is
doing is setting up the minimum and maximum sizes of the scanout
buffers, and setting up the mode_config function pointers. Move the
contents into imx-drm-core.c and kill this file.
Signed-off-by: Russell King
---
drivers/stag
Now that we know when the components of the imx-drm subsystem will be
initialised, we can move the fbdev helper initialisation and teardown
into imx-drm-core. This gives us the required ordering that DRM wants
in both driver load and unload methods.
We can also stop exporting the imx_drm_device_g
Delay publishing sysfs connector entries until all components have
initialised. This reduces the probability of generating false hotplug
events when we're uncertain whether the driver can fully initialise.
This also pulls that code out of the individual imx-drm connector
drivers.
Signed-off-by: R
Convert imx-hdmi to be a component device; it will bind and unbind
at the appropriate moment in the main DRM driver's functions.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 41 +--
1 files changed, 29 insertions(+), 12 deletions(-)
diff
Use the componentised device support for imx-drm. This requires all
the sub-components and the master device to register with the component
device support.
Signed-off-by: Russell King
---
arch/arm/boot/dts/imx51-babbage.dts| 10 ++-
arch/arm/boot/dts/imx53-m53evk.dts |8 ++
Subsystems such as ALSA, DRM and others require a single card-level
device structure to represent a subsystem. However, firmware tends to
describe the individual devices and the connections between them.
Therefore, we need a way to gather up the individual component devices
together, and indicate
The encoder format passed into imx_drm_crtc_panel_format*() is the
encoder format used for DRM in most cases; the HDMI encoder sets
this to none, but this is incorrect, it should be TMDS.
Since this is the case, we can pass the drm_encoder structure
directly into this function and use the supplied
Provide a common connector mode validation function, which can be used
to limit the available modes according to other components in the
system.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c |7 +++
drivers/staging/imx-drm/imx-drm.h |3 +++
drive
The DRM core indexes vblank by number, so there's little point
maintaining a list, and have to scan the list to find the appropriate
structure. Instead, use an array of pointers to the CRTCs.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 57 +
Address the following issues:
- imx_drm_encoder_get_mux_id() searches the CRTC list for the matching
CRTC, and returns the position within this list as the MUX programming
value for encoders. This is sub-optimal for two reasons:
1. It relies upon the CRTC list not changing during the lifetim
The encoder possible_crtcs mask identifies which CRTCs can be bound to
a particular encoder. Each bit from bit 0 defines an index in the list
of CRTCs held in the DRM mode_config crtc_list. Rather than having
drivers trying to track the position of their CRTCs in the list, expose
the code which a
Many of the variables for the audio clock regenerator (CTS/N) were not
initialised in any way. The pixel rate which was being used also
wasn't being adjusted at all when the display mode is modified.
Get rid of the seaprate 'pixel_clk_rate', and use the stored pixel
clock rate instead. Pass this
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 49 ---
1 files changed, 22 insertions(+), 27 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-hdmi.c
b/drivers/staging/imx-drm/imx-hdmi.c
index f8c652e58a6d..075dd1f0c8a7 100644
--- a/dr
There are a load of read-modify-write patterns to change bitfields in
various registers in this driver; provide a helper to perform this
manipulation.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 188 +---
1 files changed, 68 insertions(+)
Rather than manually writing each register sequentially, we can use a
loop to reduce the amount of code.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 40 ---
1 files changed, 14 insertions(+), 26 deletions(-)
diff --git a/drivers/staging
Rather than having large if() and switch() statements, provide a table
to look up the register settings for various clock rates.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c | 250 ++--
1 files changed, 95 insertions(+), 155 deletions(-)
di
Some minor cleanups to the HDMI driver.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c |5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-hdmi.c
b/drivers/staging/imx-drm/imx-hdmi.c
index 1eb12c57aa3e..ee0fceb7b5b2 100644
The clock manipulations do nothing for us: the clock is already enabled
by the only caller (imx_hdmi_platform_probe()). Get rid of these and
simplify the code.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c |8
1 files changed, 0 insertions(+), 8 deletions(-)
d
fb_reg provides no real benefit to the driver: imx_hdmi_fb_registered()
will never be called multiple times. Let's get rid of this.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c |6 --
1 files changed, 0 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/im
The vsync active edge delay is in lines, not pixel clocks.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c |2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-hdmi.c
b/drivers/staging/imx-drm/imx-hdmi.c
index fe3a6779b620..0cb
The correct pixel clock can be found in the drm_display_mode structure.
Use this rather than trying to calculate it from the h/v total and the
refresh rate, which can be inaccurate.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-hdmi.c |3 +--
1 files changed, 1 insertions(+), 2
Enabling the debug for PLL lock shows that this times out almost every
time. Having such an event at debug level is probably a bug in itself
because it hides this fact.
Waiting 5ms seems to allow it to lock. Also, adjust the loop so that
we check for success before checking whether we've timed o
Signed-off-by: Russell King
---
arch/arm/boot/dts/imx6dl.dtsi |3 ++-
arch/arm/boot/dts/imx6q.dtsi |1 +
arch/arm/boot/dts/imx6qdl.dtsi |1 -
3 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/imx6dl.dtsi b/arch/arm/boot/dts/imx6dl.dtsi
index 65e54b452
Extracted from another patch by Fabio Estevam, this adds the DT
configuration for HDMI output on the IMX6 SoCs
Signed-off-by: Russell King
---
arch/arm/boot/dts/imx6dl.dtsi |4
arch/arm/boot/dts/imx6q.dtsi |4
arch/arm/boot/dts/imx6qdl.dtsi | 10 ++
3 files changed
From: Fabio Estevam
To: David Airlie ,Greg Kroah-Hartman ,Sascha Hauer ,Shawn Guo
This is based on the initial work done by Sascha Hauer and Tony Prisk.
Tested on a mx6qsabresd.
Signed-off-by: Fabio Estevam
Signed-off-by: Russell King
---
drivers/staging/imx-drm/Kconfig |6
There's no point in using the clk API for this; we end up having to
violate the layering this provides.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/ipu-v3/ipu-di.c | 328 ++-
1 files changed, 105 insertions(+), 223 deletions(-)
diff --git a/drivers/stagi
This is nonsense; clk_round_rate() is just clk_set_rate() without the
side effect of changing the hardware.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/ipu-v3/ipu-di.c | 13 +
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/imx-drm/ipu-v3/
The DI clock selection was very rudimentary: it would statically use
either the IPU internal clock or the DI external clock depending on
which "encoder" was being used. In the case of HDMI, it would always
use the IPU clock.
Moreover, using the IPU clock resulted in fractional divisors, which
are
There's no reason for this to be a separate function; merge the
two together.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 33 ---
1 files changed, 9 insertions(+), 24 deletions(-)
diff --git a/drivers/staging/imx-drm/imx-drm-core.c
b/d
We have the drm_device available, so rather than storing it and then
using the stored version, us the one we already have available to us.
Signed-off-by: Russell King
---
drivers/staging/imx-drm/imx-drm-core.c | 16
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git
There are a couple of ways to get at the drm_device for the vblank
operations. One of them is via the private imxdrm structure, the
other is via the DRM crtc structure, which also stores a pointer.
Use the DRM method instead of our own method.
Signed-off-by: Russell King
---
drivers/staging/imx
Here is my large patch series which cleans up imx-drm, and gets it ready
to move out of drivers/staging. This is a preview only.
One of these patches introduces a generic helper in drivers/base which
can be used by any subsystem to assemble a sub-devices together and
complete the probe of a subsy
attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/422b373f/attachment.html>
list for the bug.
-- next part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/27b81930/attachment.html>
Provides the parameter for full PPGTT on Intel.
Signed-off-by: Ben Widawsky
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index c5b8d40..d0d051a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,7 +20,7 @@
AC_PREREQ([2.63])
This will allow mesa to determine if it needs to create a context, or
can reuse the default context. Reusing the default context saves memory,
and startup time.
To keep the libdrm interface as dumb as possible, we simply expose a
getter for the default context (which is only a real context when
th
This was not done as a straight copy because reset_stats IOCTL landed in libdrm
before upstream kernel. (We'll do a similar thing for full PPGTT anyway, so
there isn't really a point in syncing exactly).
Signed-off-by: Ben Widawsky
---
include/drm/i915_drm.h | 113 +++
The previous code would just use the potentially unallocated variable,
which is probably okay most of the time, but not very nice to the user
of the library.
Signed-off-by: Ben Widawsky
---
intel/intel_bufmgr_gem.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/intel/in
Signed-off-by: Ben Widawsky
---
intel/intel_bufmgr_gem.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c
index 48ff62e..3b1f584 100644
--- a/intel/intel_bufmgr_gem.c
+++ b/intel/intel_bufmgr_gem.c
@@ -1337,7 +1337,9 @@ int drm_intel_gem_bo
state of the kernel memory manager.
--
You are receiving this mail because:
You are the assignee for the bug.
-- next part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/654ee616/attachment.html>
On Thu, Jan 02, 2014 at 09:27:58PM +, Russell King wrote:
> Subsystems such as ALSA, DRM and others require a single card-level
> device structure to represent a subsystem. However, firmware tends to
> describe the individual devices and the connections between them.
>
> Therefore, we need a
On 12/10/2013 01:12 PM, Alex Deucher wrote:
> On Tue, Dec 10, 2013 at 10:04 AM, Alex Deucher
> wrote:
>> On Mon, Dec 9, 2013 at 9:20 PM, Michel D?nzer wrote:
>>> On Mon, 2013-12-09 at 19:48 -0500, Alex Deucher wrote:
-u32 cik_compute_ring_get_wptr(struct radeon_device *rdev,
-
evel/attachments/20140102/a9cdea1e/attachment.html>
rchives/dri-devel/attachments/20140102/f1ee7afe/attachment.html>
chives/dri-devel/attachments/20140102/fec13f58/attachment.html>
...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/5430c423/attachment.html>
On Thu, Jan 2, 2014 at 3:54 PM, Kleber Sacilotto de Souza
wrote:
> On 12/10/2013 01:12 PM, Alex Deucher wrote:
>>
>> On Tue, Dec 10, 2013 at 10:04 AM, Alex Deucher
>> wrote:
>>>
>>> On Mon, Dec 9, 2013 at 9:20 PM, Michel D?nzer wrote:
On Mon, 2013-12-09 at 19:48 -0500, Alex Deucher wro
org/archives/dri-devel/attachments/20140102/55a52d10/attachment.html>
Coefficients are based on the formula:
uV = 0.1 * arg[0] + 150.5 * arg[1] + 22.65025 * arg[2]
It seems to be rounded downwards. I have no idea why the voltage isn't
specified in the bios directly.
Signed-off-by: Maarten Lankhorst
diff --git a/drivers/gpu/drm/nouveau/core/subdev/bios/vmap.c
part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/f650f0ad/attachment.html>
On Tue, Dec 24, 2013 at 10:17:44AM +0800, Liu Ying wrote:
> This patch declares the function of_get_tve_mode
> as a static one to fix this sparse warning:
> drivers/staging/imx-drm/imx-tve.c:563:11: warning: \
> symbol 'of_get_tve_mode' was not declared. \
> Should it be static?
>
> Acked-by: Shaw
or the bug.
-- next part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/9f499db8/attachment.html>
On Mon, Dec 30, 2013 at 11:51 AM, Rashika Kheria
wrote:
> Hello,
>
> I am trying to eliminate missing-prototypes warnings for drivers/gpu/.
> I noticed that radeon_reg.h and radeon_drv.h conflict due to
> incompatible definitions therefore making it difficult to add both the
> headers in a single
The current dev_unload order uninits the irqs too early.
In the current sequence, it's possible that a crtc queues work(apply_worker)
to display a buffer, which registers to omap_crtc_apply_irq to notfiy the
completion of the configuration we applied.
Calling drm_vblank_cleanup and omap_drm_irq_u
Currently, an encoder is disabled only when an apply work is queued for the
corresponding crtc. This works fine for the paths where userspace explicitly
disables crtc, this results in disabling the omapdss device in the crtc's
pre_apply function.
However, when the omapdrm module is removed, there
At omapdrm probe, we install manager ops and connect omapdss devices. This
needs to be undone when omapdrm module is removed so that omapdss is in a
clean state. This ensures that we can re-insert omapdrm module, or some other
module which uses omapdss(like omapfb/omap_vout).
Currently, omapdrm's
With the omapdss device model changes. omapdrm is required to call dssdriver's
connect() op to register a panel. This is currently done in omap_modeset_init()
A call to connect() can fail if the omapdss panels or the encoders(HDMI/DPI)
they connect to have some resource(like regulators, I2C adapte
At the moment, the omapdrm driver doesn't work on panda/beagle when built-in
the kernel. The problem is that omapdrm doesn't defer probe if resources like
regulator/I2C etc are missing. The first patch fixes that.
The next 3 patches make sure that omapdrm module can be inserted and removed
success
|--- |FIXED
--
You are receiving this mail because:
You are the assignee for the bug.
-- next part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/4fb11313/attachment.html>
|--- |FIXED
--
You are receiving this mail because:
You are the assignee for the bug.
-- next part --
An HTML attachment was scrubbed...
URL:
<http://lists.freedesktop.org/archives/dri-devel/attachments/20140102/44086077/attachment.html>
ttp://lists.freedesktop.org/archives/dri-devel/attachments/20140102/e59d84ca/attachment-0001.html>
78 matches
Mail list logo