<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/gpu/drm/i915/intel_csr.c, branch v4.4.78</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>drm/i915/skl: Fix DMC load on Skylake J0 and K0</title>
<updated>2016-05-11T09:21:27+00:00</updated>
<author>
<name>Mat Martineau</name>
<email>mathew.j.martineau@linux.intel.com</email>
</author>
<published>2016-01-28T23:19:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=945b6ec05a475fc80bcb79ef006ee5c0263c7b3a'/>
<id>945b6ec05a475fc80bcb79ef006ee5c0263c7b3a</id>
<content type='text'>
commit a41c8882592fb80458959b10e37632ce030b68ca upstream.

The driver does not load firmware for unknown steppings, so these new
steppings must be added to the list.

Cc: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Reviewed-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1454023163-25469-1-git-send-email-mathew.j.martineau@linux.intel.com
Cc: Jani Nikula &lt;jani.nikula@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit a41c8882592fb80458959b10e37632ce030b68ca upstream.

The driver does not load firmware for unknown steppings, so these new
steppings must be added to the list.

Cc: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Mat Martineau &lt;mathew.j.martineau@linux.intel.com&gt;
Reviewed-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Link: http://patchwork.freedesktop.org/patch/msgid/1454023163-25469-1-git-send-email-mathew.j.martineau@linux.intel.com
Cc: Jani Nikula &lt;jani.nikula@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915/skl: Added a check for the hardware status of csr fw before loading.</title>
<updated>2015-09-30T08:14:22+00:00</updated>
<author>
<name>Animesh Manna</name>
<email>animesh.manna@intel.com</email>
</author>
<published>2015-08-25T20:06:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4b7ab5fca1976a53d59ef1558ddb06ba69fab356'/>
<id>4b7ab5fca1976a53d59ef1558ddb06ba69fab356</id>
<content type='text'>
Dmc will restore the csr program except DC9, cold boot,
warm reset, PCI function level reset, and hibernate/suspend.

intel_csr_load_program() function is used to load the firmware
data from kernel memory to csr address space.

All values of csr address space will be zero if it got reset and
the first byte of csr program is always a non-zero if firmware
is loaded successfuly. Based on hardware status will load the
firmware.

Without this condition check if we overwrite the firmware data the
counters exposed for dc5/dc6 (help for debugging) will be nullified.

Note: Above commit message seems to be confused and the real problem
apparently going on is that for suspend-to-idle and system standby the
firmware survives (it's like runtime pm), but it doesn't for
suspend-to-mem and hibernate-to-disk. All the other talking about DC9
and pci reset are irrelevant for the path touched here (only driver
load and system resume functions) and might not be true statements.

v1: Initial version.

v2: Based on review comments from Daniel,
- Added a check to know hardware status and load the firmware if not loaded.

Cc: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Vathsala Nagaraju &lt;vathsala.nagaraju@intel.com&gt;
Reviewed-by: A.Sunil Kamath &lt;sunil.kamath@intel.com&gt;
[danvet: Explain clearly in the code comment when we need to reload
and when not and make it a FIXME. Also deconfuse the commit message
with a note. Also: Make. it. compile.]
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Dmc will restore the csr program except DC9, cold boot,
warm reset, PCI function level reset, and hibernate/suspend.

intel_csr_load_program() function is used to load the firmware
data from kernel memory to csr address space.

All values of csr address space will be zero if it got reset and
the first byte of csr program is always a non-zero if firmware
is loaded successfuly. Based on hardware status will load the
firmware.

Without this condition check if we overwrite the firmware data the
counters exposed for dc5/dc6 (help for debugging) will be nullified.

Note: Above commit message seems to be confused and the real problem
apparently going on is that for suspend-to-idle and system standby the
firmware survives (it's like runtime pm), but it doesn't for
suspend-to-mem and hibernate-to-disk. All the other talking about DC9
and pci reset are irrelevant for the path touched here (only driver
load and system resume functions) and might not be true statements.

v1: Initial version.

v2: Based on review comments from Daniel,
- Added a check to know hardware status and load the firmware if not loaded.

Cc: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Vathsala Nagaraju &lt;vathsala.nagaraju@intel.com&gt;
Reviewed-by: A.Sunil Kamath &lt;sunil.kamath@intel.com&gt;
[danvet: Explain clearly in the code comment when we need to reload
and when not and make it a FIXME. Also deconfuse the commit message
with a note. Also: Make. it. compile.]
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next</title>
<updated>2015-09-30T06:47:41+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2015-09-30T06:47:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=44cc6c08da0b6c8321c6740bbb6a0c6feb45b2c2'/>
<id>44cc6c08da0b6c8321c6740bbb6a0c6feb45b2c2</id>
<content type='text'>
Backmerge to catch up with 4.3. slightly more involved conflict in the
irq code, but nothing beyond adjacent changes.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backmerge to catch up with 4.3. slightly more involved conflict in the
irq code, but nothing beyond adjacent changes.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915: Parametrize CSR_PROGRAM registers</title>
<updated>2015-09-23T15:16:33+00:00</updated>
<author>
<name>Ville Syrjälä</name>
<email>ville.syrjala@linux.intel.com</email>
</author>
<published>2015-09-18T17:03:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d2aa5ae8e721bfe319e68ef5c08380385d452787'/>
<id>d2aa5ae8e721bfe319e68ef5c08380385d452787</id>
<content type='text'>
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Reviewed-by: Mika Kuoppala &lt;mika.kuoppala@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Ville Syrjälä &lt;ville.syrjala@linux.intel.com&gt;
Reviewed-by: Mika Kuoppala &lt;mika.kuoppala@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915/bxt: Stepping info added for bxt.</title>
<updated>2015-09-23T07:42:10+00:00</updated>
<author>
<name>Animesh Manna</name>
<email>animesh.manna@intel.com</email>
</author>
<published>2015-08-04T16:32:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cff765fb1383dff6787fa735fcc88aa122d3c00d'/>
<id>cff765fb1383dff6787fa735fcc88aa122d3c00d</id>
<content type='text'>
Added stepping info in intel_csr.c which is required to extract
specific firmware from packaged dmc firmware.

Stepping info is aligned with current bspec info.

Cc: Vetter, Daniel &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Reviewed-by: Imre Deak &lt;imre.deak@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added stepping info in intel_csr.c which is required to extract
specific firmware from packaged dmc firmware.

Stepping info is aligned with current bspec info.

Cc: Vetter, Daniel &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Reviewed-by: Imre Deak &lt;imre.deak@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915/bxt: Path added of dmc firmware ver1 for BXT.</title>
<updated>2015-09-23T07:39:08+00:00</updated>
<author>
<name>Animesh Manna</name>
<email>animesh.manna@intel.com</email>
</author>
<published>2015-08-04T16:32:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=18c237c0f9fa2e1c66e1eb4c305aeff4f28f89bf'/>
<id>18c237c0f9fa2e1c66e1eb4c305aeff4f28f89bf</id>
<content type='text'>
Broxton also has dmc to manage low-power display engine state.
Path of the firmware added in intel_csr.c.

Naming convention followed as &lt;platform&gt;_dmc_&lt;api-version&gt;.bin

v1: Initial version.

v2: Commit description added based on review comment from Sunil.

Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Reviewed-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Broxton also has dmc to manage low-power display engine state.
Path of the firmware added in intel_csr.c.

Naming convention followed as &lt;platform&gt;_dmc_&lt;api-version&gt;.bin

v1: Initial version.

v2: Commit description added based on review comment from Sunil.

Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Reviewed-by: Rodrigo Vivi &lt;rodrigo.vivi@intel.com&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915: make CSR firmware messages less verbose</title>
<updated>2015-09-14T09:12:29+00:00</updated>
<author>
<name>Jesse Barnes</name>
<email>jbarnes@virtuousgeek.org</email>
</author>
<published>2015-09-10T15:20:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6ff8ab0d0fab914755cb79b1e0469dd7123cc471'/>
<id>6ff8ab0d0fab914755cb79b1e0469dd7123cc471</id>
<content type='text'>
Use WARN_ONCE in a bunch of places and demote a message that would
continually spam us.

Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Acked-by: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Acked-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use WARN_ONCE in a bunch of places and demote a message that would
continually spam us.

Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Acked-by: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Acked-by: Chris Wilson &lt;chris@chris-wilson.co.uk&gt;
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915: Fix CSR MMIO address check</title>
<updated>2015-09-10T07:32:48+00:00</updated>
<author>
<name>Takashi Iwai</name>
<email>tiwai@suse.de</email>
</author>
<published>2015-09-09T14:52:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=982b0b2dd590c00f089fc6fe915bd0cb302a7f5c'/>
<id>982b0b2dd590c00f089fc6fe915bd0cb302a7f5c</id>
<content type='text'>
Fix a wrong logical AND (&amp;&amp;) used for the range check of CSR MMIO.

Spotted nicely by gcc -Wlogical-op flag:
  drivers/gpu/drm/i915/intel_csr.c: In function ‘finish_csr_load’:
  drivers/gpu/drm/i915/intel_csr.c:353:41: warning: logical ‘and’ of mutually exclusive tests is always false [-Wlogical-op]

Fixes: eb805623d8b1 ('drm/i915/skl: Add support to load SKL CSR firmware.')
Cc: &lt;stable@vger.kernel.org&gt; # v4.2
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Reviewed-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix a wrong logical AND (&amp;&amp;) used for the range check of CSR MMIO.

Spotted nicely by gcc -Wlogical-op flag:
  drivers/gpu/drm/i915/intel_csr.c: In function ‘finish_csr_load’:
  drivers/gpu/drm/i915/intel_csr.c:353:41: warning: logical ‘and’ of mutually exclusive tests is always false [-Wlogical-op]

Fixes: eb805623d8b1 ('drm/i915/skl: Add support to load SKL CSR firmware.')
Cc: &lt;stable@vger.kernel.org&gt; # v4.2
Signed-off-by: Takashi Iwai &lt;tiwai@suse.de&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Reviewed-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Jani Nikula &lt;jani.nikula@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>drm/i915/gen9: Removed byte swapping for csr firmware</title>
<updated>2015-08-05T09:00:04+00:00</updated>
<author>
<name>Animesh Manna</name>
<email>animesh.manna@intel.com</email>
</author>
<published>2015-08-03T16:25:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a7f749f9c7e8222405740f6081bd183137d1d6f2'/>
<id>a7f749f9c7e8222405740f6081bd183137d1d6f2</id>
<content type='text'>
This patch contains the changes to remove the byte
swapping logic introduced with old dmc firmware.
While debugging PC10 entry issue for skylake found
with latest dmc firmware version 1.18 without byte
swapping dmc is working fine and able to enter PC10.

Note that apparently this was changed with dmc version 1.0 and earlier
ones indeed are byteswapped like this ...

v1: Initial version.

v2: Corrected firmware size during memcpy(). (Suggested by Sunil)

Cc: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Vathsala Nagaraju &lt;vathsala.nagaraju@intel.com&gt;
Reviewed-by: A.Sunil Kamath &lt;sunil.kamath@intel.com&gt;
[danvet: Add note that this only holds for released dmc firmware.]
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch contains the changes to remove the byte
swapping logic introduced with old dmc firmware.
While debugging PC10 entry issue for skylake found
with latest dmc firmware version 1.18 without byte
swapping dmc is working fine and able to enter PC10.

Note that apparently this was changed with dmc version 1.0 and earlier
ones indeed are byteswapped like this ...

v1: Initial version.

v2: Corrected firmware size during memcpy(). (Suggested by Sunil)

Cc: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
Cc: Damien Lespiau &lt;damien.lespiau@intel.com&gt;
Cc: Imre Deak &lt;imre.deak@intel.com&gt;
Cc: Sunil Kamath &lt;sunil.kamath@intel.com&gt;
Signed-off-by: Animesh Manna &lt;animesh.manna@intel.com&gt;
Signed-off-by: Vathsala Nagaraju &lt;vathsala.nagaraju@intel.com&gt;
Reviewed-by: A.Sunil Kamath &lt;sunil.kamath@intel.com&gt;
[danvet: Add note that this only holds for released dmc firmware.]
Signed-off-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'airlied/drm-next' into HEAD</title>
<updated>2015-06-23T12:01:53+00:00</updated>
<author>
<name>Daniel Vetter</name>
<email>daniel.vetter@ffwll.ch</email>
</author>
<published>2015-06-23T06:31:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0b076ecdf343b029c4c2c3a94ffd0199d97aa46c'/>
<id>0b076ecdf343b029c4c2c3a94ffd0199d97aa46c</id>
<content type='text'>
Backmerge drm-next because the conflict between Ander's atomic fixes
for 4.2 and Maartens future work are getting to unwielding to handle.

Conflicts:
	drivers/gpu/drm/i915/intel_display.c
	drivers/gpu/drm/i915/intel_ringbuffer.h

Just always take ours, same as git merge -X ours, but done by hand
because I didn't trust git: It's confusing that it doesn't show any
conflicts in the merge diff at all.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backmerge drm-next because the conflict between Ander's atomic fixes
for 4.2 and Maartens future work are getting to unwielding to handle.

Conflicts:
	drivers/gpu/drm/i915/intel_display.c
	drivers/gpu/drm/i915/intel_ringbuffer.h

Just always take ours, same as git merge -X ours, but done by hand
because I didn't trust git: It's confusing that it doesn't show any
conflicts in the merge diff at all.

Signed-off-by: Daniel Vetter &lt;daniel.vetter@intel.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
