Re: -next queue and EDID stuff

2012-08-30 Thread Daniel Vetter
On Thu, Aug 30, 2012 at 12:23:43AM -0500, Ian Pilcher wrote:
> On 08/29/2012 04:38 PM, Adam Jackson wrote:
> > So to me, that says that drivers need to ask _both_ whether the monitor
> > supports audio and whether it's HDMI before sending HDMI-specific audio
> > signalling.
> 
> OK, so the burden is on the individual drivers.
> 
> In terms of moving forward with the rest of the EDID quirk stuff, are
> you OK with either of these options:
> 
> * Remove EDID_QUIRK_NO_AUDIO from the flags for the LG L246WP.  It won't
>   work "out of the box" with the Intel driver until that driver is
>   fixed to not send audio InfoFrames to non-HDMI displays (but anyone
>   who has the combination will be able to add their own quirk to make
>   it work).
> 
> * Leave both flags, because both are accurate.  The display is confused
>   by any InfoFrames (audio or AVI), and it is reporting non-existent
>   audio capabilities.  The fact that the combination of the two flags
>   makes the display work with Intel GPUs is a happy/sad/neutral
>   accident, and the driver's behavior is still considered broken.
> 
>   (Essentially, this would mean just editing the comments to reflect the
>   above reasoning.)
> 
> If needed, I can easily create a new patch for either option.  Just let
> me know.

I've decided that simply fixing the intel driver is easier. Patch on it's
way, please test.

Thanks, Daniel
-- 
Daniel Vetter
Mail: dan...@ffwll.ch
Mobile: +41 (0)79 365 57 48
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[PATCH] drm/i915/hdmi: only enable audio if there's a hdmi sink

2012-08-30 Thread Daniel Vetter
Some monitors totally don't like to receive infoframes, and naturally
don't claim to support hdmi.

But for some odd reason they've added a CEA block to their edid,
which automatically gives you basic audio. Still, we may not send
out hdmi infoframes to them, hence check whether the sink is indeed
hdmi capable.

Also kill a stale comment while at it.

References: 
http://www.mail-archive.com/dri-devel@lists.freedesktop.org/msg26765.html
Cc: Adam Jackson 
Cc: Ian Pilcher 
Cc: sta...@vger.kernel.org
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/i915/intel_hdmi.c |   14 --
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
b/drivers/gpu/drm/i915/intel_hdmi.c
index e4c37bb..7d35367 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -735,7 +735,11 @@ intel_hdmi_detect(struct drm_connector *connector, bool 
force)
if (intel_hdmi->force_audio != HDMI_AUDIO_OFF_DVI)
intel_hdmi->has_hdmi_sink =
drm_detect_hdmi_monitor(edid);
-   intel_hdmi->has_audio = drm_detect_monitor_audio(edid);
+
+   /* We are only allowed to send audio and audio related
+* infoframes if it's an hdmi monitor. */
+   intel_hdmi->has_audio = intel_hdmi->has_hdmi_sink &&
+   drm_detect_monitor_audio(edid);
}
connector->display_info.raw_edid = NULL;
kfree(edid);
@@ -755,10 +759,6 @@ static int intel_hdmi_get_modes(struct drm_connector 
*connector)
struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector);
struct drm_i915_private *dev_priv = connector->dev->dev_private;
 
-   /* We should parse the EDID data and find out if it's an HDMI sink so
-* we can send audio to it.
-*/
-
return intel_ddc_get_modes(connector,
   intel_gmbus_get_adapter(dev_priv,
   
intel_hdmi->ddc_bus));
@@ -783,7 +783,9 @@ intel_hdmi_detect_audio(struct drm_connector *connector)
kfree(edid);
}
 
-   return has_audio;
+   /* We are only allowed to send audio and audio related
+* infoframes if it's an hdmi monitor. */
+   return intel_hdmi->has_hdmi_sink && has_audio;
 }
 
 static int
-- 
1.7.10.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=54230

--- Comment #4 from Thomas Rohloff  2012-08-30 08:54:22 UTC 
---
As the video is to big for an attachment here's a link:
https://vimeo.com/48479243
It shows Minecraft in-game.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 40562] Shutting down X/KDE sometimes leads to kernel crash on kernel-3.0.1-rc1 with radeon/kms

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=40562


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||a...@lxorguk.ukuu.org.uk
 Resolution||INSUFFICIENT_DATA




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 40622] [radeon] - kms wrong resolution mode used after backlight on/off switch

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=40622


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||a...@lxorguk.ukuu.org.uk
 Resolution||OBSOLETE




--- Comment #14 from Alex Deucher   2011-08-08 16:28:15 
---
No worries, it can get confusing.  Unfortunately, I'm not that familiar with
how each desktop environment handles hotkeys.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42412] nouveau regression in 3.1-rc4

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42412


Alan  changed:

   What|Removed |Added

 CC||a...@lxorguk.ukuu.org.uk




--- Comment #1 from Alan   2012-08-30 09:51:05 ---
Is this still present in 3.4/3.5 ?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 41732] [radeon] KMS (and X.org) detect wrong outputs

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=41732


Alan  changed:

   What|Removed |Added

 Status|NEW |NEEDINFO
 CC||a...@lxorguk.ukuu.org.uk




--- Comment #10 from Alan   2012-08-30 10:48:35 ---
Is this problem still seen ?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: drm_vm.c: many arches equate remap_pfn_range() and io_remap_pfn_range()

2012-08-30 Thread Robert P. J. Day
On Thu, 30 Aug 2012, Sascha Hauer wrote:

> On Wed, Aug 29, 2012 at 06:29:53PM -0400, Robert P. J. Day wrote:
> >
> >   a pedantic observation, you can do with it what you wish (i'm not a
> > list subscriber).  in drivers/gpu/drm/drm_vm.c, we read (line 629):
> >
> > #if !defined(__arm__)
> > if (io_remap_pfn_range(vma, vma->vm_start,
> >(map->offset + offset) >> PAGE_SHIFT,
> >vma->vm_end - vma->vm_start,
> >vma->vm_page_prot))
> > return -EAGAIN;
> > #else
> > if (remap_pfn_range(vma, vma->vm_start,
> > (map->offset + offset) >> 
> > PAGE_SHIFT,
> > vma->vm_end - vma->vm_start,
> > vma->vm_page_prot))
> > return -EAGAIN;
> > #endif
>
> This code goes down to:
>
> commit 4b7fb9b5746554d460e7bc986341d4b2db01e0b6
> Author: Jordan Crouse 
> Date:   Thu May 27 13:40:26 2010 -0600
>
> drm: Add __arm defines to DRM
>
> Add __arm defines to specify behavior specific for
> an ARM processor.
>
> Signed-off-by: Jordan Crouse 
> Signed-off-by: Dave Airlie 
>
> Even at that time io_remap_pfn_range on arm was defined as:
>
> >
> > #define io_remap_pfn_range(vma,from,pfn,size,prot) \
> > remap_pfn_range(vma, from, pfn, size, prot)
> >
> > so it's not clear what the preprocessor test is for.  admittedly, it
> > should work, it just seems unnecessary.  and it makes the code more
> > confusing than it needs to be, but perhaps i've just misread
> > something.
>
> I agree that this shouldn't be necessary.

  for simplicity, i can submit a patch that just does a straight call
to remap_pfn_range(), unless someone can recognize something really
subtle happening here.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Ville Syrjälä
On Thu, Aug 30, 2012 at 12:34:06PM +0530, Shirish S wrote:
> @@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
> unsigned char *buf,
>   .buf= buf,
>   }
>   };
> - ret = i2c_transfer(adapter, msgs, 2);
> +
> + /*
> +  * Avoid sending the segment addr to not upset non-compliant ddc
> +  * monitors.
> +  */

Indentation is still wrong. Or is it gettimg mangled by some email server?

> + ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
> +
>   if (ret == -ENXIO) {
>   DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
>   adapter->name);
>   break;
>   }
> - } while (ret != 2 && --retries);
> + } while (ret != xfers && --retries);
>  
> - return ret == 2 ? 0 : -1;
> + return ret == xfers ? 0 : -1;
>  }
>  
>  static bool drm_edid_is_zero(u8 *in_edid, int length)

-- 
Ville Syrjälä
Intel OTC
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: drm_vm.c: many arches equate remap_pfn_range() and io_remap_pfn_range()

2012-08-30 Thread Robert P. J. Day
On Thu, 30 Aug 2012, Robert P. J. Day wrote:

> On Thu, 30 Aug 2012, Sascha Hauer wrote:
>
> > On Wed, Aug 29, 2012 at 06:29:53PM -0400, Robert P. J. Day wrote:
> > >
> > >   a pedantic observation, you can do with it what you wish (i'm not a
> > > list subscriber).  in drivers/gpu/drm/drm_vm.c, we read (line 629):
> > >
> > > #if !defined(__arm__)
> > > if (io_remap_pfn_range(vma, vma->vm_start,
> > >(map->offset + offset) >> 
> > > PAGE_SHIFT,
> > >vma->vm_end - vma->vm_start,
> > >vma->vm_page_prot))
> > > return -EAGAIN;
> > > #else
> > > if (remap_pfn_range(vma, vma->vm_start,
> > > (map->offset + offset) >> 
> > > PAGE_SHIFT,
> > > vma->vm_end - vma->vm_start,
> > > vma->vm_page_prot))
> > > return -EAGAIN;
> > > #endif
> >
> > This code goes down to:
> >
> > commit 4b7fb9b5746554d460e7bc986341d4b2db01e0b6
> > Author: Jordan Crouse 
> > Date:   Thu May 27 13:40:26 2010 -0600
> >
> > drm: Add __arm defines to DRM
> >
> > Add __arm defines to specify behavior specific for
> > an ARM processor.
> >
> > Signed-off-by: Jordan Crouse 
> > Signed-off-by: Dave Airlie 
> >
> > Even at that time io_remap_pfn_range on arm was defined as:
> >
> > >
> > > #define io_remap_pfn_range(vma,from,pfn,size,prot) \
> > > remap_pfn_range(vma, from, pfn, size, prot)
> > >
> > > so it's not clear what the preprocessor test is for.  admittedly, it
> > > should work, it just seems unnecessary.  and it makes the code more
> > > confusing than it needs to be, but perhaps i've just misread
> > > something.
> >
> > I agree that this shouldn't be necessary.
>
>   for simplicity, i can submit a patch that just does a straight call
> to remap_pfn_range(), unless someone can recognize something really
> subtle happening here.

  sorry, that should have been a straight call to io_remap_pfn_range()
since that is the call invoked for all but ARM.  i'll post a patch
shortly and someone else can decide whether or not to apply it.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[PATCH] DRM DRIVERS: Remove unnecessary test for ARM.

2012-08-30 Thread Robert P. J. Day

Since arch/arm/include/asm/pgtable.h contains:

#define io_remap_pfn_range(vma,from,pfn,size,prot) \
remap_pfn_range(vma, from, pfn, size, prot)

there is no point treating ARM as a special case in distinguishing
between remap_pfn_range() and io_remap_pfn_range().

Signed-off-by: Robert P. J. Day 

---

diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index 961ee08..34e6503 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -619,20 +619,11 @@ int drm_mmap_locked(struct file *filp, struct 
vm_area_struct *vma)
offset = drm_core_get_reg_ofs(dev);
vma->vm_flags |= VM_IO; /* not in core dump */
vma->vm_page_prot = drm_io_prot(map->type, vma);
-#if !defined(__arm__)
if (io_remap_pfn_range(vma, vma->vm_start,
   (map->offset + offset) >> PAGE_SHIFT,
   vma->vm_end - vma->vm_start,
   vma->vm_page_prot))
return -EAGAIN;
-#else
-   if (remap_pfn_range(vma, vma->vm_start,
-   (map->offset + offset) >> PAGE_SHIFT,
-   vma->vm_end - vma->vm_start,
-   vma->vm_page_prot))
-   return -EAGAIN;
-#endif
-
DRM_DEBUG("   Type = %d; start = 0x%lx, end = 0x%lx,"
  " offset = 0x%llx\n",
  map->type,

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Daniel Vetter
We've had and still have too many issues where the gpu turbot doesn't
quite to what it's supposed to do (or what we want it to do).

Adding a tracepoint to track when the desired gpu frequence changes
should help a lot in characterizing and understanding problematic
workloads.

Also, this should be fairly interesting for power tuning (and
especially noticing when the gpu is stuck in high frequencies, as has
happened in the past) and hence for integration into powertop and
similar tools.

Cc: Arjan van de Ven 
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/i915/i915_trace.h |   15 +++
 drivers/gpu/drm/i915/intel_pm.c   |2 ++
 2 files changed, 17 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_trace.h 
b/drivers/gpu/drm/i915/i915_trace.h
index 3c4093d..8134421 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -430,6 +430,21 @@ TRACE_EVENT(i915_reg_rw,
(u32)(__entry->val >> 32))
 );
 
+TRACE_EVENT(intel_gpu_freq_change,
+   TP_PROTO(u32 freq),
+   TP_ARGS(freq),
+
+   TP_STRUCT__entry(
+__field(u32, freq)
+),
+
+   TP_fast_assign(
+  __entry->freq = freq;
+  ),
+
+   TP_printk("new_freq=%u", __entry->freq)
+);
+
 #endif /* _I915_TRACE_H_ */
 
 /* This part must be outside protection */
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index ebe3498..194a72f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -2343,6 +2343,8 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
I915_WRITE(GEN6_RP_INTERRUPT_LIMITS, limits);
 
dev_priv->rps.cur_delay = val;
+
+   trace_intel_gpu_freq_change(val * 50);
 }
 
 static void gen6_disable_rps(struct drm_device *dev)
-- 
1.7.10.4

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


udl vs udlfb and EDID trouble

2012-08-30 Thread Tvrtko Ursulin

Hi all,

I've been playing with some DisplayLink adapters, six of them to be precise
connected to six identical HDMI monitors.

Under kernel 3.5 things did not really work for me apparently because of the
udl driver's inability to fetch EDID. Interestingly, logged EDID blocks were
different for each of the six monitors which suggests a serious bug somewhere.

I've then went to see if I can load my own EDID, because I remember doing it
via /sys/class/graphics/fb?/edid before, but that file was not there. 
(Is it possible to override EDID with the udl driver?)

To cut the long story short, I figured out there are two drivers for this
hardware. Fedora based 3.5 kernel builds and uses udl, while the older 3.3.2
I played with before builds and uses udlfb. (Why two drivers?)

Now going back to 3.3.2 and udlfb, EDID got correctly fetched from all six
monitors.

Udlfb seems the EDID like this:

 # hexdump /sys/class/graphics/fb1/edid -C
  00 ff ff ff ff ff ff 00  4c 2d 02 09 00 00 00 00  |L-..|
0010  29 15 01 03 80 29 17 78  0a ee 91 a3 54 4c 99 26  |)).xTL.&|
0020  0f 50 54 bd ef 80 71 4f  81 c0 81 00 81 80 95 00  |.PT...qO|
0030  a9 c0 b3 00 01 01 02 3a  80 18 71 38 2d 40 58 2c  |...:..q8-@X,|
0040  45 00 a0 5a 00 00 00 1e  66 21 56 aa 51 00 1e 30  |E..Zf!V.Q..0|
0050  46 8f 33 00 a0 5a 00 00  00 1e 00 00 00 fd 00 18  |F.3..Z..|
0060  4b 0f 51 17 00 0a 20 20  20 20 20 20 00 00 00 fc  |K.Q...  |
0070  00 53 41 4d 53 55 4e 47  0a 20 20 20 20 20 01 f1  |.SAMSUNG. ..|
0080

Below are the corrupt EDID blocks udl under 3.5 was getting. It's a lot of
text but someone perhaps will be able to infer something from them.

2012-08-29T16:53:00.048995+01:00 kernel[] info:[   18.343314] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.048999+01:00 kernel[] err:[   18.362643] 
[drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 199
2012-08-29T16:53:00.049008+01:00 kernel[] err:[   18.362655] Raw EDID:
2012-08-29T16:53:00.049014+01:00 kernel[] err:[   18.362662]00 40 39 a0 ff 
ff ff ff 00 70 41 a0 ff ff ff ff
2012-08-29T16:53:00.049017+01:00 kernel[] err:[   18.362667]04 00 00 00 00 
00 00 00 99 a9 77 61 00 88 ff ff
2012-08-29T16:53:00.049020+01:00 kernel[] err:[   18.362672]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049024+01:00 kernel[] err:[   18.362677]b0 a9 77 61 00 
88 ff ff 30 95 6c 60 00 88 ff ff
2012-08-29T16:53:00.049101+01:00 kernel[] err:[   18.362681]7f 45 4c 46 02 
01 01 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049105+01:00 kernel[] err:[   18.362686]40 a6 c3 62 00 
88 ff ff e0 16 00 00 00 00 00 00
2012-08-29T16:53:00.049108+01:00 kernel[] err:[   18.362690]40 00 00 00 00 
00 00 00 58 82 02 00 00 00 00 00
2012-08-29T16:53:00.049119+01:00 kernel[] err:[   18.362695]00 00 00 00 40 
00 38 00 07 00 40 00 1c 00 1b 00
2012-08-29T16:53:00.049124+01:00 kernel[] warning:[   18.362707] usb 2-1.2: 
DVI-I-1: EDID invalid.
2012-08-29T16:53:00.049126+01:00 kernel[] info:[   18.364581] fb1: udldrmfb 
frame buffer device
2012-08-29T16:53:00.049130+01:00 kernel[] info:[   18.364594] [drm] Initialized 
udl 0.0.1 20120220 on minor 1
2012-08-29T16:53:00.049133+01:00 kernel[] info:[   18.365388] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.049136+01:00 kernel[] err:[   18.421823] Raw EDID:
2012-08-29T16:53:00.049139+01:00 kernel[] err:[   18.421842]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049142+01:00 kernel[] err:[   18.421848]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049152+01:00 kernel[] err:[   18.421853]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049157+01:00 kernel[] err:[   18.421857]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049160+01:00 kernel[] err:[   18.421862]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049163+01:00 kernel[] err:[   18.421866]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049167+01:00 kernel[] err:[   18.421871]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049170+01:00 kernel[] err:[   18.421875]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049173+01:00 kernel[] warning:[   18.421889] usb 2-1.3: 
DVI-I-2: EDID invalid.
2012-08-29T16:53:00.049182+01:00 kernel[] info:[   18.424921] fb2: udldrmfb 
frame buffer device
2012-08-29T16:53:00.049187+01:00 kernel[] info:[   18.424987] [drm] Initialized 
udl 0.0.1 20120220 on minor 2
2012-08-29T16:53:00.049190+01:00 kernel[] info:[   18.428455] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.049193+01:00 kernel[] err:[   18.491450] Raw EDID:
2012-08-29T16:53:00.049196+01:00 kernel[] err:[   18.491469]00 00 00 00 00 
00 00 00 0

[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=54230

Tom Stellard  changed:

   What|Removed |Added

Product|DRI |Mesa
Version|XOrg CVS|git
  Component|DRM/Radeon  |Drivers/Gallium/r600

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=54230

--- Comment #5 from Tom Stellard  2012-08-30 13:13:28 UTC 
---
The llvm backend hasn't been tested much on Cayman, so probably some of the
Cayman specific features aren't working correctly. Could you set the
environment variable R600_DUMP_SHADERS=1 and then post the debug output from
compiz and minecraft?

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42182] Screen brightness is still set to MINIMUM and am unable to change it

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42182


Alan  changed:

   What|Removed |Added

 CC||a...@lxorguk.ukuu.org.uk
  Component|x86-64  |Video(DRI - non Intel)
 AssignedTo|platform_x86_64@kernel-bugs |drivers_video-dri@kernel-bu
   |.osdl.org   |gs.osdl.org
Product|Platform Specific/Hardware  |Drivers




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/radeon: fix dig encoder selection on DCE61

2012-08-30 Thread Alex Deucher
On Thu, Aug 30, 2012 at 2:27 AM, Michel Dänzer  wrote:
> On Mit, 2012-08-29 at 20:02 -0400, alexdeuc...@gmail.com wrote:
>> From: Alex Deucher 
>>
>> Was using the DCE41 code which was wrong. Fixes
>> blank displays on a number of Trinity systems.
>>
>> Signed-off-by: Alex Deucher 
>> Cc: sta...@vger.kernel.org
>> ---
>>  drivers/gpu/drm/radeon/atombios_encoders.c |   31 
>> +++
>>  1 files changed, 26 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c 
>> b/drivers/gpu/drm/radeon/atombios_encoders.c
>> index 4a7f95e..6e8803a 100644
>> --- a/drivers/gpu/drm/radeon/atombios_encoders.c
>> +++ b/drivers/gpu/drm/radeon/atombios_encoders.c
>> @@ -1769,13 +1769,34 @@ static int radeon_atom_pick_dig_encoder(struct 
>> drm_encoder *encoder)
>>   struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc);
>>   struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
>>   struct drm_encoder *test_encoder;
>> - struct radeon_encoder_atom_dig *dig;
>> + struct radeon_encoder_atom_dig *dig = radeon_encoder->enc_priv;
>>   uint32_t dig_enc_in_use = 0;
>>
>> - /* DCE4/5 */
>> - if (ASIC_IS_DCE4(rdev)) {
>> - dig = radeon_encoder->enc_priv;
>> - if (ASIC_IS_DCE41(rdev)) {
>> + if (ASIC_IS_DCE6(rdev)) {
>> + /* DCE6 */
>> + switch (radeon_encoder->encoder_id) {
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
>> + if (dig->linkb)
>> + return 1;
>> + else
>> + return 0;
>> + break;
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
>> + if (dig->linkb)
>> + return 3;
>> + else
>> + return 2;
>> + break;
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
>> + if (dig->linkb)
>> + return 5;
>> + else
>> + return 4;
>> + break;
>> + }
>> + } else if (ASIC_IS_DCE4(rdev)) {
>> + /* DCE4/5 */
>> + if (ASIC_IS_DCE41(rdev) && !ASIC_IS_DCE61(rdev)) {
>
> The !ASIC_IS_DCE61(rdev) seems redundant here. Either way though,
>

whoops, yes, it is.  I was considering whether to add a !DCE61 check
or a new DCE6 section and decided the latter was cleaner, but never
removed the other check.  Oh well.  I'll clean it up later.  Thanks!

> Reviewed-by: Michel Dänzer 
>
>
> --
> Earthling Michel Dänzer   |   http://www.amd.com
> Libre software enthusiast |  Debian, X and DRI developer
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [Intel-gfx] [PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Chris Wilson
On Thu, 30 Aug 2012 13:26:48 +0200, Daniel Vetter  
wrote:
> We've had and still have too many issues where the gpu turbot doesn't
> quite to what it's supposed to do (or what we want it to do).
> 
> Adding a tracepoint to track when the desired gpu frequence changes
> should help a lot in characterizing and understanding problematic
> workloads.
> 
> Also, this should be fairly interesting for power tuning (and
> especially noticing when the gpu is stuck in high frequencies, as has
> happened in the past) and hence for integration into powertop and
> similar tools.
> 
> Cc: Arjan van de Ven 
> Signed-off-by: Daniel Vetter 

Like it, even the naming scheme.
Reviewed-by: Chris Wilson 
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42182] Screen brightness is still set to MINIMUM and am unable to change it

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42182


Alex Deucher  changed:

   What|Removed |Added

 CC||alexdeuc...@gmail.com




--- Comment #1 from Alex Deucher   2012-08-30 13:46:33 
---
Is this still an issue with a newer kernel?  Make sure your kernel has the acpi
backlight controls included.  My drm-next queue for 3.7 has support for native
backlight control (assuming the OEM uses the on chip backlight controller) if
you can't get the acpi backlight controls working.

http://cgit.freedesktop.org/~agd5f/linux/log/?h=drm-next-3.7-wip

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Paul Menzel
Am Donnerstag, den 30.08.2012, 13:26 +0200 schrieb Daniel Vetter:
> We've had and still have too many issues where the gpu turbot doesn't

s,turbot,turbo,

> quite to what it's supposed to do (or what we want it to do).

s,to,do,

> Adding a tracepoint to track when the desired gpu frequence changes

frequenc*y*

> should help a lot in characterizing and understanding problematic
> workloads.
> 
> Also, this should be fairly interesting for power tuning (and
> especially noticing when the gpu is stuck in high frequencies, as has
> happened in the past) and hence for integration into powertop and
> similar tools.

If this can be used from user space already, it would be nice to add
some notes to the commit how this can be done.

> Cc: Arjan van de Ven 
> Signed-off-by: Daniel Vetter 
> ---
>  drivers/gpu/drm/i915/i915_trace.h |   15 +++
>  drivers/gpu/drm/i915/intel_pm.c   |2 ++
>  2 files changed, 17 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_trace.h 
> b/drivers/gpu/drm/i915/i915_trace.h
> index 3c4093d..8134421 100644
> --- a/drivers/gpu/drm/i915/i915_trace.h
> +++ b/drivers/gpu/drm/i915/i915_trace.h
> @@ -430,6 +430,21 @@ TRACE_EVENT(i915_reg_rw,
>   (u32)(__entry->val >> 32))
>  );
>  
> +TRACE_EVENT(intel_gpu_freq_change,
> + TP_PROTO(u32 freq),
> + TP_ARGS(freq),
> +
> + TP_STRUCT__entry(
> +  __field(u32, freq)
> +  ),
> +
> + TP_fast_assign(
> +__entry->freq = freq;
> +),
> +
> + TP_printk("new_freq=%u", __entry->freq)
> +);
> +
>  #endif /* _I915_TRACE_H_ */
>  
>  /* This part must be outside protection */
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index ebe3498..194a72f 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -2343,6 +2343,8 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>   I915_WRITE(GEN6_RP_INTERRUPT_LIMITS, limits);
>  
>   dev_priv->rps.cur_delay = val;
> +
> + trace_intel_gpu_freq_change(val * 50);
>  }
>  
>  static void gen6_disable_rps(struct drm_device *dev)

Acked-by: Paul Menzel 


Thanks,

Paul


signature.asc
Description: This is a digitally signed message part
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[RFC] New dma_buf -> EGLImage EGL extension

2012-08-30 Thread Tom Cooksey
Hi All,

Over the last few months I've been working on & off with a few people from
Linaro on a new EGL extension. The extension allows constructing an EGLImage
from a (set of) dma_buf file descriptors, including support for multi-plane
YUV. I envisage the primary use-case of this extension to be importing video
frames from v4l2 into the EGL/GLES graphics driver to texture from.
Originally the intent was to develop this as a Khronos-ratified extension.
However, this is a little too platform-specific to be an officially
sanctioned Khronos extension. It also goes against the general "EGLStream"
direction the EGL working group is going in. As such, the general feeling
was to make this an EXT "multi-vendor" extension with no official stamp of
approval from Khronos. As this is no-longer intended to be a Khronos
extension, I've re-written it to be a lot more Linux & dma_buf specific. It
also allows me to circulate the extension more widely (I.e. To those outside
Khronos membership).

ARM are implementing this extension for at least our Mali-T6xx driver and
likely earlier drivers too. I am sending this e-mail to solicit feedback,
both from other vendors who might implement this extension (Mesa3D?) and
from potential users of the extension. However, any feedback is welcome.
Please find the extension text as it currently stands below. There several
open issues which I've proposed solutions for, but I'm not really happy with
those proposals and hoped others could chip-in with better ideas. There are
likely other issues I've not thought about which also need to be added and
addressed.

Once there's a general consensus or if no-one's interested, I'll update the
spec, move it out of Draft status and get it added to the Khronos registry,
which includes assigning values for the new symbols.


Cheers,

Tom


-8<-


Name

EXT_image_dma_buf_import

Name Strings

EGL_EXT_image_dma_buf_import

Contributors

Jesse Barker
Rob Clark
Tom Cooksey

Contacts

Jesse Barker (jesse 'dot' barker 'at' linaro 'dot' org)
Tom Cooksey (tom 'dot' cooksey 'at' arm 'dot' com)

Status

DRAFT

Version

Version 3, August 16, 2012

Number

EGL Extension ???

Dependencies

EGL 1.2 is required.

EGL_KHR_image_base is required.

The EGL implementation must be running on a Linux kernel supporting the
dma_buf buffer sharing mechanism.

This extension is written against the wording of the EGL 1.2
Specification.

Overview

This extension allows creating an EGLImage from a Linux dma_buf file
descriptor or multiple file descriptors in the case of multi-plane YUV
images.

New Types

None

New Procedures and Functions

None

New Tokens

Accepted by the  parameter of eglCreateImageKHR:

EGL_LINUX_DMA_BUF_EXT

Accepted as an attribute in the  parameter of
eglCreateImageKHR:

EGL_LINUX_DRM_FOURCC_EXT
EGL_DMA_BUF_PLANE0_FD_EXT
EGL_DMA_BUF_PLANE0_OFFSET_EXT
EGL_DMA_BUF_PLANE0_PITCH_EXT
EGL_DMA_BUF_PLANE1_FD_EXT
EGL_DMA_BUF_PLANE1_OFFSET_EXT
EGL_DMA_BUF_PLANE1_PITCH_EXT
EGL_DMA_BUF_PLANE2_FD_EXT
EGL_DMA_BUF_PLANE2_OFFSET_EXT
EGL_DMA_BUF_PLANE2_PITCH_EXT

Additions to Chapter 2 of the EGL 1.2 Specification (EGL Operation)

Add to section 2.5.1 "EGLImage Specification" (as defined by the
EGL_KHR_image_base specification), in the description of
eglCreateImageKHR:

   "Values accepted for  are listed in Table aaa, below.

 
+-++
  | |  Notes
|
 
+-++
  |  EGL_LINUX_DMA_BUF_EXT  |   Used for EGLImages imported from Linux
|
  | |   dma_buf file descriptors
|
 
+-++
   Table aaa.  Legal values for eglCreateImageKHR  parameter

...

If  is EGL_LINUX_DMA_BUF_EXT,  must be a valid display,

must be EGL_NO_CONTEXT, and  must be NULL, cast into the type
EGLClientBuffer. The details of the image is specified by the attributes
passed into eglCreateImageKHR. Required attributes and their values are
as
follows:

* EGL_WIDTH & EGL_HEIGHT: The logical dimensions of the buffer in
pixels

* EGL_LINUX_DRM_FOURCC_EXT: The pixel format of the buffer, as
specified
  by drm_fourcc.h and used as the pixel_format parameter of the
  drm_mode_fb_cmd2 ioctl.

* EGL_DMA_BUF_PLANE0_FD_EXT: The dma_buf file descriptor of plane 0
of
  the image.

* EGL_DMA_BUF_PLANE0_OFFSET_EXT: The offset from the start of the
  dma_buf of the first sample in plane 0, in bytes.
 
* EGL_DMA_BUF_PLANE0_PITCH_EXT: The number of bytes between the
start of
  subsequent rows of samples in plane 0. May have special meaning
for
  non-linear formats.

  

Re: udl vs udlfb and EDID trouble

2012-08-30 Thread Alex Deucher
On Thu, Aug 30, 2012 at 8:24 AM, Tvrtko Ursulin
 wrote:
>
> Hi all,
>
> I've been playing with some DisplayLink adapters, six of them to be precise
> connected to six identical HDMI monitors.
>
> Under kernel 3.5 things did not really work for me apparently because of the
> udl driver's inability to fetch EDID. Interestingly, logged EDID blocks were
> different for each of the six monitors which suggests a serious bug somewhere.
>
> I've then went to see if I can load my own EDID, because I remember doing it
> via /sys/class/graphics/fb?/edid before, but that file was not there.
> (Is it possible to override EDID with the udl driver?)
>
> To cut the long story short, I figured out there are two drivers for this
> hardware. Fedora based 3.5 kernel builds and uses udl, while the older 3.3.2
> I played with before builds and uses udlfb. (Why two drivers?)

udlfb was the original driver.  It's a basic kernel fb driver.  udl is
a drm driver that Dave wrote based on udlfb.  The drm variant will
eventually allow you to hotplug displaylink adapters in X and use
acceleration provided by another GPU.

>
> Now going back to 3.3.2 and udlfb, EDID got correctly fetched from all six
> monitors.

Sounds like a bug in the udl i2c code.  Probably worth comparing the
relevant udl and uldfb code; it may be a simple fix.

Alex
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/radeon: fix dig encoder selection on DCE61

2012-08-30 Thread Rafał Miłecki
2012/8/30 Alex Deucher :
> On Thu, Aug 30, 2012 at 2:27 AM, Michel Dänzer  wrote:
>> On Mit, 2012-08-29 at 20:02 -0400, alexdeuc...@gmail.com wrote:
>>> - /* DCE4/5 */
>>> - if (ASIC_IS_DCE4(rdev)) {
>>> - dig = radeon_encoder->enc_priv;
>>> - if (ASIC_IS_DCE41(rdev)) {
>>> + if (ASIC_IS_DCE6(rdev)) {
>>> + /* DCE6 */

Amazing comment ;)

-- 
Rafał
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42672] Nouveau. Screen corruption and occasional gpu lockup

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42672


Alan  changed:

   What|Removed |Added

 CC||a...@lxorguk.ukuu.org.uk
 Kernel Version|3.2.2   |3.3.1




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42708] drm:radeon_cs_ioctl "Failed to schedule IB" error after s2ram and wakeup

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42708


Alan  changed:

   What|Removed |Added

 CC||a...@lxorguk.ukuu.org.uk
  Component|Video(Other)|Video(DRI - non Intel)
 AssignedTo|drivers_video-other@kernel- |drivers_video-dri@kernel-bu
   |bugs.osdl.org   |gs.osdl.org




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 26891] Radeon KMS fails with inaccessible AtomBIOS on systems with (U)EFI boot

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=26891

--- Comment #35 from Alex Deucher  2012-08-30 14:25:55 UTC ---
(In reply to comment #34)
> Alex,
> Please see the DSDT table from a Macbook Pro booted in EFI mode. Maybe it will
> give you some ideas for extracting the VBIOS.

Sorry, I'm not really much of an ACPI or Mac expert.  I don't see anything
relevant.  IIRC, the vbios on macs is only available in boot services so it's
likely gone by the time the OS is loaded.  You'd probably need the boot loader
to grab it and store a copy somewhere so the OS can access it when it loads. 
I'm not sure how Apple does it.  Someone more familiar with Macs may have some
ideas.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42787] Video flickers on X1200 / RS690 over DVI

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42787


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||a...@lxorguk.ukuu.org.uk
 Resolution||INSUFFICIENT_DATA




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42708] drm:radeon_cs_ioctl "Failed to schedule IB" error after s2ram and wakeup

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42708


Dizintegrator  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||PATCH_ALREADY_AVAILABLE




--- Comment #1 from Dizintegrator   2012-08-30 14:43:05 ---
Not reproduceable anymore on kernels 3.4 - 3.5. Closed.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 46711] New: vmwgfx does not work in qemu/kvm

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=46711

   URL: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1
037606
   Summary: vmwgfx does not work in qemu/kvm
   Product: Drivers
   Version: 2.5
Kernel Version: 3.6-rc3
  Platform: All
OS/Version: Linux
  Tree: Mainline
Status: NEW
  Severity: normal
  Priority: P1
 Component: Video(DRI - non Intel)
AssignedTo: drivers_video-...@kernel-bugs.osdl.org
ReportedBy: hramr...@gmail.com
Regression: No


vmwgfx fails in kvm (running something like kvm -m 2048 -vga vmware -hda
ubuntu.img):


[   29.856068] [drm] Initialized drm 1.1.0 20060810
[   29.905192] [drm] Capabilities:
[   29.905196] [drm]   Rect copy.
[   29.905197] [drm]   Cursor.
[   29.905198] [drm]   Cursor bypass.
[   29.905198] [drm]   Cursor bypass 2.
[   29.905200] [drm] VRAM at 0xfd00 size is 16384 kiB
[   29.905201] [drm] MMIO at 0xfe00 size is 64 kiB
[   29.905203] [drm] global init.
[   29.907091] [TTM] Zone  kernel: Available graphics memory: 1025792 kiB
[   29.907093] [TTM] Initializing pool allocator
[   29.907097] [TTM] Initializing DMA pool allocator
[   29.907432] [drm:vmw_driver_load] *ERROR* Hardware has no pitchlock
[   29.907475] [TTM] Finalizing pool allocator
[   29.907478] [TTM] Finalizing DMA pool allocator
[   29.907494] [TTM] Zone  kernel: Used memory at exit: 0 kiB
[   29.907676] vmwgfx: probe of :00:02.0 failed with error -38

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 42795] Unable to boot with the radeon driver

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=42795


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||a...@lxorguk.ukuu.org.uk
 Resolution||CODE_FIX




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/i915/hdmi: only enable audio if there's a hdmi sink

2012-08-30 Thread Adam Jackson

On 8/30/12 3:44 AM, Daniel Vetter wrote:

Some monitors totally don't like to receive infoframes, and naturally
don't claim to support hdmi.

But for some odd reason they've added a CEA block to their edid,
which automatically gives you basic audio. Still, we may not send
out hdmi infoframes to them, hence check whether the sink is indeed
hdmi capable.

Also kill a stale comment while at it.


Does an incomplete version of what it says on the box, you need to hit 
the HDMI code in intel_sdvo.c too.


At which point, should do the obvious bool drm_monitor_has_hdmi_audio() 
in drm_edid.c.


- ajax
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 36072] celestia causes kernel oops when allocation a lot of memory (for textures)

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=36072


aceman  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|OBSOLETE|




--- Comment #8 from aceman   2012-08-30 15:32:57 ---
Yes, still happens randomly, on kernel 3.5.3, X.org 1.12, ati driver 6.99.99,
Mesa git (9.0):

Aug 29 23:46:50 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:47:16 coolbox last message repeated 646 times
Aug 29 23:48:07 coolbox last message repeated 554 times
Aug 29 23:50:15 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:50:41 coolbox last message repeated 6 times
Aug 29 23:50:41 coolbox kernel: vmap allocation for size 178966528 failed: use
vmalloc= to increase size.
Aug 29 23:50:41 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:50:49 coolbox last message repeated 131 times
Aug 29 23:50:58 coolbox kernel: [ cut here ]
Aug 29 23:50:58 coolbox kernel: kernel BUG at
drivers/gpu/drm/ttm/ttm_bo.c:1167!
Aug 29 23:50:58 coolbox kernel: invalid opcode:  [#1] SMP
Aug 29 23:50:58 coolbox kernel: Modules linked in: usb_storage autofs4
nf_conntrack_ftp xt_tcpudp xt_owner xt_multiport nf_conntrack_ipv4
nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_LOG iptable_filter ip
_tables x_tables asus_atk0110 snd_seq_oss snd_seq_midi_event snd_seq
snd_seq_device snd_pcm_oss snd_mixer_oss cx88_blackbird cx2341x cx8802
tuner_simple tuner_types tda9887 tda8290 tea5767 tuner cx8800 cx88xx r
c_core tveeprom v4l2_common videodev videobuf_dma_sg videobuf_core btcx_risc
k10temp forcedeth snd_hda_codec_via snd_hda_intel snd_hda_codec snd_pcm
snd_timer snd soundcore snd_page_alloc i2c_nforce2 ext4 mbcac
he jbd2 crc16 usbhid powernow_k8 mperf ohci_hcd ehci_hcd usbcore usb_common
fuse [last unloaded: microcode]
Aug 29 23:50:58 coolbox kernel:
Aug 29 23:50:58 coolbox kernel: Pid: 19931, comm: celestia Not tainted 2.6.45.3
#93 System manufacturer System Product Name/M2N68
Aug 29 23:50:58 coolbox kernel: EIP: 0060:[] EFLAGS: 00010206 CPU: 3
Aug 29 23:50:58 coolbox kernel: EIP is at ttm_bo_check_placement+0x19/0x20
Aug 29 23:50:58 coolbox kernel: EAX: e1f12c2c EBX: 2aac ECX:  EDX:
0100
Aug 29 23:50:58 coolbox kernel: ESI: ec13c468 EDI: ebbf71c0 EBP: 00021240 ESP:
eaa33d70
Aug 29 23:50:58 coolbox kernel:  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Aug 29 23:50:58 coolbox kernel: CR0: 8005003b CR2: aa634000 CR3: 2afab000 CR4:
07f0
Aug 29 23:50:58 coolbox kernel: DR0:  DR1:  DR2:  DR3:

Aug 29 23:50:58 coolbox kernel: DR6: 0ff0 DR7: 0400
Aug 29 23:50:58 coolbox kernel: Process celestia (pid: 19931, ti=eaa32000
task=ec27a030 task.ti=eaa32000)
Aug 29 23:50:58 coolbox kernel: Stack:
Aug 29 23:50:58 coolbox kernel:  c030b4c9   01aac000 e1f12c2c
e1f12c00 fff4 0001
Aug 29 23:50:58 coolbox kernel:  02aac000 c033bb07  e1f12c14 0001
 0001 
Aug 29 23:50:58 coolbox kernel:  00021240  c033b850 0001 0001
 ec13c468 ec13cd38
Aug 29 23:50:58 coolbox kernel: Call Trace:
Aug 29 23:50:58 coolbox kernel:  [] ? ttm_bo_init+0x179/0x370
Aug 29 23:50:58 coolbox kernel:  [] ? radeon_bo_create+0x197/0x290
Aug 29 23:50:58 coolbox kernel:  [] ? radeon_bo_clear_va+0x80/0x80
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_object_create+0x5c/0xf0
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_create_ioctl+0x66/0xf0
Aug 29 23:50:58 coolbox kernel:  [] ? _copy_from_user+0x33/0x70
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_pwrite_ioctl+0x30/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? drm_ioctl+0x36c/0x3d0
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_pwrite_ioctl+0x30/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? free_pgtables+0x8a/0xb0
Aug 29 23:50:58 coolbox kernel:  [] ? tlb_finish_mmu+0x9/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? drm_copy_field+0x70/0x70
Aug 29 23:50:58 coolbox kernel:  [] ? do_vfs_ioctl+0x7a/0x580
Aug 29 23:50:58 coolbox kernel:  [] ? do_munmap+0x245/0x300
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_ioctl+0x2e/0x50
Aug 29 23:50:58 coolbox kernel:  [] ? syscall_call+0x7/0xb
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel: Code: 8b 6c 24 14 83 c4 18 c3 8d 76 00 8d bc 27
00 00 00 00 8b 0a 85 c9 75 09 83 7a 04 00 75 03 31 c0 c3 8b 52 04 29 ca 39 50
44 76 f3 <0f> 0b 90 8d 74 26 00 8b 4a 14 53 6b d9 50
 8b 44 18 1c a8 01 75
Aug 29 23:50:58 coolbox kernel: EIP: []
ttm_bo_check_placement+0x19/0x20 SS:ESP 0068:eaa33d70
Aug 29 

Re: [PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Shirish S
On Thu, Aug 30, 2012 at 3:58 AM, Ville Syrjälä <
ville.syrj...@linux.intel.com> wrote:

> On Thu, Aug 30, 2012 at 12:34:06PM +0530, Shirish S wrote:
> > @@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter,
> unsigned char *buf,
> >   .buf= buf,
> >   }
> >   };
> > - ret = i2c_transfer(adapter, msgs, 2);
> > +
> > + /*
> > +  * Avoid sending the segment addr to not upset non-compliant ddc
> > +  * monitors.
> > +  */
>
> Indentation is still wrong. Or is it gettimg mangled by some email server?
>
> I have double checked with checkpatch, i did not get any errors or
warnings,
looks like as you are saying may be true.
Requesting for merge!

> > + ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
> > +
> >   if (ret == -ENXIO) {
> >   DRM_DEBUG_KMS("drm: skipping non-existent adapter
> %s\n",
> >   adapter->name);
> >   break;
> >   }
> > - } while (ret != 2 && --retries);
> > + } while (ret != xfers && --retries);
> >
> > - return ret == 2 ? 0 : -1;
> > + return ret == xfers ? 0 : -1;
> >  }
> >
> >  static bool drm_edid_is_zero(u8 *in_edid, int length)
>
> --
> Ville Syrjälä
> Intel OTC
> ___
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 46161] divide error on radeon modprobe

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=46161


Alan  changed:

   What|Removed |Added

  Component|Video(Other)|Video(DRI - non Intel)
 AssignedTo|drivers_video-other@kernel- |drivers_video-dri@kernel-bu
   |bugs.osdl.org   |gs.osdl.org




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[PATCH] drm/radeon: implement bounds checking on thermal controller lookup

2012-08-30 Thread alexdeucher
From: Alex Deucher 

Don't read past the end of the array if we encounter an unknown
thermal controller.

Signed-off-by: Alex Deucher 
---
 drivers/gpu/drm/radeon/radeon_atombios.c |   11 +--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c 
b/drivers/gpu/drm/radeon/radeon_atombios.c
index e368b30..01b90b4 100644
--- a/drivers/gpu/drm/radeon/radeon_atombios.c
+++ b/drivers/gpu/drm/radeon/radeon_atombios.c
@@ -2009,7 +2009,8 @@ static int radeon_atombios_parse_power_table_1_3(struct 
radeon_device *rdev)
power_info = (union power_info *)(mode_info->atom_context->bios + 
data_offset);
 
/* add the i2c bus for thermal/fan chip */
-   if (power_info->info.ucOverdriveThermalController > 0) {
+   if ((power_info->info.ucOverdriveThermalController > 0) &&
+   (power_info->info.ucOverdriveThermalController < 
ARRAY_SIZE(thermal_controller_names))) {
DRM_INFO("Possible %s thermal controller at 0x%02x\n",
 
thermal_controller_names[power_info->info.ucOverdriveThermalController],
 power_info->info.ucOverdriveControllerAddress >> 1);
@@ -2213,7 +2214,7 @@ static void 
radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
   (controller->ucType ==
ATOM_PP_THERMALCONTROLLER_EMC2103_WITH_INTERNAL)) {
DRM_INFO("Special thermal controller config\n");
-   } else {
+   } else if (controller->ucType < 
ARRAY_SIZE(pp_lib_thermal_controller_names)) {
DRM_INFO("Possible %s thermal controller at 0x%02x %s 
fan control\n",
 
pp_lib_thermal_controller_names[controller->ucType],
 controller->ucI2cAddress >> 1,
@@ -2228,6 +2229,12 @@ static void 
radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
strlcpy(info.type, name, sizeof(info.type));
i2c_new_device(&rdev->pm.i2c_bus->adapter, 
&info);
}
+   } else {
+   DRM_INFO("Unknown thermal controller type %d at 0x%02x 
%s fan control\n",
+controller->ucType,
+controller->ucI2cAddress >> 1,
+(controller->ucFanParameters &
+ ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : 
"with");
}
}
 }
-- 
1.7.7.5

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 26891] Radeon KMS fails with inaccessible AtomBIOS on systems with (U)EFI boot

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=26891

--- Comment #36 from Stefan Dösinger  2012-08-30 
17:39:59 UTC ---
My guess would be that they simply store it in the driver, i.e. similarly to
what my hack does. Considering that they have hardware and software under full
control I don't see why they want a video bios that's separate from the driver.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


drm: Adding the option IRQ_ONESHOT to support irq oneshot

2012-08-30 Thread Liu, Chuansheng
From: liu chuansheng 
Subject: [PATCH] drm: Adding the option IRQ_ONESHOT to support irq oneshot

For some platforms, we want the irq is handled as one shot,
then even when we use the irq thread, with this option, the new
irq will come until the irq thread finished.

So we have the requirement for IRQ_ONESHOT.

Signed-off-by: liu chuansheng 
---
 drivers/gpu/drm/drm_irq.c |3 +++
 include/drm/drmP.h|1 +
 2 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index 03f16f3..7a8a581 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -345,6 +345,9 @@ int drm_irq_install(struct drm_device *dev)
if (drm_core_check_feature(dev, DRIVER_IRQ_SHARED))
sh_flags = IRQF_SHARED;
 
+if (drm_core_check_feature(dev, DRIVER_IRQ_ONESHOT))
+sh_flags |= IRQF_ONESHOT;
+
if (dev->devname)
irqname = dev->devname;
else
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
index d6b67bb..dfede31 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -152,6 +152,7 @@ int drm_err(const char *func, const char *format, ...);
 #define DRIVER_GEM 0x1000
 #define DRIVER_MODESET 0x2000
 #define DRIVER_PRIME   0x4000
+#define DRIVER_IRQ_ONESHOT 0x8000
 
 #define DRIVER_BUS_PCI 0x1
 #define DRIVER_BUS_PLATFORM 0x2
-- 
1.7.0.4
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


A few questions about the best way to implement RandR 1.4 / PRIME buffer sharing

2012-08-30 Thread Aaron Plattner

So I've been experimenting with support for Dave Airlie's new RandR 1.4 provider
object interface, so that Optimus-based laptops can use our driver to drive the
discrete GPU and display on the integrated GPU.  The good news is that I've got
a proof of concept working.

During a review of the current code, we came up with a few concerns:

1. The output source is responsible for allocating the shared memory

Right now, the X server calls CreatePixmap on the output source screen and then
expects the output sink screen to be able to display from whatever memory the
source allocates.  Right now, the source has no mechanism for asking the sink
what its requirements are for the surface.  I'm using our own internal pitch
alignment requirements and that seems to be good enough for the Intel device to
scan out, but that could be pure luck.

Does it make sense to add a mechanism for drivers to negotiate this with each
other, or is it sufficient to just define a lowest common denominator format and
if your hardware can't deal with that format, you just don't get to share
buffers?

One of my coworkers brought to my attention the fact that Tegra requires a
specific pitch alignment, and cannot accommodate larger pitches.  If other SoC
designs have similar restrictions, we might need to add a handshake mechanism.

2. There's no fallback mechanism if sharing can't be negotiated

If RandR fails to share a pixmap with the output sink screen, the whole modeset
fails.  This means you'll end up not seeing anything on the screen and you'll
probably think your computer locked up.  Should there be some sort of software
copy fallback to ensure that something at least shows up on the display?

3. How should the memory be allocated?

In the prototype I threw together, I'm allocating the shared memory using
shm_open and then exporting that as a dma-buf file descriptor using an ioctl I
added to the kernel, and then importing that memory back into our driver through
dma_buf_attach & dma_buf_map_attachment.  Does it make sense for user-space
programs to be able to export shmfs files like that?  Should that interface go
in DRM / GEM / PRIME instead?  Something else?  I'm pretty unfamiliar with this
kernel code so any suggestions would be appreciated.

-- Aaron


P.S. for those unfamiliar with PRIME:
Dave Airlie added new support to the X Resize and Rotate extension version 1.4
to support offloading display and rendering to different drivers.  PRIME is the
DRM implementation in the kernel, layered on top of DMA-BUF, that implements the
actual sharing of buffers between drivers.

http://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt?id=randrproto-1.4.0#n122
http://airlied.livejournal.com/7.html - update on hotplug server
http://airlied.livejournal.com/76078.html - randr 1.5 demo videos

---
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
---
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [Linaro-mm-sig] A few questions about the best way to implement RandR 1.4 / PRIME buffer sharing

2012-08-30 Thread Aaron Plattner

On 08/30/2012 10:31 AM, Aaron Plattner wrote:

So I've been experimenting with support for Dave Airlie's new RandR 1.4 provider
object interface, so that Optimus-based laptops can use our driver to drive the
discrete GPU and display on the integrated GPU.  The good news is that I've got
a proof of concept working.

During a review of the current code, we came up with a few concerns:

1. The output source is responsible for allocating the shared memory

Right now, the X server calls CreatePixmap on the output source screen and then
expects the output sink screen to be able to display from whatever memory the
source allocates.  Right now, the source has no mechanism for asking the sink
what its requirements are for the surface.  I'm using our own internal pitch
alignment requirements and that seems to be good enough for the Intel device to
scan out, but that could be pure luck.

Does it make sense to add a mechanism for drivers to negotiate this with each
other, or is it sufficient to just define a lowest common denominator format and
if your hardware can't deal with that format, you just don't get to share
buffers?

One of my coworkers brought to my attention the fact that Tegra requires a
specific pitch alignment, and cannot accommodate larger pitches.  If other SoC
designs have similar restrictions, we might need to add a handshake mechanism.

2. There's no fallback mechanism if sharing can't be negotiated

If RandR fails to share a pixmap with the output sink screen, the whole modeset
fails.  This means you'll end up not seeing anything on the screen and you'll
probably think your computer locked up.  Should there be some sort of software
copy fallback to ensure that something at least shows up on the display?

3. How should the memory be allocated?

In the prototype I threw together, I'm allocating the shared memory using
shm_open and then exporting that as a dma-buf file descriptor using an ioctl I
added to the kernel, and then importing that memory back into our driver through
dma_buf_attach & dma_buf_map_attachment.  Does it make sense for user-space
programs to be able to export shmfs files like that?  Should that interface go
in DRM / GEM / PRIME instead?  Something else?  I'm pretty unfamiliar with this
kernel code so any suggestions would be appreciated.


There's also a #4 that didn't seem relevant to cross-post to linaro-mm-sig:

4. There's no mechanism for double buffering the output sink

RandR allocates one pixmap on the output source screen and sets up tracking so
the source driver can copy the screen into the shared pixmap.  However, the sink 
driver scans out from the shared pixmap directly.  There's no mechanism to

prevent tearing on the sink side of the pipeline.

It seems like it would be nice if the source could trigger the sink device to
flip between front and back buffers when the copy is finished, and get back a
fence to indicate when the flip has occurred and the source can start the next 
copy.

-- Aaron
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #22 from Alexandre Demers  2012-08-30 
21:34:48 UTC ---
It seems Marek has more weight than me about lockups related to VM on
Cayman(problem first reported as bug 45018). Patch by Marek to disable VM by
default for Cayman:
http://lists.freedesktop.org/archives/mesa-dev/2012-August/026590.html

If you have any news on the subject, feel free to add info in the current bug.
To Marek: are you experiencing the same first lockup in the piglit tests as
reported in comment 10. I'm sure have seen a previous comment from another dev
who was also experiencing lockups on Cayman, but I can't find who that was.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #23 from Alex Deucher  2012-08-30 21:42:20 UTC ---
(In reply to comment #22)
> It seems Marek has more weight than me about lockups related to VM on
> Cayman(problem first reported as bug 45018). 

Well, we were hoping to get this resolved in time for 9.0, but as it's getting
pretty close now, it's probably better to disable it at least for the 9.0
release.  The problem is, when it's disabled, there's not much chance of anyone
testing it, so it's not likely to ever get properly fixed.  Also, SI only
supports VM, so we can't disable VM for SI.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 41732] [radeon] KMS (and X.org) detect wrong outputs

2012-08-30 Thread bugzilla-daemon
https://bugzilla.kernel.org/show_bug.cgi?id=41732


Niels Ole Salscheider  changed:

   What|Removed |Added

 Status|NEEDINFO|RESOLVED
 Resolution||PATCH_ALREADY_AVAILABLE




--- Comment #11 from Niels Ole Salscheider   
2012-08-30 22:20:42 ---
This issue is fixed in recent kernels.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #24 from Alexandre Demers  2012-08-30 
22:38:36 UTC ---
(In reply to comment #23)
> (In reply to comment #22)
> > It seems Marek has more weight than me about lockups related to VM on
> > Cayman(problem first reported as bug 45018). 
> 
> Well, we were hoping to get this resolved in time for 9.0, but as it's getting
> pretty close now, it's probably better to disable it at least for the 9.0
> release.  The problem is, when it's disabled, there's not much chance of 
> anyone
> testing it, so it's not likely to ever get properly fixed.  Also, SI only
> supports VM, so we can't disable VM for SI.

Meanwhile, since fixes committed for bug 45018 helped me a lot, I'll gladly
keep VM activated to test it. After all, my desktop is now usable now, I've
been running for 3 days without any lockup, while I was previously only able to
run for a couple of hours before restarting. So, if you have any patches you
want to test that could help, ask me.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


Re: [PATCH] drm/radeon: implement bounds checking on thermal controller lookup

2012-08-30 Thread Michel Dänzer
On Don, 2012-08-30 at 13:32 -0400, alexdeuc...@gmail.com wrote: 
> From: Alex Deucher 
> 
> Don't read past the end of the array if we encounter an unknown
> thermal controller.
> 
> Signed-off-by: Alex Deucher 

Reviewed-by: Michel Dänzer 


-- 
Earthling Michel Dänzer   |   http://www.amd.com
Libre software enthusiast |  Debian, X and DRI developer
___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[Bug 52256] Trinity (ARUBA) DP link training problems

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=52256

--- Comment #8 from Alex Deucher  2012-08-30 00:13:43 UTC 
---
Should be fixed in my drm-next-3.6 branch:
http://cgit.freedesktop.org/~agd5f/linux/log/?h=drm-fixes-3.6
there are several patches required.  The patches should show up in stable
kernels as well once Dave pulls them.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 52256] Trinity (ARUBA) DP link training problems

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=52256

--- Comment #9 from LRN  2012-08-30 01:40:44 UTC ---
Pulled your drm-next-3.6 branch, and merged with current linux master.
Display now works!

There are font rendering problems with X server, but that's another issue.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 26891] Radeon KMS fails with inaccessible AtomBIOS on systems with (U)EFI boot

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=26891

--- Comment #34 from Anonymous Helper  2012-08-30 
01:48:07 UTC ---
Created attachment 66308
  --> https://bugs.freedesktop.org/attachment.cgi?id=66308
DSDT table from Macbook Pro 8,2 (EFI boot)

Alex,
Please see the DSDT table from a Macbook Pro booted in EFI mode. Maybe it will
give you some ideas for extracting the VBIOS.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


-next queue and EDID stuff

2012-08-30 Thread Ian Pilcher
On 08/29/2012 04:38 PM, Adam Jackson wrote:
> So to me, that says that drivers need to ask _both_ whether the monitor
> supports audio and whether it's HDMI before sending HDMI-specific audio
> signalling.

OK, so the burden is on the individual drivers.

In terms of moving forward with the rest of the EDID quirk stuff, are
you OK with either of these options:

* Remove EDID_QUIRK_NO_AUDIO from the flags for the LG L246WP.  It won't
  work "out of the box" with the Intel driver until that driver is
  fixed to not send audio InfoFrames to non-HDMI displays (but anyone
  who has the combination will be able to add their own quirk to make
  it work).

* Leave both flags, because both are accurate.  The display is confused
  by any InfoFrames (audio or AVI), and it is reporting non-existent
  audio capabilities.  The fact that the combination of the two flags
  makes the display work with Intel GPUs is a happy/sad/neutral
  accident, and the driver's behavior is still considered broken.

  (Essentially, this would mean just editing the comments to reflect the
  above reasoning.)

If needed, I can easily create a new patch for either option.  Just let
me know.

Thanks!

-- 

Ian Pilcher arequipeno at gmail.com
"If you're going to shift my paradigm ... at least buy me dinner first."



[git pull] drm fixes

2012-08-30 Thread Dave Airlie

Hi Linus,

a bunch of scattered fixes ati/intel/nouveau, couple of core ones,
nothing too shocking or different.

Dave.

The following changes since commit fea7a08acb13524b47711625eebea40a0ede69a0:

  Linux 3.6-rc3 (2012-08-22 13:29:06 -0700)

are available in the git repository at:

  git://people.freedesktop.org/~airlied/linux.git drm-fixes

for you to fetch changes up to 6f33814bd4d9cfe76033a31b1c0c76c960cd8e4b:

  drm: Add EDID_QUIRK_FORCE_REDUCED_BLANKING for ASUS VW222S (2012-08-30 
14:14:12 +1000)


Alex Deucher (5):
  drm/radeon: don't disable plls that are in use by other crtcs
  drm/radeon/atom: rework DIG modesetting on DCE3+
  drm/radeon/atom: powergating fixes for DCE6
  drm/radeon: rework panel mode setup
  drm/radeon: fix dig encoder selection on DCE61

Ben Skeggs (1):
  drm/nvc0/copy: check PUNITS to determine which copy engines are disabled

Calvin Walton (1):
  i915: Quirk no_lvds on Gigabyte GA-D525TUD ITX motherboard

Chris Wilson (1):
  drm/i915: Use the correct size of the GTT for placing the per-process 
entries

Christian K?nig (1):
  drm/radeon: fix double free in radeon_gpu_reset

Dave Airlie (3):
  Merge branch 'drm-nouveau-fixes' of 
git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-fixes
  Merge branch 'drm-intel-fixes' of 
git://people.freedesktop.org/~danvet/drm-intel into drm-fixes
  Merge branch 'drm-fixes-3.6' of git://people.freedesktop.org/~agd5f/linux 
into drm-fixes

Forest Bond (1):
  gma500: Consider CRTC initially active.

Jakob Bornecrantz (1):
  drm: Check for invalid cursor flags

Jerome Glisse (1):
  drm/radeon: force dma32 to fix regression rs4xx,rs6xx,rs740

Marek Ol??k (3):
  drm/radeon: fix reading CB_COLORn_MASK from the CS
  drm/radeon: initialize tracked CS state
  drm/radeon: add proper checking of RESOLVE_BOX command for r600-r700

Paul Menzel (1):
  drm: Add EDID_QUIRK_FORCE_REDUCED_BLANKING for ASUS VW222S

Vijay Purushothaman (1):
  drm/i915: fix color order for BGR formats on IVB

Ville Syrj?l? (1):
  drm: Initialize object type when using DRM_MODE() macro

Xu, Anhua (1):
  drm/i915: fix wrong order of parameters in port checking functions

 drivers/gpu/drm/drm_crtc.c |2 +-
 drivers/gpu/drm/drm_edid.c |3 +
 drivers/gpu/drm/gma500/psb_intel_display.c |3 +
 drivers/gpu/drm/i915/i915_gem_gtt.c|2 +-
 drivers/gpu/drm/i915/intel_display.c   |   12 +--
 drivers/gpu/drm/i915/intel_lvds.c  |8 ++
 drivers/gpu/drm/i915/intel_sprite.c|4 +-
 drivers/gpu/drm/nouveau/nouveau_state.c|6 +-
 drivers/gpu/drm/radeon/atombios_crtc.c |   36 ---
 drivers/gpu/drm/radeon/atombios_dp.c   |   29 +++---
 drivers/gpu/drm/radeon/atombios_encoders.c |  140 +++-
 drivers/gpu/drm/radeon/r600_cs.c   |   30 +-
 drivers/gpu/drm/radeon/r600d.h |8 ++
 drivers/gpu/drm/radeon/radeon_device.c |5 +-
 drivers/gpu/drm/radeon/radeon_drv.c|3 +-
 drivers/gpu/drm/radeon/reg_srcs/r600   |1 -
 include/drm/drm_crtc.h |3 +-
 include/drm/drm_mode.h |5 +-
 18 files changed, 174 insertions(+), 126 deletions(-)


[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread y...@samsung.com
From: Shirish S 

This patch adds support in probing 4 block edid data, for E-DDC.
This is the first test case in CTS, for HDMI compliance.

Changes from V1:
1. Data type of offset adress updated to unsigned short
2. Updated the buf feild of msg[0]

Changes from V2:
Add switch for DDC and E-DDC

Changes from V3:
Remove switch,and avoid sending of segment data for non E-DDC

Changes from V4:
Fix review comments about space and comment indentation.

Changes from V5:
Compacted the code.

Based on drm-next branch

Shirish S (1):
  drm: edid: add support for E-DDC

 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)



[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread y...@samsung.com
From: Shirish S 

This patch adds support in probing 4 block edid data, for E-DDC.
This is the first test case in CTS, for HDMI compliance.

Changes from V1:
1. Data type of offset adress updated to unsigned short
2. Updated the buf feild of msg[0]

Changes from V2:
Add switch for DDC and E-DDC

Changes from V3:
Remove switch,and avoid sending of segment data for non E-DDC

Changes from V4:
Fix review comments about space and comment indentation.

Changes from V5:
Compacted the code.

Based on drm-next branch

Shirish S (1):
  drm: edid: add support for E-DDC

 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)



[PATCH v6] drm: edid: add support for E-DDC

2012-08-30 Thread y...@samsung.com
From: Shirish S 

The current logic for probing ddc is limited to
2 blocks (256 bytes), this patch adds support
for the 4 block (512) data.

To do this, a single 8-bit segment index is
passed to the display via the I2C address 30h.
Data from the selected segment is then immediately
read via the regular DDC2 address using a repeated
I2C 'START' signal.

Signed-off-by: Shirish S 
Reviewed-by: Jean Delvare 
Reviewed-by: Daniel Vetter 
Reviewed-by: Ville Syrjala 
---
 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index bcc4725..7f62de5 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -254,6 +254,8 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, unsigned 
char *buf,
  int block, int len)
 {
unsigned char start = block * EDID_LENGTH;
+   unsigned char segment = block >> 1;
+   unsigned char xfers = segment ? 3 : 2;
int ret, retries = 5;

/* The core i2c driver will automatically retry the transfer if the
@@ -265,6 +267,11 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
do {
struct i2c_msg msgs[] = {
{
+   .addr   = DDC_SEGMENT_ADDR,
+   .flags  = 0,
+   .len= 1,
+   .buf= &segment,
+   }, {
.addr   = DDC_ADDR,
.flags  = 0,
.len= 1,
@@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
.buf= buf,
}
};
-   ret = i2c_transfer(adapter, msgs, 2);
+
+   /*
+* Avoid sending the segment addr to not upset non-compliant ddc
+* monitors.
+*/
+   ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
+
if (ret == -ENXIO) {
DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
adapter->name);
break;
}
-   } while (ret != 2 && --retries);
+   } while (ret != xfers && --retries);

-   return ret == 2 ? 0 : -1;
+   return ret == xfers ? 0 : -1;
 }

 static bool drm_edid_is_zero(u8 *in_edid, int length)
-- 
1.7.0.4



[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Shirish S
This patch adds support in probing 4 block edid data, for E-DDC.
This is the first test case in CTS, for HDMI compliance.

Changes from V1:
1. Data type of offset adress updated to unsigned short
2. Updated the buf feild of msg[0]

Changes from V2:
Add switch for DDC and E-DDC

Changes from V3:
Remove switch,and avoid sending of segment data for non E-DDC

Changes from V4:
Fix review comments about space and comment indentation.

Changes from V5:
Compacted the code.

Based on drm-next branch

Shirish S (1):
  drm: edid: add support for E-DDC

 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)



[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Shirish S
The current logic for probing ddc is limited to
2 blocks (256 bytes), this patch adds support
for the 4 block (512) data.

To do this, a single 8-bit segment index is
passed to the display via the I2C address 30h.
Data from the selected segment is then immediately
read via the regular DDC2 address using a repeated
I2C 'START' signal.

Signed-off-by: Shirish S 
Reviewed-by: Jean Delvare 
Reviewed-by: Daniel Vetter 
Reviewed-by: Ville Syrjala 
---
 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index bcc4725..7f62de5 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -254,6 +254,8 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, unsigned 
char *buf,
  int block, int len)
 {
unsigned char start = block * EDID_LENGTH;
+   unsigned char segment = block >> 1;
+   unsigned char xfers = segment ? 3 : 2;
int ret, retries = 5;

/* The core i2c driver will automatically retry the transfer if the
@@ -265,6 +267,11 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
do {
struct i2c_msg msgs[] = {
{
+   .addr   = DDC_SEGMENT_ADDR,
+   .flags  = 0,
+   .len= 1,
+   .buf= &segment,
+   }, {
.addr   = DDC_ADDR,
.flags  = 0,
.len= 1,
@@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
.buf= buf,
}
};
-   ret = i2c_transfer(adapter, msgs, 2);
+
+   /*
+* Avoid sending the segment addr to not upset non-compliant ddc
+* monitors.
+*/
+   ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
+
if (ret == -ENXIO) {
DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
adapter->name);
break;
}
-   } while (ret != 2 && --retries);
+   } while (ret != xfers && --retries);

-   return ret == 2 ? 0 : -1;
+   return ret == xfers ? 0 : -1;
 }

 static bool drm_edid_is_zero(u8 *in_edid, int length)
-- 
1.7.0.4



[PATCH] drm: edid: add support for E-DDC

2012-08-30 Thread y...@samsung.com
From: Shirish S 

The current logic for probing ddc is limited to
2 blocks (256 bytes), this patch adds support
for the 4 block (512) data.

To do this, a single 8-bit segment index is
passed to the display via the I2C address 30h.
Data from the selected segment is then immediately
read via the regular DDC2 address using a repeated
I2C 'START' signal.

Signed-off-by: Shirish S 
Reviewed-by: Jean Delvare 
Reviewed-by: Daniel Vetter 
Reviewed-by: Ville Syrjala 
---
 drivers/gpu/drm/drm_edid.c |   19 ---
 1 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index bcc4725..7f62de5 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -254,6 +254,8 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, unsigned 
char *buf,
  int block, int len)
 {
unsigned char start = block * EDID_LENGTH;
+   unsigned char segment = block >> 1;
+   unsigned char xfers = segment ? 3 : 2;
int ret, retries = 5;

/* The core i2c driver will automatically retry the transfer if the
@@ -265,6 +267,11 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
do {
struct i2c_msg msgs[] = {
{
+   .addr   = DDC_SEGMENT_ADDR,
+   .flags  = 0,
+   .len= 1,
+   .buf= &segment,
+   }, {
.addr   = DDC_ADDR,
.flags  = 0,
.len= 1,
@@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
unsigned char *buf,
.buf= buf,
}
};
-   ret = i2c_transfer(adapter, msgs, 2);
+
+   /*
+* Avoid sending the segment addr to not upset non-compliant ddc
+* monitors.
+*/
+   ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
+
if (ret == -ENXIO) {
DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
adapter->name);
break;
}
-   } while (ret != 2 && --retries);
+   } while (ret != xfers && --retries);

-   return ret == 2 ? 0 : -1;
+   return ret == xfers ? 0 : -1;
 }

 static bool drm_edid_is_zero(u8 *in_edid, int length)
-- 
1.7.0.4



[PATCH] drm/radeon: fix dig encoder selection on DCE61

2012-08-30 Thread Michel Dänzer
On Mit, 2012-08-29 at 20:02 -0400, alexdeucher at gmail.com wrote: 
> From: Alex Deucher 
> 
> Was using the DCE41 code which was wrong. Fixes
> blank displays on a number of Trinity systems.
> 
> Signed-off-by: Alex Deucher 
> Cc: stable at vger.kernel.org
> ---
>  drivers/gpu/drm/radeon/atombios_encoders.c |   31 +++
>  1 files changed, 26 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c 
> b/drivers/gpu/drm/radeon/atombios_encoders.c
> index 4a7f95e..6e8803a 100644
> --- a/drivers/gpu/drm/radeon/atombios_encoders.c
> +++ b/drivers/gpu/drm/radeon/atombios_encoders.c
> @@ -1769,13 +1769,34 @@ static int radeon_atom_pick_dig_encoder(struct 
> drm_encoder *encoder)
>   struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc);
>   struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
>   struct drm_encoder *test_encoder;
> - struct radeon_encoder_atom_dig *dig;
> + struct radeon_encoder_atom_dig *dig = radeon_encoder->enc_priv;
>   uint32_t dig_enc_in_use = 0;
>  
> - /* DCE4/5 */
> - if (ASIC_IS_DCE4(rdev)) {
> - dig = radeon_encoder->enc_priv;
> - if (ASIC_IS_DCE41(rdev)) {
> + if (ASIC_IS_DCE6(rdev)) {
> + /* DCE6 */
> + switch (radeon_encoder->encoder_id) {
> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
> + if (dig->linkb)
> + return 1;
> + else
> + return 0;
> + break;
> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
> + if (dig->linkb)
> + return 3;
> + else
> + return 2;
> + break;
> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
> + if (dig->linkb)
> + return 5;
> + else
> + return 4;
> + break;
> + }
> + } else if (ASIC_IS_DCE4(rdev)) {
> + /* DCE4/5 */
> + if (ASIC_IS_DCE41(rdev) && !ASIC_IS_DCE61(rdev)) {

The !ASIC_IS_DCE61(rdev) seems redundant here. Either way though,

Reviewed-by: Michel D?nzer 


-- 
Earthling Michel D?nzer   |   http://www.amd.com
Libre software enthusiast |  Debian, X and DRI developer


drm_vm.c: many arches equate remap_pfn_range() and io_remap_pfn_range()

2012-08-30 Thread Sascha Hauer
On Wed, Aug 29, 2012 at 06:29:53PM -0400, Robert P. J. Day wrote:
> 
>   a pedantic observation, you can do with it what you wish (i'm not a
> list subscriber).  in drivers/gpu/drm/drm_vm.c, we read (line 629):
> 
> #if !defined(__arm__)
> if (io_remap_pfn_range(vma, vma->vm_start,
>(map->offset + offset) >> PAGE_SHIFT,
>vma->vm_end - vma->vm_start,
>vma->vm_page_prot))
> return -EAGAIN;
> #else
> if (remap_pfn_range(vma, vma->vm_start,
> (map->offset + offset) >> PAGE_SHIFT,
> vma->vm_end - vma->vm_start,
> vma->vm_page_prot))
> return -EAGAIN;
> #endif

This code goes down to:

commit 4b7fb9b5746554d460e7bc986341d4b2db01e0b6
Author: Jordan Crouse 
Date:   Thu May 27 13:40:26 2010 -0600

drm: Add __arm defines to DRM

Add __arm defines to specify behavior specific for
an ARM processor.

Signed-off-by: Jordan Crouse 
Signed-off-by: Dave Airlie 

Even at that time io_remap_pfn_range on arm was defined as:

> 
> #define io_remap_pfn_range(vma,from,pfn,size,prot) \
> remap_pfn_range(vma, from, pfn, size, prot)
> 
> so it's not clear what the preprocessor test is for.  admittedly, it
> should work, it just seems unnecessary.  and it makes the code more
> confusing than it needs to be, but perhaps i've just misread
> something.

I agree that this shouldn't be necessary.

Sascha


-- 
Pengutronix e.K.   | |
Industrial Linux Solutions | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0|
Amtsgericht Hildesheim, HRA 2686   | Fax:   +49-5121-206917- |


-next queue and EDID stuff

2012-08-30 Thread Daniel Vetter
On Thu, Aug 30, 2012 at 12:23:43AM -0500, Ian Pilcher wrote:
> On 08/29/2012 04:38 PM, Adam Jackson wrote:
> > So to me, that says that drivers need to ask _both_ whether the monitor
> > supports audio and whether it's HDMI before sending HDMI-specific audio
> > signalling.
> 
> OK, so the burden is on the individual drivers.
> 
> In terms of moving forward with the rest of the EDID quirk stuff, are
> you OK with either of these options:
> 
> * Remove EDID_QUIRK_NO_AUDIO from the flags for the LG L246WP.  It won't
>   work "out of the box" with the Intel driver until that driver is
>   fixed to not send audio InfoFrames to non-HDMI displays (but anyone
>   who has the combination will be able to add their own quirk to make
>   it work).
> 
> * Leave both flags, because both are accurate.  The display is confused
>   by any InfoFrames (audio or AVI), and it is reporting non-existent
>   audio capabilities.  The fact that the combination of the two flags
>   makes the display work with Intel GPUs is a happy/sad/neutral
>   accident, and the driver's behavior is still considered broken.
> 
>   (Essentially, this would mean just editing the comments to reflect the
>   above reasoning.)
> 
> If needed, I can easily create a new patch for either option.  Just let
> me know.

I've decided that simply fixing the intel driver is easier. Patch on it's
way, please test.

Thanks, Daniel
-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48


[PATCH] drm/i915/hdmi: only enable audio if there's a hdmi sink

2012-08-30 Thread Daniel Vetter
Some monitors totally don't like to receive infoframes, and naturally
don't claim to support hdmi.

But for some odd reason they've added a CEA block to their edid,
which automatically gives you basic audio. Still, we may not send
out hdmi infoframes to them, hence check whether the sink is indeed
hdmi capable.

Also kill a stale comment while at it.

References: http://www.mail-archive.com/dri-devel at 
lists.freedesktop.org/msg26765.html
Cc: Adam Jackson 
Cc: Ian Pilcher 
Cc: stable at vger.kernel.org
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/i915/intel_hdmi.c |   14 --
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
b/drivers/gpu/drm/i915/intel_hdmi.c
index e4c37bb..7d35367 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -735,7 +735,11 @@ intel_hdmi_detect(struct drm_connector *connector, bool 
force)
if (intel_hdmi->force_audio != HDMI_AUDIO_OFF_DVI)
intel_hdmi->has_hdmi_sink =
drm_detect_hdmi_monitor(edid);
-   intel_hdmi->has_audio = drm_detect_monitor_audio(edid);
+
+   /* We are only allowed to send audio and audio related
+* infoframes if it's an hdmi monitor. */
+   intel_hdmi->has_audio = intel_hdmi->has_hdmi_sink &&
+   drm_detect_monitor_audio(edid);
}
connector->display_info.raw_edid = NULL;
kfree(edid);
@@ -755,10 +759,6 @@ static int intel_hdmi_get_modes(struct drm_connector 
*connector)
struct intel_hdmi *intel_hdmi = intel_attached_hdmi(connector);
struct drm_i915_private *dev_priv = connector->dev->dev_private;

-   /* We should parse the EDID data and find out if it's an HDMI sink so
-* we can send audio to it.
-*/
-
return intel_ddc_get_modes(connector,
   intel_gmbus_get_adapter(dev_priv,
   
intel_hdmi->ddc_bus));
@@ -783,7 +783,9 @@ intel_hdmi_detect_audio(struct drm_connector *connector)
kfree(edid);
}

-   return has_audio;
+   /* We are only allowed to send audio and audio related
+* infoframes if it's an hdmi monitor. */
+   return intel_hdmi->has_hdmi_sink && has_audio;
 }

 static int
-- 
1.7.10.4



[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=54230

--- Comment #4 from Thomas Rohloff  2012-08-30 08:54:22 
UTC ---
As the video is to big for an attachment here's a link:
https://vimeo.com/48479243
It shows Minecraft in-game.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 40562] Shutting down X/KDE sometimes leads to kernel crash on kernel-3.0.1-rc1 with radeon/kms

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=40562


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||alan at lxorguk.ukuu.org.uk
 Resolution||INSUFFICIENT_DATA




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 40622] [radeon] - kms wrong resolution mode used after backlight on/off switch

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=40622


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||alan at lxorguk.ukuu.org.uk
 Resolution||OBSOLETE




--- Comment #14 from Alex Deucher   2011-08-08 
16:28:15 ---
No worries, it can get confusing.  Unfortunately, I'm not that familiar with
how each desktop environment handles hotkeys.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 42412] nouveau regression in 3.1-rc4

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42412


Alan  changed:

   What|Removed |Added

 CC||alan at lxorguk.ukuu.org.uk




--- Comment #1 from Alan   2012-08-30 09:51:05 ---
Is this still present in 3.4/3.5 ?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 41732] [radeon] KMS (and X.org) detect wrong outputs

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=41732


Alan  changed:

   What|Removed |Added

 Status|NEW |NEEDINFO
 CC||alan at lxorguk.ukuu.org.uk




--- Comment #10 from Alan   2012-08-30 10:48:35 ---
Is this problem still seen ?

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


drm_vm.c: many arches equate remap_pfn_range() and io_remap_pfn_range()

2012-08-30 Thread Robert P. J. Day
On Thu, 30 Aug 2012, Sascha Hauer wrote:

> On Wed, Aug 29, 2012 at 06:29:53PM -0400, Robert P. J. Day wrote:
> >
> >   a pedantic observation, you can do with it what you wish (i'm not a
> > list subscriber).  in drivers/gpu/drm/drm_vm.c, we read (line 629):
> >
> > #if !defined(__arm__)
> > if (io_remap_pfn_range(vma, vma->vm_start,
> >(map->offset + offset) >> PAGE_SHIFT,
> >vma->vm_end - vma->vm_start,
> >vma->vm_page_prot))
> > return -EAGAIN;
> > #else
> > if (remap_pfn_range(vma, vma->vm_start,
> > (map->offset + offset) >> 
> > PAGE_SHIFT,
> > vma->vm_end - vma->vm_start,
> > vma->vm_page_prot))
> > return -EAGAIN;
> > #endif
>
> This code goes down to:
>
> commit 4b7fb9b5746554d460e7bc986341d4b2db01e0b6
> Author: Jordan Crouse 
> Date:   Thu May 27 13:40:26 2010 -0600
>
> drm: Add __arm defines to DRM
>
> Add __arm defines to specify behavior specific for
> an ARM processor.
>
> Signed-off-by: Jordan Crouse 
> Signed-off-by: Dave Airlie 
>
> Even at that time io_remap_pfn_range on arm was defined as:
>
> >
> > #define io_remap_pfn_range(vma,from,pfn,size,prot) \
> > remap_pfn_range(vma, from, pfn, size, prot)
> >
> > so it's not clear what the preprocessor test is for.  admittedly, it
> > should work, it just seems unnecessary.  and it makes the code more
> > confusing than it needs to be, but perhaps i've just misread
> > something.
>
> I agree that this shouldn't be necessary.

  for simplicity, i can submit a patch that just does a straight call
to remap_pfn_range(), unless someone can recognize something really
subtle happening here.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday



[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Ville Syrjälä
On Thu, Aug 30, 2012 at 12:34:06PM +0530, Shirish S wrote:
> @@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter, 
> unsigned char *buf,
>   .buf= buf,
>   }
>   };
> - ret = i2c_transfer(adapter, msgs, 2);
> +
> + /*
> +  * Avoid sending the segment addr to not upset non-compliant ddc
> +  * monitors.
> +  */

Indentation is still wrong. Or is it gettimg mangled by some email server?

> + ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
> +
>   if (ret == -ENXIO) {
>   DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
>   adapter->name);
>   break;
>   }
> - } while (ret != 2 && --retries);
> + } while (ret != xfers && --retries);
>  
> - return ret == 2 ? 0 : -1;
> + return ret == xfers ? 0 : -1;
>  }
>  
>  static bool drm_edid_is_zero(u8 *in_edid, int length)

-- 
Ville Syrj?l?
Intel OTC


drm_vm.c: many arches equate remap_pfn_range() and io_remap_pfn_range()

2012-08-30 Thread Robert P. J. Day
On Thu, 30 Aug 2012, Robert P. J. Day wrote:

> On Thu, 30 Aug 2012, Sascha Hauer wrote:
>
> > On Wed, Aug 29, 2012 at 06:29:53PM -0400, Robert P. J. Day wrote:
> > >
> > >   a pedantic observation, you can do with it what you wish (i'm not a
> > > list subscriber).  in drivers/gpu/drm/drm_vm.c, we read (line 629):
> > >
> > > #if !defined(__arm__)
> > > if (io_remap_pfn_range(vma, vma->vm_start,
> > >(map->offset + offset) >> 
> > > PAGE_SHIFT,
> > >vma->vm_end - vma->vm_start,
> > >vma->vm_page_prot))
> > > return -EAGAIN;
> > > #else
> > > if (remap_pfn_range(vma, vma->vm_start,
> > > (map->offset + offset) >> 
> > > PAGE_SHIFT,
> > > vma->vm_end - vma->vm_start,
> > > vma->vm_page_prot))
> > > return -EAGAIN;
> > > #endif
> >
> > This code goes down to:
> >
> > commit 4b7fb9b5746554d460e7bc986341d4b2db01e0b6
> > Author: Jordan Crouse 
> > Date:   Thu May 27 13:40:26 2010 -0600
> >
> > drm: Add __arm defines to DRM
> >
> > Add __arm defines to specify behavior specific for
> > an ARM processor.
> >
> > Signed-off-by: Jordan Crouse 
> > Signed-off-by: Dave Airlie 
> >
> > Even at that time io_remap_pfn_range on arm was defined as:
> >
> > >
> > > #define io_remap_pfn_range(vma,from,pfn,size,prot) \
> > > remap_pfn_range(vma, from, pfn, size, prot)
> > >
> > > so it's not clear what the preprocessor test is for.  admittedly, it
> > > should work, it just seems unnecessary.  and it makes the code more
> > > confusing than it needs to be, but perhaps i've just misread
> > > something.
> >
> > I agree that this shouldn't be necessary.
>
>   for simplicity, i can submit a patch that just does a straight call
> to remap_pfn_range(), unless someone can recognize something really
> subtle happening here.

  sorry, that should have been a straight call to io_remap_pfn_range()
since that is the call invoked for all but ARM.  i'll post a patch
shortly and someone else can decide whether or not to apply it.

rday

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday



[PATCH] DRM DRIVERS: Remove unnecessary test for ARM.

2012-08-30 Thread Robert P. J. Day

Since arch/arm/include/asm/pgtable.h contains:

#define io_remap_pfn_range(vma,from,pfn,size,prot) \
remap_pfn_range(vma, from, pfn, size, prot)

there is no point treating ARM as a special case in distinguishing
between remap_pfn_range() and io_remap_pfn_range().

Signed-off-by: Robert P. J. Day 

---

diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index 961ee08..34e6503 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -619,20 +619,11 @@ int drm_mmap_locked(struct file *filp, struct 
vm_area_struct *vma)
offset = drm_core_get_reg_ofs(dev);
vma->vm_flags |= VM_IO; /* not in core dump */
vma->vm_page_prot = drm_io_prot(map->type, vma);
-#if !defined(__arm__)
if (io_remap_pfn_range(vma, vma->vm_start,
   (map->offset + offset) >> PAGE_SHIFT,
   vma->vm_end - vma->vm_start,
   vma->vm_page_prot))
return -EAGAIN;
-#else
-   if (remap_pfn_range(vma, vma->vm_start,
-   (map->offset + offset) >> PAGE_SHIFT,
-   vma->vm_end - vma->vm_start,
-   vma->vm_page_prot))
-   return -EAGAIN;
-#endif
-
DRM_DEBUG("   Type = %d; start = 0x%lx, end = 0x%lx,"
  " offset = 0x%llx\n",
  map->type,

-- 


Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:   http://twitter.com/rpjday
LinkedIn:   http://ca.linkedin.com/in/rpjday



[PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Daniel Vetter
We've had and still have too many issues where the gpu turbot doesn't
quite to what it's supposed to do (or what we want it to do).

Adding a tracepoint to track when the desired gpu frequence changes
should help a lot in characterizing and understanding problematic
workloads.

Also, this should be fairly interesting for power tuning (and
especially noticing when the gpu is stuck in high frequencies, as has
happened in the past) and hence for integration into powertop and
similar tools.

Cc: Arjan van de Ven 
Signed-off-by: Daniel Vetter 
---
 drivers/gpu/drm/i915/i915_trace.h |   15 +++
 drivers/gpu/drm/i915/intel_pm.c   |2 ++
 2 files changed, 17 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_trace.h 
b/drivers/gpu/drm/i915/i915_trace.h
index 3c4093d..8134421 100644
--- a/drivers/gpu/drm/i915/i915_trace.h
+++ b/drivers/gpu/drm/i915/i915_trace.h
@@ -430,6 +430,21 @@ TRACE_EVENT(i915_reg_rw,
(u32)(__entry->val >> 32))
 );

+TRACE_EVENT(intel_gpu_freq_change,
+   TP_PROTO(u32 freq),
+   TP_ARGS(freq),
+
+   TP_STRUCT__entry(
+__field(u32, freq)
+),
+
+   TP_fast_assign(
+  __entry->freq = freq;
+  ),
+
+   TP_printk("new_freq=%u", __entry->freq)
+);
+
 #endif /* _I915_TRACE_H_ */

 /* This part must be outside protection */
diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index ebe3498..194a72f 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -2343,6 +2343,8 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
I915_WRITE(GEN6_RP_INTERRUPT_LIMITS, limits);

dev_priv->rps.cur_delay = val;
+
+   trace_intel_gpu_freq_change(val * 50);
 }

 static void gen6_disable_rps(struct drm_device *dev)
-- 
1.7.10.4



udl vs udlfb and EDID trouble

2012-08-30 Thread Tvrtko Ursulin

Hi all,

I've been playing with some DisplayLink adapters, six of them to be precise
connected to six identical HDMI monitors.

Under kernel 3.5 things did not really work for me apparently because of the
udl driver's inability to fetch EDID. Interestingly, logged EDID blocks were
different for each of the six monitors which suggests a serious bug somewhere.

I've then went to see if I can load my own EDID, because I remember doing it
via /sys/class/graphics/fb?/edid before, but that file was not there. 
(Is it possible to override EDID with the udl driver?)

To cut the long story short, I figured out there are two drivers for this
hardware. Fedora based 3.5 kernel builds and uses udl, while the older 3.3.2
I played with before builds and uses udlfb. (Why two drivers?)

Now going back to 3.3.2 and udlfb, EDID got correctly fetched from all six
monitors.

Udlfb seems the EDID like this:

 # hexdump /sys/class/graphics/fb1/edid -C
  00 ff ff ff ff ff ff 00  4c 2d 02 09 00 00 00 00  |L-..|
0010  29 15 01 03 80 29 17 78  0a ee 91 a3 54 4c 99 26  |)).xTL.&|
0020  0f 50 54 bd ef 80 71 4f  81 c0 81 00 81 80 95 00  |.PT...qO|
0030  a9 c0 b3 00 01 01 02 3a  80 18 71 38 2d 40 58 2c  |...:..q8- at 
X,|
0040  45 00 a0 5a 00 00 00 1e  66 21 56 aa 51 00 1e 30  |E..Zf!V.Q..0|
0050  46 8f 33 00 a0 5a 00 00  00 1e 00 00 00 fd 00 18  |F.3..Z..|
0060  4b 0f 51 17 00 0a 20 20  20 20 20 20 00 00 00 fc  |K.Q...  |
0070  00 53 41 4d 53 55 4e 47  0a 20 20 20 20 20 01 f1  |.SAMSUNG. ..|
0080

Below are the corrupt EDID blocks udl under 3.5 was getting. It's a lot of
text but someone perhaps will be able to infer something from them.

2012-08-29T16:53:00.048995+01:00 kernel[] info:[   18.343314] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.048999+01:00 kernel[] err:[   18.362643] 
[drm:drm_edid_block_valid] *ERROR* EDID checksum is invalid, remainder is 199
2012-08-29T16:53:00.049008+01:00 kernel[] err:[   18.362655] Raw EDID:
2012-08-29T16:53:00.049014+01:00 kernel[] err:[   18.362662]00 40 39 a0 ff 
ff ff ff 00 70 41 a0 ff ff ff ff
2012-08-29T16:53:00.049017+01:00 kernel[] err:[   18.362667]04 00 00 00 00 
00 00 00 99 a9 77 61 00 88 ff ff
2012-08-29T16:53:00.049020+01:00 kernel[] err:[   18.362672]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049024+01:00 kernel[] err:[   18.362677]b0 a9 77 61 00 
88 ff ff 30 95 6c 60 00 88 ff ff
2012-08-29T16:53:00.049101+01:00 kernel[] err:[   18.362681]7f 45 4c 46 02 
01 01 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049105+01:00 kernel[] err:[   18.362686]40 a6 c3 62 00 
88 ff ff e0 16 00 00 00 00 00 00
2012-08-29T16:53:00.049108+01:00 kernel[] err:[   18.362690]40 00 00 00 00 
00 00 00 58 82 02 00 00 00 00 00
2012-08-29T16:53:00.049119+01:00 kernel[] err:[   18.362695]00 00 00 00 40 
00 38 00 07 00 40 00 1c 00 1b 00
2012-08-29T16:53:00.049124+01:00 kernel[] warning:[   18.362707] usb 2-1.2: 
DVI-I-1: EDID invalid.
2012-08-29T16:53:00.049126+01:00 kernel[] info:[   18.364581] fb1: udldrmfb 
frame buffer device
2012-08-29T16:53:00.049130+01:00 kernel[] info:[   18.364594] [drm] Initialized 
udl 0.0.1 20120220 on minor 1
2012-08-29T16:53:00.049133+01:00 kernel[] info:[   18.365388] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.049136+01:00 kernel[] err:[   18.421823] Raw EDID:
2012-08-29T16:53:00.049139+01:00 kernel[] err:[   18.421842]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049142+01:00 kernel[] err:[   18.421848]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049152+01:00 kernel[] err:[   18.421853]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049157+01:00 kernel[] err:[   18.421857]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049160+01:00 kernel[] err:[   18.421862]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049163+01:00 kernel[] err:[   18.421866]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049167+01:00 kernel[] err:[   18.421871]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049170+01:00 kernel[] err:[   18.421875]00 00 00 00 00 
00 00 00 00 00 00 00 00 00 00 00
2012-08-29T16:53:00.049173+01:00 kernel[] warning:[   18.421889] usb 2-1.3: 
DVI-I-2: EDID invalid.
2012-08-29T16:53:00.049182+01:00 kernel[] info:[   18.424921] fb2: udldrmfb 
frame buffer device
2012-08-29T16:53:00.049187+01:00 kernel[] info:[   18.424987] [drm] Initialized 
udl 0.0.1 20120220 on minor 2
2012-08-29T16:53:00.049190+01:00 kernel[] info:[   18.428455] [drm] vendor 
descriptor length:2e data:2e 5f 01 002c 00 04 04 01 00 03
2012-08-29T16:53:00.049193+01:00 kernel[] err:[   18.491450] Raw EDID:
2012-08-29T16:53:00.049196+01:00 kernel[] err:[   18.491469]00 00 00 00 00 
00 00 

[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=54230

Tom Stellard  changed:

   What|Removed |Added

Product|DRI |Mesa
Version|XOrg CVS|git
  Component|DRM/Radeon  |Drivers/Gallium/r600

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 54230] r600-llvm-compiler completely broken at CAYMAN

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=54230

--- Comment #5 from Tom Stellard  2012-08-30 13:13:28 
UTC ---
The llvm backend hasn't been tested much on Cayman, so probably some of the
Cayman specific features aren't working correctly. Could you set the
environment variable R600_DUMP_SHADERS=1 and then post the debug output from
compiz and minecraft?

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 42182] Screen brightness is still set to MINIMUM and am unable to change it

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42182


Alan  changed:

   What|Removed |Added

 CC||alan at lxorguk.ukuu.org.uk
  Component|x86-64  |Video(DRI - non Intel)
 AssignedTo|platform_x86_64 at kernel-bugs |drivers_video-dri at 
kernel-bu
   |.osdl.org   |gs.osdl.org
Product|Platform Specific/Hardware  |Drivers




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[PATCH] drm/radeon: fix dig encoder selection on DCE61

2012-08-30 Thread Alex Deucher
On Thu, Aug 30, 2012 at 2:27 AM, Michel D?nzer  wrote:
> On Mit, 2012-08-29 at 20:02 -0400, alexdeucher at gmail.com wrote:
>> From: Alex Deucher 
>>
>> Was using the DCE41 code which was wrong. Fixes
>> blank displays on a number of Trinity systems.
>>
>> Signed-off-by: Alex Deucher 
>> Cc: stable at vger.kernel.org
>> ---
>>  drivers/gpu/drm/radeon/atombios_encoders.c |   31 
>> +++
>>  1 files changed, 26 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/radeon/atombios_encoders.c 
>> b/drivers/gpu/drm/radeon/atombios_encoders.c
>> index 4a7f95e..6e8803a 100644
>> --- a/drivers/gpu/drm/radeon/atombios_encoders.c
>> +++ b/drivers/gpu/drm/radeon/atombios_encoders.c
>> @@ -1769,13 +1769,34 @@ static int radeon_atom_pick_dig_encoder(struct 
>> drm_encoder *encoder)
>>   struct radeon_crtc *radeon_crtc = to_radeon_crtc(encoder->crtc);
>>   struct radeon_encoder *radeon_encoder = to_radeon_encoder(encoder);
>>   struct drm_encoder *test_encoder;
>> - struct radeon_encoder_atom_dig *dig;
>> + struct radeon_encoder_atom_dig *dig = radeon_encoder->enc_priv;
>>   uint32_t dig_enc_in_use = 0;
>>
>> - /* DCE4/5 */
>> - if (ASIC_IS_DCE4(rdev)) {
>> - dig = radeon_encoder->enc_priv;
>> - if (ASIC_IS_DCE41(rdev)) {
>> + if (ASIC_IS_DCE6(rdev)) {
>> + /* DCE6 */
>> + switch (radeon_encoder->encoder_id) {
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
>> + if (dig->linkb)
>> + return 1;
>> + else
>> + return 0;
>> + break;
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY1:
>> + if (dig->linkb)
>> + return 3;
>> + else
>> + return 2;
>> + break;
>> + case ENCODER_OBJECT_ID_INTERNAL_UNIPHY2:
>> + if (dig->linkb)
>> + return 5;
>> + else
>> + return 4;
>> + break;
>> + }
>> + } else if (ASIC_IS_DCE4(rdev)) {
>> + /* DCE4/5 */
>> + if (ASIC_IS_DCE41(rdev) && !ASIC_IS_DCE61(rdev)) {
>
> The !ASIC_IS_DCE61(rdev) seems redundant here. Either way though,
>

whoops, yes, it is.  I was considering whether to add a !DCE61 check
or a new DCE6 section and decided the latter was cleaner, but never
removed the other check.  Oh well.  I'll clean it up later.  Thanks!

> Reviewed-by: Michel D?nzer 
>
>
> --
> Earthling Michel D?nzer   |   http://www.amd.com
> Libre software enthusiast |  Debian, X and DRI developer


[Intel-gfx] [PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Chris Wilson
On Thu, 30 Aug 2012 13:26:48 +0200, Daniel Vetter  
wrote:
> We've had and still have too many issues where the gpu turbot doesn't
> quite to what it's supposed to do (or what we want it to do).
> 
> Adding a tracepoint to track when the desired gpu frequence changes
> should help a lot in characterizing and understanding problematic
> workloads.
> 
> Also, this should be fairly interesting for power tuning (and
> especially noticing when the gpu is stuck in high frequencies, as has
> happened in the past) and hence for integration into powertop and
> similar tools.
> 
> Cc: Arjan van de Ven 
> Signed-off-by: Daniel Vetter 

Like it, even the naming scheme.
Reviewed-by: Chris Wilson 
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


[Bug 42182] Screen brightness is still set to MINIMUM and am unable to change it

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42182


Alex Deucher  changed:

   What|Removed |Added

 CC||alexdeucher at gmail.com




--- Comment #1 from Alex Deucher   2012-08-30 
13:46:33 ---
Is this still an issue with a newer kernel?  Make sure your kernel has the acpi
backlight controls included.  My drm-next queue for 3.7 has support for native
backlight control (assuming the OEM uses the on chip backlight controller) if
you can't get the acpi backlight controls working.

http://cgit.freedesktop.org/~agd5f/linux/log/?h=drm-next-3.7-wip

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[PATCH] drm/i915: add a tracepoint for gpu frequency changes

2012-08-30 Thread Paul Menzel
Am Donnerstag, den 30.08.2012, 13:26 +0200 schrieb Daniel Vetter:
> We've had and still have too many issues where the gpu turbot doesn't

s,turbot,turbo,

> quite to what it's supposed to do (or what we want it to do).

s,to,do,

> Adding a tracepoint to track when the desired gpu frequence changes

frequenc*y*

> should help a lot in characterizing and understanding problematic
> workloads.
> 
> Also, this should be fairly interesting for power tuning (and
> especially noticing when the gpu is stuck in high frequencies, as has
> happened in the past) and hence for integration into powertop and
> similar tools.

If this can be used from user space already, it would be nice to add
some notes to the commit how this can be done.

> Cc: Arjan van de Ven 
> Signed-off-by: Daniel Vetter 
> ---
>  drivers/gpu/drm/i915/i915_trace.h |   15 +++
>  drivers/gpu/drm/i915/intel_pm.c   |2 ++
>  2 files changed, 17 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_trace.h 
> b/drivers/gpu/drm/i915/i915_trace.h
> index 3c4093d..8134421 100644
> --- a/drivers/gpu/drm/i915/i915_trace.h
> +++ b/drivers/gpu/drm/i915/i915_trace.h
> @@ -430,6 +430,21 @@ TRACE_EVENT(i915_reg_rw,
>   (u32)(__entry->val >> 32))
>  );
>  
> +TRACE_EVENT(intel_gpu_freq_change,
> + TP_PROTO(u32 freq),
> + TP_ARGS(freq),
> +
> + TP_STRUCT__entry(
> +  __field(u32, freq)
> +  ),
> +
> + TP_fast_assign(
> +__entry->freq = freq;
> +),
> +
> + TP_printk("new_freq=%u", __entry->freq)
> +);
> +
>  #endif /* _I915_TRACE_H_ */
>  
>  /* This part must be outside protection */
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index ebe3498..194a72f 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -2343,6 +2343,8 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>   I915_WRITE(GEN6_RP_INTERRUPT_LIMITS, limits);
>  
>   dev_priv->rps.cur_delay = val;
> +
> + trace_intel_gpu_freq_change(val * 50);
>  }
>  
>  static void gen6_disable_rps(struct drm_device *dev)

Acked-by: Paul Menzel 


Thanks,

Paul
-- next part --
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: 
<http://lists.freedesktop.org/archives/dri-devel/attachments/20120830/c9b304cb/attachment.pgp>


[RFC] New dma_buf -> EGLImage EGL extension

2012-08-30 Thread Tom Cooksey
Hi All,

Over the last few months I've been working on & off with a few people from
Linaro on a new EGL extension. The extension allows constructing an EGLImage
from a (set of) dma_buf file descriptors, including support for multi-plane
YUV. I envisage the primary use-case of this extension to be importing video
frames from v4l2 into the EGL/GLES graphics driver to texture from.
Originally the intent was to develop this as a Khronos-ratified extension.
However, this is a little too platform-specific to be an officially
sanctioned Khronos extension. It also goes against the general "EGLStream"
direction the EGL working group is going in. As such, the general feeling
was to make this an EXT "multi-vendor" extension with no official stamp of
approval from Khronos. As this is no-longer intended to be a Khronos
extension, I've re-written it to be a lot more Linux & dma_buf specific. It
also allows me to circulate the extension more widely (I.e. To those outside
Khronos membership).

ARM are implementing this extension for at least our Mali-T6xx driver and
likely earlier drivers too. I am sending this e-mail to solicit feedback,
both from other vendors who might implement this extension (Mesa3D?) and
from potential users of the extension. However, any feedback is welcome.
Please find the extension text as it currently stands below. There several
open issues which I've proposed solutions for, but I'm not really happy with
those proposals and hoped others could chip-in with better ideas. There are
likely other issues I've not thought about which also need to be added and
addressed.

Once there's a general consensus or if no-one's interested, I'll update the
spec, move it out of Draft status and get it added to the Khronos registry,
which includes assigning values for the new symbols.


Cheers,

Tom


-8<-


Name

EXT_image_dma_buf_import

Name Strings

EGL_EXT_image_dma_buf_import

Contributors

Jesse Barker
Rob Clark
Tom Cooksey

Contacts

Jesse Barker (jesse 'dot' barker 'at' linaro 'dot' org)
Tom Cooksey (tom 'dot' cooksey 'at' arm 'dot' com)

Status

DRAFT

Version

Version 3, August 16, 2012

Number

EGL Extension ???

Dependencies

EGL 1.2 is required.

EGL_KHR_image_base is required.

The EGL implementation must be running on a Linux kernel supporting the
dma_buf buffer sharing mechanism.

This extension is written against the wording of the EGL 1.2
Specification.

Overview

This extension allows creating an EGLImage from a Linux dma_buf file
descriptor or multiple file descriptors in the case of multi-plane YUV
images.

New Types

None

New Procedures and Functions

None

New Tokens

Accepted by the  parameter of eglCreateImageKHR:

EGL_LINUX_DMA_BUF_EXT

Accepted as an attribute in the  parameter of
eglCreateImageKHR:

EGL_LINUX_DRM_FOURCC_EXT
EGL_DMA_BUF_PLANE0_FD_EXT
EGL_DMA_BUF_PLANE0_OFFSET_EXT
EGL_DMA_BUF_PLANE0_PITCH_EXT
EGL_DMA_BUF_PLANE1_FD_EXT
EGL_DMA_BUF_PLANE1_OFFSET_EXT
EGL_DMA_BUF_PLANE1_PITCH_EXT
EGL_DMA_BUF_PLANE2_FD_EXT
EGL_DMA_BUF_PLANE2_OFFSET_EXT
EGL_DMA_BUF_PLANE2_PITCH_EXT

Additions to Chapter 2 of the EGL 1.2 Specification (EGL Operation)

Add to section 2.5.1 "EGLImage Specification" (as defined by the
EGL_KHR_image_base specification), in the description of
eglCreateImageKHR:

   "Values accepted for  are listed in Table aaa, below.


+-++
  | |  Notes
|

+-++
  |  EGL_LINUX_DMA_BUF_EXT  |   Used for EGLImages imported from Linux
|
  | |   dma_buf file descriptors
|

+-++
   Table aaa.  Legal values for eglCreateImageKHR  parameter

...

If  is EGL_LINUX_DMA_BUF_EXT,  must be a valid display,

must be EGL_NO_CONTEXT, and  must be NULL, cast into the type
EGLClientBuffer. The details of the image is specified by the attributes
passed into eglCreateImageKHR. Required attributes and their values are
as
follows:

* EGL_WIDTH & EGL_HEIGHT: The logical dimensions of the buffer in
pixels

* EGL_LINUX_DRM_FOURCC_EXT: The pixel format of the buffer, as
specified
  by drm_fourcc.h and used as the pixel_format parameter of the
  drm_mode_fb_cmd2 ioctl.

* EGL_DMA_BUF_PLANE0_FD_EXT: The dma_buf file descriptor of plane 0
of
  the image.

* EGL_DMA_BUF_PLANE0_OFFSET_EXT: The offset from the start of the
  dma_buf of the first sample in plane 0, in bytes.

* EGL_DMA_BUF_PLANE0_PITCH_EXT: The number of bytes between the
start of
  subsequent rows of samples in plane 0. May have special meaning
for
  non-linear formats.

Fo

udl vs udlfb and EDID trouble

2012-08-30 Thread Alex Deucher
On Thu, Aug 30, 2012 at 8:24 AM, Tvrtko Ursulin
 wrote:
>
> Hi all,
>
> I've been playing with some DisplayLink adapters, six of them to be precise
> connected to six identical HDMI monitors.
>
> Under kernel 3.5 things did not really work for me apparently because of the
> udl driver's inability to fetch EDID. Interestingly, logged EDID blocks were
> different for each of the six monitors which suggests a serious bug somewhere.
>
> I've then went to see if I can load my own EDID, because I remember doing it
> via /sys/class/graphics/fb?/edid before, but that file was not there.
> (Is it possible to override EDID with the udl driver?)
>
> To cut the long story short, I figured out there are two drivers for this
> hardware. Fedora based 3.5 kernel builds and uses udl, while the older 3.3.2
> I played with before builds and uses udlfb. (Why two drivers?)

udlfb was the original driver.  It's a basic kernel fb driver.  udl is
a drm driver that Dave wrote based on udlfb.  The drm variant will
eventually allow you to hotplug displaylink adapters in X and use
acceleration provided by another GPU.

>
> Now going back to 3.3.2 and udlfb, EDID got correctly fetched from all six
> monitors.

Sounds like a bug in the udl i2c code.  Probably worth comparing the
relevant udl and uldfb code; it may be a simple fix.

Alex


[PATCH] drm/radeon: fix dig encoder selection on DCE61

2012-08-30 Thread Rafał Miłecki
2012/8/30 Alex Deucher :
> On Thu, Aug 30, 2012 at 2:27 AM, Michel D?nzer  wrote:
>> On Mit, 2012-08-29 at 20:02 -0400, alexdeucher at gmail.com wrote:
>>> - /* DCE4/5 */
>>> - if (ASIC_IS_DCE4(rdev)) {
>>> - dig = radeon_encoder->enc_priv;
>>> - if (ASIC_IS_DCE41(rdev)) {
>>> + if (ASIC_IS_DCE6(rdev)) {
>>> + /* DCE6 */

Amazing comment ;)

-- 
Rafa?


[Bug 42672] Nouveau. Screen corruption and occasional gpu lockup

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42672


Alan  changed:

   What|Removed |Added

 CC||alan at lxorguk.ukuu.org.uk
 Kernel Version|3.2.2   |3.3.1




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 42708] drm:radeon_cs_ioctl "Failed to schedule IB" error after s2ram and wakeup

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42708


Alan  changed:

   What|Removed |Added

 CC||alan at lxorguk.ukuu.org.uk
  Component|Video(Other)|Video(DRI - non Intel)
 AssignedTo|drivers_video-other at kernel- |drivers_video-dri at 
kernel-bu
   |bugs.osdl.org   |gs.osdl.org




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 26891] Radeon KMS fails with inaccessible AtomBIOS on systems with (U)EFI boot

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=26891

--- Comment #35 from Alex Deucher  2012-08-30 14:25:55 UTC 
---
(In reply to comment #34)
> Alex,
> Please see the DSDT table from a Macbook Pro booted in EFI mode. Maybe it will
> give you some ideas for extracting the VBIOS.

Sorry, I'm not really much of an ACPI or Mac expert.  I don't see anything
relevant.  IIRC, the vbios on macs is only available in boot services so it's
likely gone by the time the OS is loaded.  You'd probably need the boot loader
to grab it and store a copy somewhere so the OS can access it when it loads. 
I'm not sure how Apple does it.  Someone more familiar with Macs may have some
ideas.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 42787] Video flickers on X1200 / RS690 over DVI

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42787


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||alan at lxorguk.ukuu.org.uk
 Resolution||INSUFFICIENT_DATA




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 42708] drm:radeon_cs_ioctl "Failed to schedule IB" error after s2ram and wakeup

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42708


Dizintegrator  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||PATCH_ALREADY_AVAILABLE




--- Comment #1 from Dizintegrator   2012-08-30 14:43:05 
---
Not reproduceable anymore on kernels 3.4 - 3.5. Closed.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 46711] New: vmwgfx does not work in qemu/kvm

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=46711

   URL: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1
037606
   Summary: vmwgfx does not work in qemu/kvm
   Product: Drivers
   Version: 2.5
Kernel Version: 3.6-rc3
  Platform: All
OS/Version: Linux
  Tree: Mainline
Status: NEW
  Severity: normal
  Priority: P1
 Component: Video(DRI - non Intel)
AssignedTo: drivers_video-dri at kernel-bugs.osdl.org
ReportedBy: hramrach at gmail.com
Regression: No


vmwgfx fails in kvm (running something like kvm -m 2048 -vga vmware -hda
ubuntu.img):


[   29.856068] [drm] Initialized drm 1.1.0 20060810
[   29.905192] [drm] Capabilities:
[   29.905196] [drm]   Rect copy.
[   29.905197] [drm]   Cursor.
[   29.905198] [drm]   Cursor bypass.
[   29.905198] [drm]   Cursor bypass 2.
[   29.905200] [drm] VRAM at 0xfd00 size is 16384 kiB
[   29.905201] [drm] MMIO at 0xfe00 size is 64 kiB
[   29.905203] [drm] global init.
[   29.907091] [TTM] Zone  kernel: Available graphics memory: 1025792 kiB
[   29.907093] [TTM] Initializing pool allocator
[   29.907097] [TTM] Initializing DMA pool allocator
[   29.907432] [drm:vmw_driver_load] *ERROR* Hardware has no pitchlock
[   29.907475] [TTM] Finalizing pool allocator
[   29.907478] [TTM] Finalizing DMA pool allocator
[   29.907494] [TTM] Zone  kernel: Used memory at exit: 0 kiB
[   29.907676] vmwgfx: probe of :00:02.0 failed with error -38

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 42795] Unable to boot with the radeon driver

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=42795


Alan  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||alan at lxorguk.ukuu.org.uk
 Resolution||CODE_FIX




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[PATCH] drm/i915/hdmi: only enable audio if there's a hdmi sink

2012-08-30 Thread Adam Jackson
On 8/30/12 3:44 AM, Daniel Vetter wrote:
> Some monitors totally don't like to receive infoframes, and naturally
> don't claim to support hdmi.
>
> But for some odd reason they've added a CEA block to their edid,
> which automatically gives you basic audio. Still, we may not send
> out hdmi infoframes to them, hence check whether the sink is indeed
> hdmi capable.
>
> Also kill a stale comment while at it.

Does an incomplete version of what it says on the box, you need to hit 
the HDMI code in intel_sdvo.c too.

At which point, should do the obvious bool drm_monitor_has_hdmi_audio() 
in drm_edid.c.

- ajax


[Bug 36072] celestia causes kernel oops when allocation a lot of memory (for textures)

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=36072


aceman  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|OBSOLETE|




--- Comment #8 from aceman   2012-08-30 15:32:57 ---
Yes, still happens randomly, on kernel 3.5.3, X.org 1.12, ati driver 6.99.99,
Mesa git (9.0):

Aug 29 23:46:50 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:47:16 coolbox last message repeated 646 times
Aug 29 23:48:07 coolbox last message repeated 554 times
Aug 29 23:50:15 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:50:41 coolbox last message repeated 6 times
Aug 29 23:50:41 coolbox kernel: vmap allocation for size 178966528 failed: use
vmalloc= to increase size.
Aug 29 23:50:41 coolbox kernel: [drm:radeon_cs_ioctl] *ERROR* Failed to parse
relocation -12!
Aug 29 23:50:49 coolbox last message repeated 131 times
Aug 29 23:50:58 coolbox kernel: [ cut here ]
Aug 29 23:50:58 coolbox kernel: kernel BUG at
drivers/gpu/drm/ttm/ttm_bo.c:1167!
Aug 29 23:50:58 coolbox kernel: invalid opcode:  [#1] SMP
Aug 29 23:50:58 coolbox kernel: Modules linked in: usb_storage autofs4
nf_conntrack_ftp xt_tcpudp xt_owner xt_multiport nf_conntrack_ipv4
nf_defrag_ipv4 xt_state nf_conntrack ipt_REJECT xt_LOG iptable_filter ip
_tables x_tables asus_atk0110 snd_seq_oss snd_seq_midi_event snd_seq
snd_seq_device snd_pcm_oss snd_mixer_oss cx88_blackbird cx2341x cx8802
tuner_simple tuner_types tda9887 tda8290 tea5767 tuner cx8800 cx88xx r
c_core tveeprom v4l2_common videodev videobuf_dma_sg videobuf_core btcx_risc
k10temp forcedeth snd_hda_codec_via snd_hda_intel snd_hda_codec snd_pcm
snd_timer snd soundcore snd_page_alloc i2c_nforce2 ext4 mbcac
he jbd2 crc16 usbhid powernow_k8 mperf ohci_hcd ehci_hcd usbcore usb_common
fuse [last unloaded: microcode]
Aug 29 23:50:58 coolbox kernel:
Aug 29 23:50:58 coolbox kernel: Pid: 19931, comm: celestia Not tainted 2.6.45.3
#93 System manufacturer System Product Name/M2N68
Aug 29 23:50:58 coolbox kernel: EIP: 0060:[] EFLAGS: 00010206 CPU: 3
Aug 29 23:50:58 coolbox kernel: EIP is at ttm_bo_check_placement+0x19/0x20
Aug 29 23:50:58 coolbox kernel: EAX: e1f12c2c EBX: 2aac ECX:  EDX:
0100
Aug 29 23:50:58 coolbox kernel: ESI: ec13c468 EDI: ebbf71c0 EBP: 00021240 ESP:
eaa33d70
Aug 29 23:50:58 coolbox kernel:  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Aug 29 23:50:58 coolbox kernel: CR0: 8005003b CR2: aa634000 CR3: 2afab000 CR4:
07f0
Aug 29 23:50:58 coolbox kernel: DR0:  DR1:  DR2:  DR3:

Aug 29 23:50:58 coolbox kernel: DR6: 0ff0 DR7: 0400
Aug 29 23:50:58 coolbox kernel: Process celestia (pid: 19931, ti=eaa32000
task=ec27a030 task.ti=eaa32000)
Aug 29 23:50:58 coolbox kernel: Stack:
Aug 29 23:50:58 coolbox kernel:  c030b4c9   01aac000 e1f12c2c
e1f12c00 fff4 0001
Aug 29 23:50:58 coolbox kernel:  02aac000 c033bb07  e1f12c14 0001
 0001 
Aug 29 23:50:58 coolbox kernel:  00021240  c033b850 0001 0001
 ec13c468 ec13cd38
Aug 29 23:50:58 coolbox kernel: Call Trace:
Aug 29 23:50:58 coolbox kernel:  [] ? ttm_bo_init+0x179/0x370
Aug 29 23:50:58 coolbox kernel:  [] ? radeon_bo_create+0x197/0x290
Aug 29 23:50:58 coolbox kernel:  [] ? radeon_bo_clear_va+0x80/0x80
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_object_create+0x5c/0xf0
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_create_ioctl+0x66/0xf0
Aug 29 23:50:58 coolbox kernel:  [] ? _copy_from_user+0x33/0x70
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_pwrite_ioctl+0x30/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? drm_ioctl+0x36c/0x3d0
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ?
radeon_gem_pwrite_ioctl+0x30/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? free_pgtables+0x8a/0xb0
Aug 29 23:50:58 coolbox kernel:  [] ? tlb_finish_mmu+0x9/0x30
Aug 29 23:50:58 coolbox kernel:  [] ? drm_copy_field+0x70/0x70
Aug 29 23:50:58 coolbox kernel:  [] ? do_vfs_ioctl+0x7a/0x580
Aug 29 23:50:58 coolbox kernel:  [] ? do_munmap+0x245/0x300
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_ioctl+0x2e/0x50
Aug 29 23:50:58 coolbox kernel:  [] ? syscall_call+0x7/0xb
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel:  [] ? sys_umount+0x37d/0x380
Aug 29 23:50:58 coolbox kernel: Code: 8b 6c 24 14 83 c4 18 c3 8d 76 00 8d bc 27
00 00 00 00 8b 0a 85 c9 75 09 83 7a 04 00 75 03 31 c0 c3 8b 52 04 29 ca 39 50
44 76 f3 <0f> 0b 90 8d 74 26 00 8b 4a 14 53 6b d9 50
 8b 44 18 1c a8 01 75
Aug 29 23:50:58 coolbox kernel: EIP: []
ttm_bo_check_placement+0x19/0x20 SS:ESP 0068:eaa33d70
Aug 29 

[PATCH V6] drm: edid: add support for E-DDC

2012-08-30 Thread Shirish S
On Thu, Aug 30, 2012 at 3:58 AM, Ville Syrj?l? <
ville.syrjala at linux.intel.com> wrote:

> On Thu, Aug 30, 2012 at 12:34:06PM +0530, Shirish S wrote:
> > @@ -276,15 +283,21 @@ drm_do_probe_ddc_edid(struct i2c_adapter *adapter,
> unsigned char *buf,
> >   .buf= buf,
> >   }
> >   };
> > - ret = i2c_transfer(adapter, msgs, 2);
> > +
> > + /*
> > +  * Avoid sending the segment addr to not upset non-compliant ddc
> > +  * monitors.
> > +  */
>
> Indentation is still wrong. Or is it gettimg mangled by some email server?
>
> I have double checked with checkpatch, i did not get any errors or
warnings,
looks like as you are saying may be true.
Requesting for merge!

> > + ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);
> > +
> >   if (ret == -ENXIO) {
> >   DRM_DEBUG_KMS("drm: skipping non-existent adapter
> %s\n",
> >   adapter->name);
> >   break;
> >   }
> > - } while (ret != 2 && --retries);
> > + } while (ret != xfers && --retries);
> >
> > - return ret == 2 ? 0 : -1;
> > + return ret == xfers ? 0 : -1;
> >  }
> >
> >  static bool drm_edid_is_zero(u8 *in_edid, int length)
>
> --
> Ville Syrj?l?
> Intel OTC
> ___
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
>
-- next part --
An HTML attachment was scrubbed...
URL: 
<http://lists.freedesktop.org/archives/dri-devel/attachments/20120830/79e97406/attachment.html>


[Bug 46161] divide error on radeon modprobe

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=46161


Alan  changed:

   What|Removed |Added

  Component|Video(Other)|Video(DRI - non Intel)
 AssignedTo|drivers_video-other at kernel- |drivers_video-dri at 
kernel-bu
   |bugs.osdl.org   |gs.osdl.org




-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[PATCH] drm/radeon: implement bounds checking on thermal controller lookup

2012-08-30 Thread alexdeuc...@gmail.com
From: Alex Deucher 

Don't read past the end of the array if we encounter an unknown
thermal controller.

Signed-off-by: Alex Deucher 
---
 drivers/gpu/drm/radeon/radeon_atombios.c |   11 +--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_atombios.c 
b/drivers/gpu/drm/radeon/radeon_atombios.c
index e368b30..01b90b4 100644
--- a/drivers/gpu/drm/radeon/radeon_atombios.c
+++ b/drivers/gpu/drm/radeon/radeon_atombios.c
@@ -2009,7 +2009,8 @@ static int radeon_atombios_parse_power_table_1_3(struct 
radeon_device *rdev)
power_info = (union power_info *)(mode_info->atom_context->bios + 
data_offset);

/* add the i2c bus for thermal/fan chip */
-   if (power_info->info.ucOverdriveThermalController > 0) {
+   if ((power_info->info.ucOverdriveThermalController > 0) &&
+   (power_info->info.ucOverdriveThermalController < 
ARRAY_SIZE(thermal_controller_names))) {
DRM_INFO("Possible %s thermal controller at 0x%02x\n",
 
thermal_controller_names[power_info->info.ucOverdriveThermalController],
 power_info->info.ucOverdriveControllerAddress >> 1);
@@ -2213,7 +2214,7 @@ static void 
radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
   (controller->ucType ==
ATOM_PP_THERMALCONTROLLER_EMC2103_WITH_INTERNAL)) {
DRM_INFO("Special thermal controller config\n");
-   } else {
+   } else if (controller->ucType < 
ARRAY_SIZE(pp_lib_thermal_controller_names)) {
DRM_INFO("Possible %s thermal controller at 0x%02x %s 
fan control\n",
 
pp_lib_thermal_controller_names[controller->ucType],
 controller->ucI2cAddress >> 1,
@@ -2228,6 +2229,12 @@ static void 
radeon_atombios_add_pplib_thermal_controller(struct radeon_device *r
strlcpy(info.type, name, sizeof(info.type));
i2c_new_device(&rdev->pm.i2c_bus->adapter, 
&info);
}
+   } else {
+   DRM_INFO("Unknown thermal controller type %d at 0x%02x 
%s fan control\n",
+controller->ucType,
+controller->ucI2cAddress >> 1,
+(controller->ucFanParameters &
+ ATOM_PP_FANPARAMETERS_NOFAN) ? "without" : 
"with");
}
}
 }
-- 
1.7.7.5



[Bug 26891] Radeon KMS fails with inaccessible AtomBIOS on systems with (U)EFI boot

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=26891

--- Comment #36 from Stefan D?singer  2012-08-30 
17:39:59 UTC ---
My guess would be that they simply store it in the driver, i.e. similarly to
what my hack does. Considering that they have hardware and software under full
control I don't see why they want a video bios that's separate from the driver.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


drm: Adding the option IRQ_ONESHOT to support irq oneshot

2012-08-30 Thread Liu, Chuansheng
From: liu chuansheng 
Subject: [PATCH] drm: Adding the option IRQ_ONESHOT to support irq oneshot

For some platforms, we want the irq is handled as one shot,
then even when we use the irq thread, with this option, the new
irq will come until the irq thread finished.

So we have the requirement for IRQ_ONESHOT.

Signed-off-by: liu chuansheng 
---
 drivers/gpu/drm/drm_irq.c |3 +++
 include/drm/drmP.h|1 +
 2 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index 03f16f3..7a8a581 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -345,6 +345,9 @@ int drm_irq_install(struct drm_device *dev)
if (drm_core_check_feature(dev, DRIVER_IRQ_SHARED))
sh_flags = IRQF_SHARED;

+if (drm_core_check_feature(dev, DRIVER_IRQ_ONESHOT))
+sh_flags |= IRQF_ONESHOT;
+
if (dev->devname)
irqname = dev->devname;
else
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
index d6b67bb..dfede31 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -152,6 +152,7 @@ int drm_err(const char *func, const char *format, ...);
 #define DRIVER_GEM 0x1000
 #define DRIVER_MODESET 0x2000
 #define DRIVER_PRIME   0x4000
+#define DRIVER_IRQ_ONESHOT 0x8000

 #define DRIVER_BUS_PCI 0x1
 #define DRIVER_BUS_PLATFORM 0x2
-- 
1.7.0.4


A few questions about the best way to implement RandR 1.4 / PRIME buffer sharing

2012-08-30 Thread Aaron Plattner
So I've been experimenting with support for Dave Airlie's new RandR 1.4 provider
object interface, so that Optimus-based laptops can use our driver to drive the
discrete GPU and display on the integrated GPU.  The good news is that I've got
a proof of concept working.

During a review of the current code, we came up with a few concerns:

1. The output source is responsible for allocating the shared memory

Right now, the X server calls CreatePixmap on the output source screen and then
expects the output sink screen to be able to display from whatever memory the
source allocates.  Right now, the source has no mechanism for asking the sink
what its requirements are for the surface.  I'm using our own internal pitch
alignment requirements and that seems to be good enough for the Intel device to
scan out, but that could be pure luck.

Does it make sense to add a mechanism for drivers to negotiate this with each
other, or is it sufficient to just define a lowest common denominator format and
if your hardware can't deal with that format, you just don't get to share
buffers?

One of my coworkers brought to my attention the fact that Tegra requires a
specific pitch alignment, and cannot accommodate larger pitches.  If other SoC
designs have similar restrictions, we might need to add a handshake mechanism.

2. There's no fallback mechanism if sharing can't be negotiated

If RandR fails to share a pixmap with the output sink screen, the whole modeset
fails.  This means you'll end up not seeing anything on the screen and you'll
probably think your computer locked up.  Should there be some sort of software
copy fallback to ensure that something at least shows up on the display?

3. How should the memory be allocated?

In the prototype I threw together, I'm allocating the shared memory using
shm_open and then exporting that as a dma-buf file descriptor using an ioctl I
added to the kernel, and then importing that memory back into our driver through
dma_buf_attach & dma_buf_map_attachment.  Does it make sense for user-space
programs to be able to export shmfs files like that?  Should that interface go
in DRM / GEM / PRIME instead?  Something else?  I'm pretty unfamiliar with this
kernel code so any suggestions would be appreciated.

-- Aaron


P.S. for those unfamiliar with PRIME:
Dave Airlie added new support to the X Resize and Rotate extension version 1.4
to support offloading display and rendering to different drivers.  PRIME is the
DRM implementation in the kernel, layered on top of DMA-BUF, that implements the
actual sharing of buffers between drivers.

http://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt?id=randrproto-1.4.0#n122
http://airlied.livejournal.com/7.html - update on hotplug server
http://airlied.livejournal.com/76078.html - randr 1.5 demo videos

---
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
---


[Linaro-mm-sig] A few questions about the best way to implement RandR 1.4 / PRIME buffer sharing

2012-08-30 Thread Aaron Plattner
On 08/30/2012 10:31 AM, Aaron Plattner wrote:
> So I've been experimenting with support for Dave Airlie's new RandR 1.4 
> provider
> object interface, so that Optimus-based laptops can use our driver to drive 
> the
> discrete GPU and display on the integrated GPU.  The good news is that I've 
> got
> a proof of concept working.
>
> During a review of the current code, we came up with a few concerns:
>
> 1. The output source is responsible for allocating the shared memory
>
> Right now, the X server calls CreatePixmap on the output source screen and 
> then
> expects the output sink screen to be able to display from whatever memory the
> source allocates.  Right now, the source has no mechanism for asking the sink
> what its requirements are for the surface.  I'm using our own internal pitch
> alignment requirements and that seems to be good enough for the Intel device 
> to
> scan out, but that could be pure luck.
>
> Does it make sense to add a mechanism for drivers to negotiate this with each
> other, or is it sufficient to just define a lowest common denominator format 
> and
> if your hardware can't deal with that format, you just don't get to share
> buffers?
>
> One of my coworkers brought to my attention the fact that Tegra requires a
> specific pitch alignment, and cannot accommodate larger pitches.  If other SoC
> designs have similar restrictions, we might need to add a handshake mechanism.
>
> 2. There's no fallback mechanism if sharing can't be negotiated
>
> If RandR fails to share a pixmap with the output sink screen, the whole 
> modeset
> fails.  This means you'll end up not seeing anything on the screen and you'll
> probably think your computer locked up.  Should there be some sort of software
> copy fallback to ensure that something at least shows up on the display?
>
> 3. How should the memory be allocated?
>
> In the prototype I threw together, I'm allocating the shared memory using
> shm_open and then exporting that as a dma-buf file descriptor using an ioctl I
> added to the kernel, and then importing that memory back into our driver 
> through
> dma_buf_attach & dma_buf_map_attachment.  Does it make sense for user-space
> programs to be able to export shmfs files like that?  Should that interface go
> in DRM / GEM / PRIME instead?  Something else?  I'm pretty unfamiliar with 
> this
> kernel code so any suggestions would be appreciated.

There's also a #4 that didn't seem relevant to cross-post to linaro-mm-sig:

4. There's no mechanism for double buffering the output sink

RandR allocates one pixmap on the output source screen and sets up tracking so
the source driver can copy the screen into the shared pixmap.  However, the 
sink 
driver scans out from the shared pixmap directly.  There's no mechanism to
prevent tearing on the sink side of the pipeline.

It seems like it would be nice if the source could trigger the sink device to
flip between front and back buffers when the copy is finished, and get back a
fence to indicate when the flip has occurred and the source can start the next 
copy.

-- Aaron


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #22 from Alexandre Demers  
2012-08-30 21:34:48 UTC ---
It seems Marek has more weight than me about lockups related to VM on
Cayman(problem first reported as bug 45018). Patch by Marek to disable VM by
default for Cayman:
http://lists.freedesktop.org/archives/mesa-dev/2012-August/026590.html

If you have any news on the subject, feel free to add info in the current bug.
To Marek: are you experiencing the same first lockup in the piglit tests as
reported in comment 10. I'm sure have seen a previous comment from another dev
who was also experiencing lockups on Cayman, but I can't find who that was.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #23 from Alex Deucher  2012-08-30 21:42:20 UTC 
---
(In reply to comment #22)
> It seems Marek has more weight than me about lockups related to VM on
> Cayman(problem first reported as bug 45018). 

Well, we were hoping to get this resolved in time for 9.0, but as it's getting
pretty close now, it's probably better to disable it at least for the 9.0
release.  The problem is, when it's disabled, there's not much chance of anyone
testing it, so it's not likely to ever get properly fixed.  Also, SI only
supports VM, so we can't disable VM for SI.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


[Bug 41732] [radeon] KMS (and X.org) detect wrong outputs

2012-08-30 Thread bugzilla-dae...@bugzilla.kernel.org
https://bugzilla.kernel.org/show_bug.cgi?id=41732


Niels Ole Salscheider  changed:

   What|Removed |Added

 Status|NEEDINFO|RESOLVED
 Resolution||PATCH_ALREADY_AVAILABLE




--- Comment #11 from Niels Ole Salscheider  
 2012-08-30 22:20:42 ---
This issue is fixed in recent kernels.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.


[Bug 53111] [bisected] lockups since added support for virtual address space on cayman v11

2012-08-30 Thread bugzilla-dae...@freedesktop.org
https://bugs.freedesktop.org/show_bug.cgi?id=53111

--- Comment #24 from Alexandre Demers  
2012-08-30 22:38:36 UTC ---
(In reply to comment #23)
> (In reply to comment #22)
> > It seems Marek has more weight than me about lockups related to VM on
> > Cayman(problem first reported as bug 45018). 
> 
> Well, we were hoping to get this resolved in time for 9.0, but as it's getting
> pretty close now, it's probably better to disable it at least for the 9.0
> release.  The problem is, when it's disabled, there's not much chance of 
> anyone
> testing it, so it's not likely to ever get properly fixed.  Also, SI only
> supports VM, so we can't disable VM for SI.

Meanwhile, since fixes committed for bug 45018 helped me a lot, I'll gladly
keep VM activated to test it. After all, my desktop is now usable now, I've
been running for 3 days without any lockup, while I was previously only able to
run for a couple of hours before restarting. So, if you have any patches you
want to test that could help, ask me.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.


  1   2   >