Re: [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gvt: Enable KVMGT for BXT

2018-06-12 Thread Zhenyu Wang
On 2018.06.11 10:09:52 +0100, Chris Wilson wrote:
> Quoting Patchwork (2018-06-11 10:05:46)
> > == Series Details ==
> > 
> > Series: drm/i915/gvt: Enable KVMGT for BXT
> > URL   : https://patchwork.freedesktop.org/series/44551/
> > State : success
> > 
> > == Summary ==
> > 
> > = CI Bug Log - changes from CI_DRM_4299 -> Patchwork_9253 =
> > 
> > == Summary - SUCCESS ==
> > 
> >   No regressions found.
> > 
> >   External URL: 
> > https://patchwork.freedesktop.org/api/1.0/series/44551/revisions/1/mbox/
> 
> While we have your attention, please note that all the gvtdvm machines
> are failing on suspend. Could you please investigate as it means we have
> no coverage at all for the impact on gvt of any patch?

Chris, where can we check current gvt-d config on CI machine?

-- 
Open Source Technology Center, Intel ltd.

$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827


signature.asc
Description: PGP signature
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for Some checkpatch fixes for i915_reg.h

2018-06-12 Thread Patchwork
== Series Details ==

Series: Some checkpatch fixes for i915_reg.h
URL   : https://patchwork.freedesktop.org/series/44662/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4309_full -> Patchwork_9280_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9280_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9280_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9280_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-blt:
  shard-kbl:  PASS -> SKIP +2

igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
  shard-hsw:  PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9280_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_mmap_gtt@coherency:
  shard-glk:  NOTRUN -> FAIL (fdo#100587)

igt@gem_ppgtt@blt-vs-render-ctxn:
  shard-kbl:  PASS -> INCOMPLETE (fdo#106023, fdo#103665)

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-glk:  PASS -> FAIL (fdo#100368)

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  PASS -> FAIL (fdo#100368)

igt@kms_setmode@basic:
  shard-glk:  NOTRUN -> FAIL (fdo#99912)

igt@kms_sysfs_edid_timing:
  shard-glk:  NOTRUN -> WARN (fdo#100047)

igt@perf@polling:
  shard-hsw:  PASS -> FAIL (fdo#102252)

igt@perf_pmu@busy-accuracy-50-vcs1:
  shard-snb:  SKIP -> INCOMPLETE (fdo#105411)


 Possible fixes 

igt@drv_selftest@live_gtt:
  shard-kbl:  FAIL (fdo#105347) -> PASS

igt@gem_ppgtt@blt-vs-render-ctx0:
  shard-kbl:  INCOMPLETE (fdo#106023, fdo#103665) -> PASS

igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
  shard-glk:  FAIL (fdo#105703) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-hsw:  FAIL (fdo#102887) -> PASS

igt@kms_flip@flip-vs-expired-vblank-interruptible:
  shard-hsw:  FAIL (fdo#102887, fdo#105363) -> PASS


  fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#100587 https://bugs.freedesktop.org/show_bug.cgi?id=100587
  fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4309 -> Patchwork_9280

  CI_DRM_4309: 2740c5b0d0f40092355b329a62ede8cced7f64b9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9280: a1e3b46722bedf3718054217a0c0f1f1b6175e72 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9280/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] DRM Inquiry

2018-06-12 Thread John Sledge
 Hi Jani,
I like to understand how the DRM_DP_AUX_CHARDEV=y kick off.
Regards,John


On Monday, June 11, 2018, 7:36:51 PM GMT+8, Jani Nikula 
 wrote:  
 
 On Mon, 11 Jun 2018, John Sledge  wrote:
> Thanks for the help. I was able to manage your advice on the
> drm_dp_aux_chardev. Though I still need to learn more about the DRM vs
> kernel process flow. Like for example, upon changing/adding
> DRM_DP_AUX_CHARDEV in kernel .config, How did DRM_DP_AUX_CHARDEV was
> being invoke here? From the code, I notice character device will be
> created under drm_dp_aux_register_devnode method.
> For example I made two kernel 4.6 with DRM_DP_AUX_CHARDEV=y and
> another kernel 4.6 with DRM_DP_AUX_CHARDEV=n. 
> So the steps was to build and install the kernel with
> DRM_DP_AUX_CHARDEV=y. Once finish, I tried to reboot and verified the
> /dev/drm_dp_aux_chardev* and it was there.
> Now, I will change the .config DRM_DP_AUXCHARDEV=n then follow the
> steps below to manual build the DRM module. I'm not really sure if I'm
> correct on this one.

Why are you disabling it again? Just enable the config, use the
resulting kernel, and do the rest in userspace.

> 1. rm /dev/drm_dp_aux_chardev* 2. make modules_prepare3. make
> SUBDIRS=scripts/mod4. make SUBDIRS=drivers/gpu/drm modules5. cp
> drivers/gpu/drm/i915/i915.ko
> /lib/modules/4.6.0-94.11-default/kernel/drivers/gpu/drm6. ... I copy
> all .ko under drm to the lib/modules/4.67. depmod8. modprobe
> i9159. ... I also modprobe all modules10. reboot
> The result was /dev/drm_dp_aux_chardev* was still there. My
> expectation was it would disrepair or remove.

Don't do this. I don't understand what you're trying to do.

> Please have comments and advice.

Please explain what you're trying to do to begin with. What's your end
goal?

BR,
Jani.


PS. Please prefer plain text instead of html on the list.


-- 
Jani Nikula, Intel Open Source Graphics Center
___
dri-devel mailing list
dri-de...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
  ___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for Some checkpatch fixes for i915_reg.h

2018-06-12 Thread Patchwork
== Series Details ==

Series: Some checkpatch fixes for i915_reg.h
URL   : https://patchwork.freedesktop.org/series/44662/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4309 -> Patchwork_9280 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9280 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9280, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44662/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9280:

  === IGT changes ===

 Warnings 

igt@gem_exec_gttfill@basic:
  fi-pnv-d510:SKIP -> PASS


== Known issues ==

  Here are the changes found in Patchwork_9280 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   PASS -> INCOMPLETE (fdo#103713)

igt@gem_exec_create@basic:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106745)

igt@gem_exec_suspend@basic-s3:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097)

igt@gem_exec_suspend@basic-s4-devices:
  fi-hsw-peppy:   PASS -> FAIL (fdo#105900)


 Possible fixes 

igt@gem_exec_suspend@basic-s4-devices:
  fi-kbl-7500u:   DMESG-WARN (fdo#105128) -> PASS

igt@kms_pipe_crc_basic@read-crc-pipe-c:
  fi-glk-j4005:   DMESG-WARN (fdo#106097) -> PASS

igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
  fi-cnl-psr: DMESG-WARN (fdo#104951) -> PASS


  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
  fdo#105128 https://bugs.freedesktop.org/show_bug.cgi?id=105128
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
  fdo#106745 https://bugs.freedesktop.org/show_bug.cgi?id=106745


== Participating hosts (43 -> 38) ==

  Missing(5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4309 -> Patchwork_9280

  CI_DRM_4309: 2740c5b0d0f40092355b329a62ede8cced7f64b9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9280: a1e3b46722bedf3718054217a0c0f1f1b6175e72 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

a1e3b46722be drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE issues
349125104d4c drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB issues
fa21130f6a88 drm/i915/i915_reg.h: fix the checkpatch SPACING issues

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9280/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Some checkpatch fixes for i915_reg.h

2018-06-12 Thread Patchwork
== Series Details ==

Series: Some checkpatch fixes for i915_reg.h
URL   : https://patchwork.freedesktop.org/series/44662/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
fa21130f6a88 drm/i915/i915_reg.h: fix the checkpatch SPACING issues
-:4: WARNING:EMAIL_SUBJECT: A patch subject line should describe the change not 
the tool that found it
#4: 
Subject: [PATCH] drm/i915/i915_reg.h: fix the checkpatch SPACING issues

-:50: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#50: FILE: drivers/gpu/drm/i915/i915_reg.h:144:
+#define _PIPE(pipe, a, b) ((a) + (pipe) * ((b) - (a)))

-:55: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#55: FILE: drivers/gpu/drm/i915/i915_reg.h:148:
+#define _TRANS(tran, a, b) ((a) + (tran) * ((b) - (a)))

-:58: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#58: FILE: drivers/gpu/drm/i915/i915_reg.h:150:
+#define _PORT(port, a, b) ((a) + (port) * ((b) - (a)))

-:63: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#63: FILE: drivers/gpu/drm/i915/i915_reg.h:154:
+#define _PLL(pll, a, b) ((a) + (pll) * ((b) - (a)))

-:1065: WARNING:SPACE_BEFORE_TAB: please, no space before tabs
#1065: FILE: drivers/gpu/drm/i915/i915_reg.h:2415:
+#define   DERRMR_PIPEB_SCANLINE ^I(1 << 8)$

-:1633: WARNING:LONG_LINE: line over 100 characters
#1633: FILE: drivers/gpu/drm/i915/i915_reg.h:3130:
+#define   PHY_STATUS_SPLINE_LDO(phy, ch, spline)(1 << (8 - (6 * (phy) 
+ 3 * (ch) + (spline

-:1845: WARNING:LONG_LINE_COMMENT: line over 100 characters
#1845: FILE: drivers/gpu/drm/i915/i915_reg.h:3645:
+#define   IMPROMOEN(1 << 10) /* promo is immediate or delayed 
until next idle interval (only for timeout method above) */

-:3186: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'a' - possible side-effects?
#3186: FILE: drivers/gpu/drm/i915/i915_reg.h:6826:
+#define _ID(id, a, b) ((a) + (id) * ((b) - (a)))

total: 0 errors, 4 warnings, 5 checks, 4617 lines checked
349125104d4c drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB issues
-:4: WARNING:EMAIL_SUBJECT: A patch subject line should describe the change not 
the tool that found it
#4: 
Subject: [PATCH] drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB

total: 0 errors, 1 warnings, 0 checks, 32 lines checked
a1e3b46722be drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE issues
-:4: WARNING:EMAIL_SUBJECT: A patch subject line should describe the change not 
the tool that found it
#4: 
Subject: [PATCH] drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE

total: 0 errors, 1 warnings, 0 checks, 138 lines checked

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gtt: Only keep gen6 page directories pinned while active

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/gtt: Only keep gen6 page directories pinned while active
URL   : https://patchwork.freedesktop.org/series/44649/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4308_full -> Patchwork_9278_full =

== Summary - SUCCESS ==

  No regressions found.

  

== Known issues ==

  Here are the changes found in Patchwork_9278_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-glk:  NOTRUN -> INCOMPLETE (k.org#198133, fdo#103359)

igt@drv_selftest@mock_scatterlist:
  shard-glk:  NOTRUN -> DMESG-WARN (fdo#103667)

igt@gem_exec_schedule@pi-ringfull-bsd:
  shard-glk:  NOTRUN -> FAIL (fdo#103158) +1

igt@gem_exec_suspend@basic-s4-devices:
  shard-hsw:  PASS -> FAIL (fdo#105900) +1

igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
  shard-glk:  NOTRUN -> FAIL (fdo#106509, fdo#105454)

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-glk:  PASS -> FAIL (fdo#105363)

igt@kms_flip@dpms-vs-vblank-race-interruptible:
  shard-hsw:  PASS -> FAIL (fdo#103060)

igt@kms_flip@flip-vs-expired-vblank:
  shard-glk:  NOTRUN -> FAIL (fdo#105189)

igt@kms_flip@flip-vs-panning-vs-hang-interruptible:
  shard-snb:  PASS -> DMESG-WARN (fdo#103821)

igt@kms_rotation_crc@primary-rotation-270:
  shard-apl:  PASS -> FAIL (fdo#103925, fdo#104724) +1


 Possible fixes 

igt@drv_suspend@shrink:
  shard-kbl:  INCOMPLETE (fdo#103665, fdo#106886) -> PASS

igt@gem_ppgtt@blt-vs-render-ctxn:
  shard-kbl:  INCOMPLETE (fdo#103665, fdo#106023) -> PASS

igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
  shard-glk:  FAIL (fdo#105703) -> PASS

igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
  shard-hsw:  FAIL (fdo#105767) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-hsw:  FAIL (fdo#102887) -> PASS


  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103667 https://bugs.freedesktop.org/show_bug.cgi?id=103667
  fdo#103821 https://bugs.freedesktop.org/show_bug.cgi?id=103821
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105189 https://bugs.freedesktop.org/show_bug.cgi?id=105189
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#105767 https://bugs.freedesktop.org/show_bug.cgi?id=105767
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4308 -> Patchwork_9278

  CI_DRM_4308: 355cdcfec85bdd8bea927357789f53e4dec4f7b2 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9278: e8c416abf96f31a6541d5a052849db26eee8ef8b @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9278/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 3/3] drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE issues

2018-06-12 Thread Paulo Zanoni
While I don't see any issue with the way these macros are being called
today, let's protect them against operator precedence issues before
they happen.

Signed-off-by: Paulo Zanoni 
---
 drivers/gpu/drm/i915/i915_reg.h | 42 -
 1 file changed, 21 insertions(+), 21 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index f9a7cc5da5d8..1803995db1ca 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1779,7 +1779,7 @@ enum i915_power_well_id {
 #define CNL_PORT_TX_DW4_GRP(port)  _MMIO(_CNL_PORT_TX_DW_GRP((port), 4))
 #define CNL_PORT_TX_DW4_LN0(port)  _MMIO(_CNL_PORT_TX_DW_LN0((port), 4))
 #define CNL_PORT_TX_DW4_LN(port, ln)   _MMIO(_CNL_PORT_TX_DW_LN0((port), 4) + \
-(ln * (_CNL_PORT_TX_DW4_LN1_AE - \
+  ((ln) * (_CNL_PORT_TX_DW4_LN1_AE - \
_CNL_PORT_TX_DW4_LN0_AE)))
 #define _ICL_PORT_TX_DW4_GRP_A 0x162690
 #define _ICL_PORT_TX_DW4_GRP_B 0x6C690
@@ -1792,8 +1792,8 @@ enum i915_power_well_id {
 #define ICL_PORT_TX_DW4_LN(port, ln)   _MMIO(_PORT(port, \
   _ICL_PORT_TX_DW4_LN0_A, \
   _ICL_PORT_TX_DW4_LN0_B) + \
- (ln * (_ICL_PORT_TX_DW4_LN1_A - \
-_ICL_PORT_TX_DW4_LN0_A)))
+((ln) * (_ICL_PORT_TX_DW4_LN1_A - \
+ _ICL_PORT_TX_DW4_LN0_A)))
 #define   LOADGEN_SELECT   (1 << 31)
 #define   POST_CURSOR_1(x) ((x) << 12)
 #define   POST_CURSOR_1_MASK   (0x3F << 12)
@@ -6070,8 +6070,8 @@ enum {
 
 /* Display/Sprite base address macros */
 #define DISP_BASEADDR_MASK (0xf000)
-#define I915_LO_DISPBASE(val)  (val & ~DISP_BASEADDR_MASK)
-#define I915_HI_DISPBASE(val)  (val & DISP_BASEADDR_MASK)
+#define I915_LO_DISPBASE(val)  ((val) & ~DISP_BASEADDR_MASK)
+#define I915_HI_DISPBASE(val)  ((val) & DISP_BASEADDR_MASK)
 
 /*
  * VBIOS flags
@@ -7085,7 +7085,7 @@ enum {
 #define  GEN11_VECS(x) (31 - (x))
 #define  GEN11_VCS(x)  (x)
 
-#define GEN11_GT_INTR_DW(x)_MMIO(0x190018 + (x * 4))
+#define GEN11_GT_INTR_DW(x)_MMIO(0x190018 + ((x) * 4))
 
 #define GEN11_INTR_IDENTITY_REG0   _MMIO(0x190060)
 #define GEN11_INTR_IDENTITY_REG1   _MMIO(0x190064)
@@ -7094,12 +7094,12 @@ enum {
 #define  GEN11_INTR_ENGINE_INSTANCE(x) (((x) & GENMASK(25, 20)) >> 20)
 #define  GEN11_INTR_ENGINE_INTR(x) ((x) & 0x)
 
-#define GEN11_INTR_IDENTITY_REG(x) _MMIO(0x190060 + (x * 4))
+#define GEN11_INTR_IDENTITY_REG(x) _MMIO(0x190060 + ((x) * 4))
 
 #define GEN11_IIR_REG0_SELECTOR_MMIO(0x190070)
 #define GEN11_IIR_REG1_SELECTOR_MMIO(0x190074)
 
-#define GEN11_IIR_REG_SELECTOR(x)  _MMIO(0x190070 + (x * 4))
+#define GEN11_IIR_REG_SELECTOR(x)  _MMIO(0x190070 + ((x) * 4))
 
 #define GEN11_RENDER_COPY_INTR_ENABLE  _MMIO(0x190030)
 #define GEN11_VCS_VECS_INTR_ENABLE _MMIO(0x190034)
@@ -7491,15 +7491,15 @@ enum {
 
 #define _PCH_DPLL_A  0xc6014
 #define _PCH_DPLL_B  0xc6018
-#define PCH_DPLL(pll) _MMIO(pll == 0 ? _PCH_DPLL_A : _PCH_DPLL_B)
+#define PCH_DPLL(pll) _MMIO((pll) == 0 ? _PCH_DPLL_A : _PCH_DPLL_B)
 
 #define _PCH_FPA00xc6040
 #define  FP_CB_TUNE(0x3 << 22)
 #define _PCH_FPA10xc6044
 #define _PCH_FPB00xc6048
 #define _PCH_FPB10xc604c
-#define PCH_FP0(pll) _MMIO(pll == 0 ? _PCH_FPA0 : _PCH_FPB0)
-#define PCH_FP1(pll) _MMIO(pll == 0 ? _PCH_FPA1 : _PCH_FPB1)
+#define PCH_FP0(pll) _MMIO((pll) == 0 ? _PCH_FPA0 : _PCH_FPB0)
+#define PCH_FP1(pll) _MMIO((pll) == 0 ? _PCH_FPA1 : _PCH_FPB1)
 
 #define PCH_DPLL_TEST   _MMIO(0xc606c)
 
@@ -8331,11 +8331,11 @@ enum {
 #define   GEN7_L3CDERRST1_BANK_MASK(3 << 11)
 #define   GEN7_L3CDERRST1_SUBBANK_MASK (7 << 8)
 #define GEN7_PARITY_ERROR_ROW(reg) \
-   ((reg & GEN7_L3CDERRST1_ROW_MASK) >> 14)
+   (((reg) & GEN7_L3CDERRST1_ROW_MASK) >> 14)
 #define GEN7_PARITY_ERROR_BANK(reg) \
-   ((reg & GEN7_L3CDERRST1_BANK_MASK) >> 11)
+   (((reg) & GEN7_L3CDERRST1_BANK_MASK) >> 11)
 #define GEN7_PARITY_ERROR_SUBBANK(reg) \
-   ((reg & GEN7_L3CDERRST1_SUBBANK_MASK) >> 8)
+   (((reg) & GEN7_L3CDERRST1_SUBBANK_MASK) >> 8)
 #define   GEN7_L3CDERRST1_ENABLE   (1 << 7)
 
 #define GEN7_L3LOG(slice, i)   _MMIO(0xB070 + (slice) * 0x200 + (i) * 
4)
@@ -8608,7 +8608,7 @@ enum skl_power_gate {
 #define HDCP_SHA_V_PRIME_H2_MMIO(0x66d0C)
 #define HDCP_SHA_V_PRIME_H3_MMIO(0x66d10)
 #define HDCP_SHA_V_PRIME_H4

[Intel-gfx] [PATCH 2/3] drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB issues

2018-06-12 Thread Paulo Zanoni
Since I'm touching the file I might as well fix this class of errors
since they are just a few. Also drive-by fix the styling of the
VLV_TURBO_SOC_OVERRIDE definitions instead of just the spaces before
the tabs.

Signed-off-by: Paulo Zanoni 
---
 drivers/gpu/drm/i915/i915_reg.h | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 5e1d391b74db..f9a7cc5da5d8 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -1141,11 +1141,11 @@ enum i915_power_well_id {
 #define   FB_FMAX_VMIN_FREQ_LO_SHIFT   27
 #define   FB_FMAX_VMIN_FREQ_LO_MASK0xf800
 
-#define VLV_TURBO_SOC_OVERRIDE 0x04
-#defineVLV_OVERRIDE_EN 1
-#defineVLV_SOC_TDP_EN  (1 << 1)
-#defineVLV_BIAS_CPU_125_SOC_875 (6 << 2)
-#defineCHV_BIAS_CPU_50_SOC_50 (3 << 2)
+#define VLV_TURBO_SOC_OVERRIDE 0x04
+#define   VLV_OVERRIDE_EN  1
+#define   VLV_SOC_TDP_EN   (1 << 1)
+#define   VLV_BIAS_CPU_125_SOC_875 (6 << 2)
+#define   CHV_BIAS_CPU_50_SOC_50   (3 << 2)
 
 /* vlv2 north clock has */
 #define CCK_FUSE_REG   0x8
@@ -2412,7 +2412,7 @@ enum i915_power_well_id {
 #define   DERRMR_PIPEA_SPR_FLIP_DONE   (1 << 2)
 #define   DERRMR_PIPEA_VBLANK  (1 << 3)
 #define   DERRMR_PIPEA_HBLANK  (1 << 5)
-#define   DERRMR_PIPEB_SCANLINE(1 << 8)
+#define   DERRMR_PIPEB_SCANLINE(1 << 8)
 #define   DERRMR_PIPEB_PRI_FLIP_DONE   (1 << 9)
 #define   DERRMR_PIPEB_SPR_FLIP_DONE   (1 << 10)
 #define   DERRMR_PIPEB_VBLANK  (1 << 11)
@@ -7567,7 +7567,7 @@ enum {
 #define  TRANS_VBLANK_END_SHIFT16
 #define  TRANS_VBLANK_START_SHIFT  0
 #define _PCH_TRANS_VSYNC_A 0xe0014
-#define  TRANS_VSYNC_END_SHIFT 16
+#define  TRANS_VSYNC_END_SHIFT 16
 #define  TRANS_VSYNC_START_SHIFT   0
 #define _PCH_TRANS_VSYNCSHIFT_A0xe0028
 
-- 
2.14.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 1/4] drm/i915: fix guest virtual PCH detection on non-PCH systems

2018-06-12 Thread Lucas De Marchi
On Fri, Jun 8, 2018 at 5:34 AM Jani Nikula  wrote:
>
> On Thu, 31 May 2018, Lucas De Marchi  wrote:
> > On Thu, May 31, 2018 at 02:56:21PM +0300, Jani Nikula wrote:
> >> Virtualized non-PCH systems such as Broxton or Geminilake should use
> >> PCH_NONE to indicate no PCH rather than PCH_NOP. The latter is a
> >> specific case to indicate a PCH system without south display.
> >
> > Then let's go ahead and document it?
>
> Please avoid sending suggestion patches in-reply-to existing
> series. This confused patchwork and screwed up CI for the series, which
> was already a resend just to get CI. :(

ugh, sorry.  Sometimes just adding a oneline diff is much better than
a hundred words explaining :( ... IMO pw is trying to be smarter than
it should here or not being smart enough. Nonetheless I won't do that
anymore.

Lucas De Marchi

>
> I'm resending the series, with your documentation patch added, but I'm
> keeping the extra explanatory text in the last patch. I think it's
> warranted.
>
> BR,
> Jani.
>
>
> >
> > -
> > Subject: [PATCH] drm/i915: document PCH_NOP
> >
> > There's a difference between PCH_NONE and PCH_NOP: the former means we
> > don't have a PCH while in the latter we do, but it doesn't have the
> > south display.
> >
> > Cc: Jani Nikula 
> > Signed-off-by: Lucas De Marchi 
> > ---
> >  drivers/gpu/drm/i915/i915_drv.h | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_drv.h 
> > b/drivers/gpu/drm/i915/i915_drv.h
> > index 72150f89f200..aa395a898258 100644
> > --- a/drivers/gpu/drm/i915/i915_drv.h
> > +++ b/drivers/gpu/drm/i915/i915_drv.h
> > @@ -631,7 +631,7 @@ enum intel_pch {
> >   PCH_KBP,/* Kaby Lake PCH */
> >   PCH_CNP,/* Cannon Lake PCH */
> >   PCH_ICP,/* Ice Lake PCH */
> > - PCH_NOP,
> > + PCH_NOP,/* PCH without south display */
> >  };
> >
> >  enum intel_sbi_destination {
>
> --
> Jani Nikula, Intel Open Source Graphics Center



-- 
Lucas De Marchi
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (rev3)

2018-06-12 Thread Kumar, Abhay



On 6/12/2018 11:09 AM, Saarinen, Jani wrote:

HI,


-Original Message-
From: Intel-gfx [mailto:intel-gfx-boun...@lists.freedesktop.org] On Behalf
Of Patchwork
Sent: tiistai 12. kesäkuuta 2018 11.38
To: Kumar, Abhay 
Cc: intel-gfx@lists.freedesktop.org
Subject: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Force 2*96 MHz cdclk on
glk/cnl when audio power is enabled (rev3)

== Series Details ==

Series: drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is
enabled (rev3)
URL   : https://patchwork.freedesktop.org/series/42459/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4304_full -> Patchwork_9268_full =

== Summary - WARNING ==

   Minor unknown changes coming with Patchwork_9268_full need to be
verified
   manually.

   If you think the reported changes have nothing to do with the changes
   introduced in Patchwork_9268_full, please notify your bug team to allow
them
   to document this new failure mode, which will reduce false positives in CI.



== Possible new issues ==

   Here are the unknown changes that may have been introduced in
Patchwork_9268_full:

   === IGT changes ===

  Warnings 

 igt@gem_exec_schedule@deep-bsd2:
   shard-kbl:  PASS -> SKIP

 igt@gem_exec_schedule@deep-vebox:
   shard-kbl:  SKIP -> PASS


== Known issues ==

   Here are the changes found in Patchwork_9268_full that come from known
issues:

   === IGT changes ===

  Issues hit 

 igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
   shard-hsw:  PASS -> FAIL (fdo#102887)

 igt@kms_setmode@basic:
   shard-kbl:  PASS -> FAIL (fdo#99912)


  Possible fixes 

 igt@drv_selftest@live_gtt:
   shard-kbl:  FAIL (fdo#105347) -> PASS

 igt@drv_suspend@shrink:
   shard-hsw:  INCOMPLETE (fdo#103540) -> PASS

 igt@kms_rotation_crc@sprite-rotation-180:
   shard-hsw:  FAIL (fdo#103925, fdo#104724) -> PASS


   fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
   fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
   fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
   fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
   fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
   fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 4) ==

   Missing(1): shard-glk

There glk's are but some issues:
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9268/shard-glk1/
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9268/shard-glk2/run2.log
etc...

Worth to investigate...


May be this is due to turning off and on Power well 2. Sent another 
patchset where we restart power well2 for any cdclk change only for glk.


+ Tomi too.



== Build changes ==

 * Linux: CI_DRM_4304 -> Patchwork_9268

   CI_DRM_4304: 2313a1dc588ef63d9650ccbaaf576bc4b47dc255 @
git://anongit.freedesktop.org/gfx-ci/linux
   IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
   Patchwork_9268: 7e66d7400ee9f80e00633e6cfdecc354dda8e049 @
git://anongit.freedesktop.org/gfx-ci/linux
   piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-
tip/Patchwork_9268/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 0/3] Some checkpatch fixes for i915_reg.h

2018-06-12 Thread Paulo Zanoni
Hi

This is a follow-up on the discussion we recently had on "Re:
[Intel-gfx]  ✗ Fi.CI.CHECKPATCH: warning for series starting with
[CI,1/2] drm/i915/icl: Add allowed DP rates for Icelake".

Let's fix the spacing issues once and for all, so now we can simply
block every new patch instead of having to either ask authors to
submit a new version of ignore the checkpatch errors.

Also drive-by fix some other easy and relevant issues on the file.
There are still many checkpatch issues and many conding style issues
in the file, but at least now we're fixing the problem that keeps
appearing on the mailing list.

Thanks,
Paulo

Paulo Zanoni (3):
  drm/i915/i915_reg.h: fix the checkpatch SPACING issues
  drm/i915/i915_reg.h: fix the checkpatch SPACE_BEFORE_TAB issues
  drm/i915/i915_reg.h: fix the checkpatch MACRO_ARG_PRECEDENCE issues

 drivers/gpu/drm/i915/i915_reg.h | 3236 +++
 1 file changed, 1618 insertions(+), 1618 deletions(-)

-- 
2.14.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 0/7] drm/i915: move towards kernel types

2018-06-12 Thread Lucas De Marchi
On Tue, Jun 12, 2018 at 3:15 AM Jani Nikula  wrote:
>
> On Tue, 12 Jun 2018, Tvrtko Ursulin  wrote:
> > On 12/06/2018 10:19, Jani Nikula wrote:
> >> Semi-RFC. Do we want to do this? Here's a batch of conversions that 
> >> shouldn't
> >> conflict much with in-flight patches.
> >>
> >> The trouble with mixed use is that it's inconsistent, and any remaining C99
> >> types will encourage their use. We could at least do the low hanging fruit?
> >
> > Ack from me. Doesn't seem so big to cause much pain.
> >
> > When you say low-hanging fruit, that implies you only dealt with a
> > particular class of occurrences?
>
> I meant the files which don't have massive amounts of C99 types and
> aren't under active development right now. I just wanted to avoid
> trouble for starters. ;)

If using kernel types is where we want to go (which I agree with),
maybe it would be better to have a single conversion rather than
several small ones as we are doing with dev_priv -> i915? This allows
in-flight-but-not-yet-sent patches to easily keep up with the changes
rather than conflicting every other rebase.

Lucas De Marchi

>
> > Also going forward we have to make sure we will be able to stop them
> > creeping back in. Is checkpatch perhaps covering this? Or we could put
> > something in dim?
>
> We can stop ignoring PREFER_KERNEL_TYPES in checkpatch (the ignores are
> in dim). We don't even have to change everything for that, we just need
> to change enough to make the S/N better. People tend to use the types
> near the places they change.
>
> BR,
> Jani.
>
>
> >
> > Regards,
> >
> > Tvrtko
> >
> >> $ git grep "uint\(8\|16\|32\|64\)_t" -- drivers/gpu/drm/i915/ | sed 
> >> 's/:.*//' | sort | uniq -c | sort -n
> >>
> >> BR,
> >> Jani.
> >>
> >>
> >> Jani Nikula (7):
> >>drm/i915/vbt: switch to kernel unsigned int types
> >>drm/i915/hdmi: switch to kernel unsigned int types
> >>drm/i915/uncore: switch to kernel unsigned int types
> >>drm/i915/dvo: switch to kernel unsigned int types
> >>drm/i915/backlight: switch to kernel unsigned int types
> >>drm/i915/audio: switch to kernel unsigned int types
> >>drm/i915/lspcon: switch to kernel unsigned int types
> >>
> >>   drivers/gpu/drm/i915/dvo_ch7017.c | 20 ++--
> >>   drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +++---
> >>   drivers/gpu/drm/i915/dvo_ivch.c   | 26 
> >>   drivers/gpu/drm/i915/dvo_ns2501.c | 44 
> >> +--
> >>   drivers/gpu/drm/i915/dvo_sil164.c | 10 +++---
> >>   drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
> >>   drivers/gpu/drm/i915/intel_audio.c| 36 +++---
> >>   drivers/gpu/drm/i915/intel_bios.c |  4 +--
> >>   drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 
> >>   drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
> >>   drivers/gpu/drm/i915/intel_hdmi.c | 14 -
> >>   drivers/gpu/drm/i915/intel_lspcon.c   |  2 +-
> >>   drivers/gpu/drm/i915/intel_panel.c|  8 ++---
> >>   drivers/gpu/drm/i915/intel_uncore.h   | 22 +++---
> >>   drivers/gpu/drm/i915/intel_vbt_defs.h |  2 +-
> >>   15 files changed, 120 insertions(+), 120 deletions(-)
> >>
>
> --
> Jani Nikula, Intel Open Source Graphics Center
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx



-- 
Lucas De Marchi
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: add support for perf configuration queries (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: add support for perf configuration queries (rev2)
URL   : https://patchwork.freedesktop.org/series/44290/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4308_full -> Patchwork_9277_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9277_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9277_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9277_full:

  === IGT changes ===

 Warnings 

igt@gem_mocs_settings@mocs-rc6-bsd2:
  shard-kbl:  SKIP -> PASS

igt@gem_mocs_settings@mocs-rc6-ctx-render:
  shard-kbl:  PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9277_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_hangcheck:
  shard-apl:  PASS -> DMESG-FAIL (fdo#106560)

igt@drv_selftest@mock_scatterlist:
  shard-glk:  NOTRUN -> DMESG-WARN (fdo#103667)

igt@gem_exec_schedule@pi-ringfull-render:
  shard-glk:  NOTRUN -> FAIL (fdo#103158) +1

igt@kms_available_modes_crc@available_mode_test_crc:
  shard-glk:  NOTRUN -> FAIL (fdo#106641)

igt@kms_flip@2x-plain-flip-ts-check-interruptible:
  shard-glk:  PASS -> FAIL (fdo#100368)

igt@kms_flip@flip-vs-expired-vblank:
  shard-glk:  NOTRUN -> FAIL (fdo#102887)

igt@kms_flip_tiling@flip-to-x-tiled:
  shard-glk:  NOTRUN -> FAIL (fdo#103822, fdo#104724)

igt@kms_setmode@basic:
  shard-apl:  PASS -> FAIL (fdo#99912)


 Possible fixes 

igt@drv_suspend@shrink:
  shard-kbl:  INCOMPLETE (fdo#106886, fdo#103665) -> PASS

igt@gem_ppgtt@blt-vs-render-ctxn:
  shard-kbl:  INCOMPLETE (fdo#106023, fdo#103665) -> PASS

igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
  shard-hsw:  FAIL (fdo#105767) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-hsw:  FAIL (fdo#102887) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103667 https://bugs.freedesktop.org/show_bug.cgi?id=103667
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105767 https://bugs.freedesktop.org/show_bug.cgi?id=105767
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4308 -> Patchwork_9277

  CI_DRM_4308: 355cdcfec85bdd8bea927357789f53e4dec4f7b2 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9277: 31b5046df85fcf24ed17b9d4d15e7c1164f9c324 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9277/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/psr : Add psr1 live status

2018-06-12 Thread Dhinakaran Pandiyan
On Fri, 2018-05-25 at 11:50 +0530, vathsala nagaraju wrote:
> From: Vathsala Nagaraju 
> 
> Prints live state of psr1.Extending the existing
> PSR2 live state function to cover psr1.
> 
> Tested on KBL with psr2 and psr1 panel.
> 
> v2: rebase
> v3: DK
> Rename psr2_live_status to psr_source_status.
> v4: DK
> Move EDP_PSR_STATUS_STATE_SHIFT below EDP_PSR_STATUS_STATE_MASK.
> Pass seq to psr_source_status, handle source status prints in
> psr_source_status.
> v5: Fixed CI warning messages
> 
> Cc: Rodrigo Vivi 
> Cc: Dhinakaran Pandiyan 
> 

nit: Noticed an extra space in the title before the colon.
Reviewed-by: Dhinakaran Pandiyan 

> Signed-off-by: Vathsala Nagaraju 
> ---
>  drivers/gpu/drm/i915/i915_debugfs.c | 72 ---
> --
>  drivers/gpu/drm/i915/i915_reg.h |  1 +
>  2 files changed, 49 insertions(+), 24 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_debugfs.c
> b/drivers/gpu/drm/i915/i915_debugfs.c
> index 5251544..1d45cb9 100644
> --- a/drivers/gpu/drm/i915/i915_debugfs.c
> +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> @@ -2596,27 +2596,55 @@ static int i915_guc_log_relay_release(struct
> inode *inode, struct file *file)
>   .release = i915_guc_log_relay_release,
>  };
>  
> -static const char *psr2_live_status(u32 val)
> -{
> - static const char * const live_status[] = {
> - "IDLE",
> - "CAPTURE",
> - "CAPTURE_FS",
> - "SLEEP",
> - "BUFON_FW",
> - "ML_UP",
> - "SU_STANDBY",
> - "FAST_SLEEP",
> - "DEEP_SLEEP",
> - "BUF_ON",
> - "TG_ON"
> - };
> +static void
> +psr_source_status(struct drm_i915_private *dev_priv, struct seq_file
> *m)
> +{
> + u32 val, psr_status = 0;
>  
> - val = (val & EDP_PSR2_STATUS_STATE_MASK) >>
> EDP_PSR2_STATUS_STATE_SHIFT;
> - if (val < ARRAY_SIZE(live_status))
> - return live_status[val];
> + if (dev_priv->psr.psr2_enabled) {
> + static const char * const live_status[] = {
> + "IDLE",
> + "CAPTURE",
> + "CAPTURE_FS",
> + "SLEEP",
> + "BUFON_FW",
> + "ML_UP",
> + "SU_STANDBY",
> + "FAST_SLEEP",
> + "DEEP_SLEEP",
> + "BUF_ON",
> + "TG_ON"
> + };
> + psr_status = I915_READ(EDP_PSR2_STATUS);
> + val =  (psr_status & EDP_PSR2_STATUS_STATE_MASK) >>
> + EDP_PSR2_STATUS_STATE_SHIFT;
> + if (val < ARRAY_SIZE(live_status)) {
> + seq_printf(m, "Source PSR status: %x[%s]\n",
> psr_status,
> +    live_status[val]);
> + return;
> + }
> + } else {
> + static const char * const live_status[] = {
> + "IDLE",
> + "SRDONACK",
> + "SRDENT",
> + "BUFOFF",
> + "BUFON",
> + "AUXACK",
> + "SRDOFFACK",
> + "SRDENT_ON",
> + };
> + psr_status = I915_READ(EDP_PSR_STATUS);
> + val = (psr_status & EDP_PSR_STATUS_STATE_MASK) >>
> + EDP_PSR_STATUS_STATE_SHIFT;
^alignment is different from the PSR2 block.
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for tests/i915-query: new tests for listing perf configurations

2018-06-12 Thread Patchwork
== Series Details ==

Series: tests/i915-query: new tests for listing perf configurations
URL   : https://patchwork.freedesktop.org/series/44644/
State : failure

== Summary ==

= CI Bug Log - changes from IGT_4516_full -> IGTPW_1451_full =

== Summary - FAILURE ==

  Serious unknown changes coming with IGTPW_1451_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_1451_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44644/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in IGTPW_1451_full:

  === IGT changes ===

 Possible regressions 

igt@kms_cursor_legacy@flip-vs-cursor-varying-size:
  shard-hsw:  PASS -> FAIL


 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  PASS -> SKIP

igt@gem_mocs_settings@mocs-rc6-ctx-dirty-render:
  shard-kbl:  SKIP -> PASS +1


== Known issues ==

  Here are the changes found in IGTPW_1451_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_suspend@shrink:
  shard-hsw:  PASS -> INCOMPLETE (fdo#103540)

igt@gem_busy@basic-busy-default:
  shard-snb:  PASS -> INCOMPLETE (fdo#105411)

igt@gem_exec_schedule@pi-ringfull-bsd:
  shard-glk:  NOTRUN -> FAIL (fdo#103158)

igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
  shard-glk:  NOTRUN -> FAIL (fdo#105703)

igt@kms_available_modes_crc@available_mode_test_crc:
  shard-snb:  PASS -> FAIL (fdo#106641)

igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
  shard-glk:  PASS -> FAIL (fdo#105454, fdo#106509)

igt@kms_flip@flip-vs-expired-vblank:
  shard-hsw:  PASS -> FAIL (fdo#105189)

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-hsw:  PASS -> FAIL (fdo#100368)

igt@kms_flip_tiling@flip-to-x-tiled:
  shard-glk:  NOTRUN -> FAIL (fdo#104724)

igt@kms_flip_tiling@flip-x-tiled:
  shard-glk:  NOTRUN -> FAIL (fdo#103822, fdo#104724) +1

igt@kms_setmode@basic:
  shard-apl:  PASS -> FAIL (fdo#99912)

igt@kms_sysfs_edid_timing:
  shard-glk:  NOTRUN -> WARN (fdo#100047)


 Possible fixes 

igt@drv_selftest@live_hangcheck:
  shard-apl:  DMESG-FAIL (fdo#106560) -> PASS

igt@kms_cursor_legacy@cursor-vs-flip-toggle:
  shard-hsw:  FAIL (fdo#103355) -> PASS

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-glk:  FAIL (fdo#100368) -> PASS +1

igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-wc:
  shard-snb:  INCOMPLETE (fdo#105411) -> PASS

igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
  shard-snb:  FAIL (fdo#103166, fdo#104724) -> PASS

igt@perf_pmu@rc6-runtime-pm-long:
  shard-apl:  FAIL (fdo#105010) -> PASS
  shard-kbl:  FAIL (fdo#105010) -> PASS


  fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
  fdo#103355 https://bugs.freedesktop.org/show_bug.cgi?id=103355
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105010 https://bugs.freedesktop.org/show_bug.cgi?id=105010
  fdo#105189 https://bugs.freedesktop.org/show_bug.cgi?id=105189
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* IGT: IGT_4516 -> IGTPW_1451
* Linux: CI_DRM_4306 -> CI_DRM_4307

  CI_DRM_4306: 46ac5b5698d4aea58eb440f1ec47d734762259f7 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  CI_DRM_4307: 0cf6f8f74cad691364d738d1607bc45945f3a5f9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1451: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1451/
  IGT_4516: 95bfb2902473b9f4e644c3eb831fdf110d87ed4f @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

For more details see: 

[Intel-gfx] [PATCH v4 2/2] drm/i915: Shut off PW2 when changing cdclk on glk

2018-06-12 Thread Abhay Kumar
From: Ville Syrjälä 

Apparently the audio hardware gets confused if it's powered up when
change the cdclk frequency. Force PW2 (which is where audio lives)
off when we do the cdclk reprogramming.

This is a rather big hack. If something is using PW2 when we do this
things wil break. I don't think there should be anything active on
the display side since we've turned off all the pipes and we've locked
out gmbus and aux, but I may be overlooking something. The problem
is more on the audio side. If audio is active when we do this PW2
toggle I'm sure something "interesting" will happen. But presumably
something would also happen if we just changed cdclk without the PW2
toggle.

A better fix would involve somehow forcing everything to drop
their PW2 references, which isn't trivial. And to make the audio driver
participate in this scheme we'd definitely need some kind of pre/post
cdclk change notify hooks in the audio component so that i915 can
actually inform the audio driver that the cdclk is going to be changed.
Either that or the audio driver would have to promise never to touch
the hardware when the pipes are off (which is how the VLV/CHV LPE
audio driver works IIRC).

Even with this hacky scheme it would make more sense to me to have
the pre/post cdclk change hooks so that the audio driver is actually
informed when the cdclk change/pw2 toggle will occur. What the audio
driver would do to prepare itself I don't actually know.

Signed-off-by: Ville Syrjälä 
Signed-off-by: Abhay Kumar 
---
 drivers/gpu/drm/i915/intel_cdclk.c  | 14 ++
 drivers/gpu/drm/i915/intel_drv.h|  5 +
 drivers/gpu/drm/i915/intel_runtime_pm.c | 34 +
 3 files changed, 53 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_cdclk.c 
b/drivers/gpu/drm/i915/intel_cdclk.c
index 0f0aea900ceb..6557f1e9cf9e 100644
--- a/drivers/gpu/drm/i915/intel_cdclk.c
+++ b/drivers/gpu/drm/i915/intel_cdclk.c
@@ -1356,6 +1356,7 @@ static void bxt_set_cdclk(struct drm_i915_private 
*dev_priv,
 {
int cdclk = cdclk_state->cdclk;
int vco = cdclk_state->vco;
+   bool enable_pw2 = false;
u32 val, divider;
int ret;
 
@@ -1381,6 +1382,14 @@ static void bxt_set_cdclk(struct drm_i915_private 
*dev_priv,
}
 
/*
+* On GLK HDA apparently gets confused if
+* cdclk is changed while PW2 is on
+*/
+   if (IS_GEMINILAKE(dev_priv))
+   enable_pw2 = intel_display_power_toggle_start(dev_priv,
+ SKL_DISP_PW_2);
+
+   /*
 * Inform power controller of upcoming frequency change. BSpec
 * requires us to wait up to 150usec, but that leads to timeouts;
 * the 2ms used here is based on experiment.
@@ -1437,6 +1446,11 @@ static void bxt_set_cdclk(struct drm_i915_private 
*dev_priv,
}
 
intel_update_cdclk(dev_priv);
+
+   if (IS_GEMINILAKE(dev_priv))
+   intel_display_power_toggle_end(dev_priv,
+  SKL_DISP_PW_2,
+  enable_pw2);
 }
 
 static void bxt_sanitize_cdclk(struct drm_i915_private *dev_priv)
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index 0da17ad056ec..c4fc107ad8cd 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1950,6 +1950,11 @@ bool intel_display_power_get_if_enabled(struct 
drm_i915_private *dev_priv,
enum intel_display_power_domain domain);
 void intel_display_power_put(struct drm_i915_private *dev_priv,
 enum intel_display_power_domain domain);
+bool intel_display_power_toggle_start(struct drm_i915_private *dev_priv,
+ enum i915_power_well_id power_well_id);
+void intel_display_power_toggle_end(struct drm_i915_private *dev_priv,
+   enum i915_power_well_id power_well_id,
+   bool enable);
 void icl_dbuf_slices_update(struct drm_i915_private *dev_priv,
u8 req_slices);
 
diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c 
b/drivers/gpu/drm/i915/intel_runtime_pm.c
index 53a6eaa9671a..86a4b788e224 100644
--- a/drivers/gpu/drm/i915/intel_runtime_pm.c
+++ b/drivers/gpu/drm/i915/intel_runtime_pm.c
@@ -2809,6 +2809,40 @@ static void skl_display_core_uninit(struct 
drm_i915_private *dev_priv)
usleep_range(10, 30);   /* 10 us delay per Bspec */
 }
 
+bool intel_display_power_toggle_start(struct drm_i915_private *dev_priv,
+ enum i915_power_well_id power_well_id)
+{
+   struct i915_power_domains *power_domains = _priv->power_domains;
+   struct i915_power_well *well = lookup_power_well(dev_priv, 
power_well_id);
+   bool was_enabled;
+
+   mutex_lock(_domains->lock);
+
+   was_enabled = 

[Intel-gfx] [PATCH v4 1/2] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled

2018-06-12 Thread Abhay Kumar
From: Ville Syrjälä 

CDCLK has to be at least twice the BLCK regardless of audio. Audio
driver has to probe using this hook and increase the clock even in
absence of any display.

v2: Use atomic refcount for get_power, put_power so that we can
call each once(Abhay).
v3: Reset power well 2 to avoid any transaction on iDisp link
during cdclk change(Abhay).
v4: Remove Power well 2 reset workaround(Ville).

Signed-off-by: Ville Syrjälä 
Signed-off-by: Abhay Kumar 
---
 drivers/gpu/drm/i915/i915_drv.h  |  3 ++
 drivers/gpu/drm/i915/i915_reg.h  |  4 +++
 drivers/gpu/drm/i915/intel_audio.c   | 67 +---
 drivers/gpu/drm/i915/intel_cdclk.c   | 29 +---
 drivers/gpu/drm/i915/intel_display.c |  7 +++-
 drivers/gpu/drm/i915/intel_drv.h |  2 ++
 6 files changed, 87 insertions(+), 25 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 6104d7115054..a4a386a5db69 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1702,6 +1702,7 @@ struct drm_i915_private {
unsigned int hpll_freq;
unsigned int fdi_pll_freq;
unsigned int czclk_freq;
+   u32 get_put_refcount;
 
struct {
/*
@@ -1719,6 +1720,8 @@ struct drm_i915_private {
struct intel_cdclk_state actual;
/* The current hardware cdclk state */
struct intel_cdclk_state hw;
+
+   int force_min_cdclk;
} cdclk;
 
/**
diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 987def26ce82..cef770184245 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8869,6 +8869,10 @@ enum skl_power_gate {
  * SKL Clocks
  */
 
+/* Power well 2 */
+#define POWER_WELL_2   _MMIO(0x45404)
+#define POWER_WELL_2_REQUEST   (1<<31)
+
 /* CDCLK_CTL */
 #define CDCLK_CTL  _MMIO(0x46000)
 #define  CDCLK_FREQ_SEL_MASK   (3 << 26)
diff --git a/drivers/gpu/drm/i915/intel_audio.c 
b/drivers/gpu/drm/i915/intel_audio.c
index 3ea566f99450..ca8f04c7cbb3 100644
--- a/drivers/gpu/drm/i915/intel_audio.c
+++ b/drivers/gpu/drm/i915/intel_audio.c
@@ -618,7 +618,6 @@ void intel_audio_codec_enable(struct intel_encoder *encoder,
 
if (!connector->eld[0])
return;
-
DRM_DEBUG_DRIVER("ELD on [CONNECTOR:%d:%s], [ENCODER:%d:%s]\n",
 connector->base.id,
 connector->name,
@@ -713,14 +712,74 @@ void intel_init_audio_hooks(struct drm_i915_private 
*dev_priv)
}
 }
 
+static void glk_force_audio_cdclk(struct drm_i915_private *dev_priv,
+   bool enable)
+{
+   struct drm_modeset_acquire_ctx ctx;
+   struct drm_atomic_state *state;
+   int ret;
+
+   drm_modeset_acquire_init(, 0);
+   state = drm_atomic_state_alloc(_priv->drm);
+   if (WARN_ON(!state))
+   return;
+
+   state->acquire_ctx = 
+
+retry:
+   to_intel_atomic_state(state)->modeset = true;
+   to_intel_atomic_state(state)->cdclk.force_min_cdclk =
+   enable ? 2 * 96000 : 0;
+
+   /*
+* Protects dev_priv->cdclk.force_min_cdclk
+* Need to lock this here in case we have no active pipes
+* and thus wouldn't lock it during the commit otherwise.
+*/
+   ret = drm_modeset_lock(_priv->drm.mode_config.connection_mutex, 
);
+   if (!ret)
+   ret = drm_atomic_commit(state);
+
+   if (ret == -EDEADLK) {
+   drm_atomic_state_clear(state);
+   drm_modeset_backoff();
+   goto retry;
+   }
+
+   WARN_ON(ret);
+
+   drm_atomic_state_put(state);
+
+   drm_modeset_drop_locks();
+   drm_modeset_acquire_fini();
+}
+
 static void i915_audio_component_get_power(struct device *kdev)
 {
-   intel_display_power_get(kdev_to_i915(kdev), POWER_DOMAIN_AUDIO);
+   struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
+
+   dev_priv->get_put_refcount++;
+
+   /* Force cdclk to 2*BCLK during first time get power call */
+   if (dev_priv->get_put_refcount == 1)
+   if (IS_CANNONLAKE(dev_priv) || IS_GEMINILAKE(dev_priv))
+   glk_force_audio_cdclk(dev_priv, true);
+
+   intel_display_power_get(dev_priv, POWER_DOMAIN_AUDIO);
 }
 
 static void i915_audio_component_put_power(struct device *kdev)
 {
-   intel_display_power_put(kdev_to_i915(kdev), POWER_DOMAIN_AUDIO);
+   struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
+
+   dev_priv->get_put_refcount--;
+
+   /* Force required cdclk during last time put power call */
+   if (dev_priv->get_put_refcount == 0)
+   if (IS_CANNONLAKE(dev_priv) || IS_GEMINILAKE(dev_priv))
+   glk_force_audio_cdclk(dev_priv, false);
+
+   intel_display_power_put(dev_priv, POWER_DOMAIN_AUDIO);
 }
 
 

[Intel-gfx] [PATCH v4 0/2] Enable Dynamic cdclk and HDA together on GLK

2018-06-12 Thread Abhay Kumar
Patches needed to change cdclk to 2*BCLK before accessing HDA Codec.

Ville Syrjälä (2):
  drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled
  drm/i915: Shut off PW2 when changing cdclk on glk

 drivers/gpu/drm/i915/i915_drv.h |  3 ++
 drivers/gpu/drm/i915/i915_reg.h |  4 ++
 drivers/gpu/drm/i915/intel_audio.c  | 67 +++--
 drivers/gpu/drm/i915/intel_cdclk.c  | 43 +++--
 drivers/gpu/drm/i915/intel_display.c|  7 +++-
 drivers/gpu/drm/i915/intel_drv.h|  7 
 drivers/gpu/drm/i915/intel_runtime_pm.c | 34 +
 7 files changed, 140 insertions(+), 25 deletions(-)

-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/2] drm/i915/icl: Add allowed DP rates for Icelake

2018-06-12 Thread Rodrigo Vivi
On Tue, Jun 12, 2018 at 11:46:08AM +0300, Jani Nikula wrote:
> On Mon, 11 Jun 2018, Paulo Zanoni  wrote:
> > Em Seg, 2018-06-11 às 22:35 +, Patchwork escreveu:
> >> == Series Details ==
> >> 
> >> Series: series starting with [CI,1/2] drm/i915/icl: Add allowed DP
> >> rates for Icelake
> >> URL   : https://patchwork.freedesktop.org/series/44595/
> >> State : warning
> >> 
> >> == Summary ==
> >> 
> >> $ dim checkpatch origin/drm-tip
> >> e6e6b2f7af58 drm/i915/icl: Add allowed DP rates for Icelake
> >> 3fe43cb729fe drm/i915/dp: Add support for HBR3 and TPS4 during link
> >> training
> >> -:26: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
> >> #26: FILE: drivers/gpu/drm/i915/i915_reg.h:8694:
> >> +#define  DP_TP_CTL_LINK_TRAIN_PAT4(5<<8)
> >
> > Dear maintainers,
> >
> > I get this type of error way too often. What's the most desirable thing
> > here?
> >
> > 1 - Make it "(5 << 8)" so checkpatch doesn't complain, which will leave
> > the coding style inconsistent with the surrounding lines.
> 
> I don't like the inconsistency.

me neither...

> 
> > 2 - Drive-by fix all the bits around it so everybody in the same
> > definition has nice spaces, 2.a: in the same patch, 2.b: in a separate
> > patch.
> 
> Fine by me. Both a and b. I was kind of hoping this would have happened
> more.
> 
> > 3 - Just ignore the checkpatch message, push code as-is.
> 
> Also fine by me.

what I'm currently doing...

> 
> > 4 - Blacklist this check from checkpatch.
> 
> Unfortunately the SPACING class in checkpatch would silence much, much
> more than just this specific thing, so it would be a net negative.

Let's keep the style we want there even if this cause warnings while we
haven't finished the standardization.

> 
> > 5 - Submit a separate patch fixing all the spacing errors on i915_reg.h
> > once and for all. Live happily ever after.
> 
> It would be annoying for a while with conflicts, but I'd be fine. Not
> sure if it would be better to do it in some arbitrary chunks rather than
> mass change.

I believe I prefer one mass commit. So we convert once for all
and cause rebase conflict on internal branch only once. So we solve all
at one and be happy...

> 
> > 6 - Submit a separate patch converting everything to BIT() on
> > i915_reg.h.
> 
> Same as above.

Do we really want BIT everywhere?!

Thanks,
Rodrigo.

> 
> BR,
> Jani.
> 
> -- 
> Jani Nikula, Intel Open Source Graphics Center
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for Problems in intel_panel_fitter.1 (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: Problems in intel_panel_fitter.1 (rev2)
URL   : https://patchwork.freedesktop.org/series/3953/
State : failure

== Summary ==

Applying: Problems in intel_panel_fitter.1
error: sha1 information is lacking or useless (intel_panel_fitter.1).
error: could not build fake ancestor
Patch failed at 0001 Problems in intel_panel_fitter.1
Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] Problems in intel_panel_fitter.1

2018-06-12 Thread esr
This is automatically generated email about markup problems in a man
page for which you appear to be responsible.  If you are not the right
person or list, please tell me so I can correct my database.

See http://catb.org/~esr/doclifter/bugs.html for details on how and
why these patches were generated.  Feel free to email me with any
questions.  Note: These patches do not change the modification date of
any manual page.  You may wish to do that by hand.

I apologize if this message seems spammy or impersonal. The volume of
markup bugs I am tracking is over five hundred - there is no real
alternative to generating bugmail from a database and template.

--
 Eric S. Raymond
Problems with intel_panel_fitter.1:

My translator trips over a useless command in list markup.

--- intel_panel_fitter.1-unpatched  2013-05-25 10:53:50.568627955 -0400
+++ intel_panel_fitter.12013-05-25 10:54:08.112627627 -0400
@@ -30,7 +30,6 @@
 .TP
 .B -h
 prints the help message.
-.SS
 
 .SH EXAMPLES
 .TP
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 2/3] drm: Print bad user modes

2018-06-12 Thread Harry Wentland
On 2018-06-11 03:34 PM, Ville Syrjala wrote:
> From: Ville Syrjälä 
> 
> Print out the modeline when we reject a bad user mode. Avoids having to
> guess why it was rejected.
> 
> Signed-off-by: Ville Syrjälä 

Reviewed-by: Harry Wentland 

Harry

> ---
>  drivers/gpu/drm/drm_atomic.c| 20 +---
>  drivers/gpu/drm/drm_crtc.c  |  4 +++-
>  drivers/gpu/drm/drm_crtc_internal.h |  3 +++
>  drivers/gpu/drm/drm_modes.c |  2 +-
>  4 files changed, 24 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index d7de83a6c1c2..5fe5e06062a9 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -400,10 +400,24 @@ int drm_atomic_set_mode_prop_for_crtc(struct 
> drm_crtc_state *state,
>   memset(>mode, 0, sizeof(state->mode));
>  
>   if (blob) {
> - if (blob->length != sizeof(struct drm_mode_modeinfo) ||
> - drm_mode_convert_umode(state->crtc->dev, >mode,
> -blob->data))
> + int ret;
> +
> + if (blob->length != sizeof(struct drm_mode_modeinfo)) {
> + DRM_DEBUG_ATOMIC("[CRTC:%d:%s] bad mode blob length: 
> %zu\n",
> +  crtc->base.id, crtc->name,
> +  blob->length);
> + return -EINVAL;
> + }
> +
> + ret = drm_mode_convert_umode(crtc->dev,
> +  >mode, blob->data);
> + if (ret) {
> + DRM_DEBUG_ATOMIC("[CRTC:%d:%s] invalid mode (ret=%d, 
> status=%s):\n",
> +  crtc->base.id, crtc->name,
> +  ret, 
> drm_get_mode_status_name(state->mode.status));
> + drm_mode_debug_printmodeline(>mode);
>   return -EINVAL;
> + }
>  
>   state->mode_blob = drm_property_blob_get(blob);
>   state->enable = true;
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index 53828fc8d911..163d82ac7d76 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -649,7 +649,9 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
>  
>   ret = drm_mode_convert_umode(dev, mode, _req->mode);
>   if (ret) {
> - DRM_DEBUG_KMS("Invalid mode\n");
> + DRM_DEBUG_KMS("Invalid mode (ret=%d, status=%s)\n",
> +   ret, 
> drm_get_mode_status_name(mode->status));
> + drm_mode_debug_printmodeline(mode);
>   goto out;
>   }
>  
> diff --git a/drivers/gpu/drm/drm_crtc_internal.h 
> b/drivers/gpu/drm/drm_crtc_internal.h
> index 5d307b23a4e6..34499800932a 100644
> --- a/drivers/gpu/drm/drm_crtc_internal.h
> +++ b/drivers/gpu/drm/drm_crtc_internal.h
> @@ -56,6 +56,9 @@ int drm_mode_setcrtc(struct drm_device *dev,
>  int drm_modeset_register_all(struct drm_device *dev);
>  void drm_modeset_unregister_all(struct drm_device *dev);
>  
> +/* drm_modes.c */
> +const char *drm_get_mode_status_name(enum drm_mode_status status);
> +
>  /* IOCTLs */
>  int drm_mode_getresources(struct drm_device *dev,
> void *data, struct drm_file *file_priv);
> diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
> index c78ca0e84ffd..7f552d5fa88e 100644
> --- a/drivers/gpu/drm/drm_modes.c
> +++ b/drivers/gpu/drm/drm_modes.c
> @@ -1257,7 +1257,7 @@ static const char * const drm_mode_status_names[] = {
>  
>  #undef MODE_STATUS
>  
> -static const char *drm_get_mode_status_name(enum drm_mode_status status)
> +const char *drm_get_mode_status_name(enum drm_mode_status status)
>  {
>   int index = status + 3;
>  
> 
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 1/3] drm/atomic: Improve debug messages

2018-06-12 Thread Harry Wentland
On 2018-06-11 03:34 PM, Ville Syrjala wrote:
> From: Ville Syrjälä 
> 
> Print the id/name of the object we're dealing with. Makes it easier to
> figure out what's going on. Also toss in a few extra debug prints that
> might be useful.
> 
> Signed-off-by: Ville Syrjälä 

Reviewed-by: Harry Wentland 

Harry

> ---
>  drivers/gpu/drm/drm_atomic.c | 88 
> ++--
>  1 file changed, 61 insertions(+), 27 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index ee4b43b9404e..d7de83a6c1c2 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -339,6 +339,7 @@ static s32 __user *get_out_fence_for_crtc(struct 
> drm_atomic_state *state,
>  int drm_atomic_set_mode_for_crtc(struct drm_crtc_state *state,
>const struct drm_display_mode *mode)
>  {
> + struct drm_crtc *crtc = state->crtc;
>   struct drm_mode_modeinfo umode;
>  
>   /* Early return for no change. */
> @@ -359,13 +360,13 @@ int drm_atomic_set_mode_for_crtc(struct drm_crtc_state 
> *state,
>  
>   drm_mode_copy(>mode, mode);
>   state->enable = true;
> - DRM_DEBUG_ATOMIC("Set [MODE:%s] for CRTC state %p\n",
> -  mode->name, state);
> + DRM_DEBUG_ATOMIC("Set [MODE:%s] for [CRTC:%d:%s] state %p\n",
> +  mode->name, crtc->base.id, crtc->name, state);
>   } else {
>   memset(>mode, 0, sizeof(state->mode));
>   state->enable = false;
> - DRM_DEBUG_ATOMIC("Set [NOMODE] for CRTC state %p\n",
> -  state);
> + DRM_DEBUG_ATOMIC("Set [NOMODE] for [CRTC:%d:%s] state %p\n",
> +  crtc->base.id, crtc->name, state);
>   }
>  
>   return 0;
> @@ -388,6 +389,8 @@ EXPORT_SYMBOL(drm_atomic_set_mode_for_crtc);
>  int drm_atomic_set_mode_prop_for_crtc(struct drm_crtc_state *state,
>struct drm_property_blob *blob)
>  {
> + struct drm_crtc *crtc = state->crtc;
> +
>   if (blob == state->mode_blob)
>   return 0;
>  
> @@ -404,12 +407,13 @@ int drm_atomic_set_mode_prop_for_crtc(struct 
> drm_crtc_state *state,
>  
>   state->mode_blob = drm_property_blob_get(blob);
>   state->enable = true;
> - DRM_DEBUG_ATOMIC("Set [MODE:%s] for CRTC state %p\n",
> -  state->mode.name, state);
> + DRM_DEBUG_ATOMIC("Set [MODE:%s] for [CRTC:%d:%s] state %p\n",
> +  state->mode.name, crtc->base.id, crtc->name,
> +  state);
>   } else {
>   state->enable = false;
> - DRM_DEBUG_ATOMIC("Set [NOMODE] for CRTC state %p\n",
> -  state);
> + DRM_DEBUG_ATOMIC("Set [NOMODE] for [CRTC:%d:%s] state %p\n",
> +  crtc->base.id, crtc->name, state);
>   }
>  
>   return 0;
> @@ -539,10 +543,14 @@ int drm_atomic_crtc_set_property(struct drm_crtc *crtc,
>   return -EFAULT;
>  
>   set_out_fence_for_crtc(state->state, crtc, fence_ptr);
> - } else if (crtc->funcs->atomic_set_property)
> + } else if (crtc->funcs->atomic_set_property) {
>   return crtc->funcs->atomic_set_property(crtc, state, property, 
> val);
> - else
> + } else {
> + DRM_DEBUG_ATOMIC("[CRTC:%d:%s] unknown property 
> [PROP:%d:%s]]\n",
> +  crtc->base.id, crtc->name,
> +  property->base.id, property->name);
>   return -EINVAL;
> + }
>  
>   return 0;
>  }
> @@ -799,8 +807,11 @@ static int drm_atomic_plane_set_property(struct 
> drm_plane *plane,
>   } else if (property == plane->alpha_property) {
>   state->alpha = val;
>   } else if (property == plane->rotation_property) {
> - if (!is_power_of_2(val & DRM_MODE_ROTATE_MASK))
> + if (!is_power_of_2(val & DRM_MODE_ROTATE_MASK)) {
> + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] bad rotation bitmask: 
> 0x%llx\n",
> +  plane->base.id, plane->name, val);
>   return -EINVAL;
> + }
>   state->rotation = val;
>   } else if (property == plane->zpos_property) {
>   state->zpos = val;
> @@ -812,6 +823,9 @@ static int drm_atomic_plane_set_property(struct drm_plane 
> *plane,
>   return plane->funcs->atomic_set_property(plane, state,
>   property, val);
>   } else {
> + DRM_DEBUG_ATOMIC("[PLANE:%d:%s] unknown property 
> [PROP:%d:%s]]\n",
> +  plane->base.id, plane->name,
> +  property->base.id, property->name);
>   return -EINVAL;
>   }
>  

Re: [Intel-gfx] [CI 1/2] drm/i915/icl: Add allowed DP rates for Icelake

2018-06-12 Thread Manasi Navare
On Tue, Jun 12, 2018 at 03:15:53PM +0300, Ville Syrjälä wrote:
> On Mon, Jun 11, 2018 at 03:26:54PM -0700, Paulo Zanoni wrote:
> > From: Manasi Navare 
> > 
> > For ICL, on Combo PHY the allowed max rates are:
> >  - HBR3 8.1 eDP (DDIA)
> >  - HBR2 5.4 DisplayPort (DDIB)
> > and for MG PHY/TC DDI Ports allowed DP rates are:
> >  - HBR3 8.1 DisplayPort (DP alternate mode, DP over TBT,
> >  - DP on legacy connector - DDIC/D/E/F)
> > 
> > Cc: Rodrigo Vivi 
> > Cc: Jani Nikula 
> > Reviewed-by: James Ausmus 
> > Signed-off-by: Manasi Navare 
> > Signed-off-by: James Ausmus 
> > [Paulo: bikeshed to keep future platforms on "else".]
> > Signed-off-by: Paulo Zanoni 
> > ---
> >  drivers/gpu/drm/i915/intel_dp.c | 21 +++--
> >  1 file changed, 19 insertions(+), 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/i915/intel_dp.c 
> > b/drivers/gpu/drm/i915/intel_dp.c
> > index 37b9f62aeb6e..8371159cc192 100644
> > --- a/drivers/gpu/drm/i915/intel_dp.c
> > +++ b/drivers/gpu/drm/i915/intel_dp.c
> > @@ -256,6 +256,20 @@ static int cnl_max_source_rate(struct intel_dp 
> > *intel_dp)
> > return 81;
> >  }
> >  
> > +static int icl_max_source_rate(struct intel_dp *intel_dp)
> > +{
> > +   struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> > +   enum port port = dig_port->base.port;
> > +
> > +   /* On Combo PHY port A max speed is HBR3 for all Vccio voltages
> > +* and on Combo PHY Port B the maximum supported is HBR2.
> > +*/
> 
> And what about the other ports? If port B is the only
> exception why are we even discussing port A specifically
> here?

All the MG PHY ports (C/D/E/F)  support a max of HBR3 that is 81 but for
Combo PHY ports which is Port A or B, HBR3 only supported for Port A
but for Port B it is max of HBR2 which is 54 hence the comment for Combo PHY
ports and if port B then just return HBR2

Manasi

> 
> > +   if (port == PORT_B)
> > +   return 54;
> > +
> > +   return 81;
> > +}
> > +
> >  static void
> >  intel_dp_set_source_rates(struct intel_dp *intel_dp)
> >  {
> > @@ -285,10 +299,13 @@ intel_dp_set_source_rates(struct intel_dp *intel_dp)
> > /* This should only be done once */
> > WARN_ON(intel_dp->source_rates || intel_dp->num_source_rates);
> >  
> > -   if (IS_CANNONLAKE(dev_priv)) {
> > +   if (INTEL_GEN(dev_priv) >= 10) {
> > source_rates = cnl_rates;
> > size = ARRAY_SIZE(cnl_rates);
> > -   max_rate = cnl_max_source_rate(intel_dp);
> > +   if (INTEL_GEN(dev_priv) == 10)
> > +   max_rate = cnl_max_source_rate(intel_dp);
> > +   else
> > +   max_rate = icl_max_source_rate(intel_dp);
> > } else if (IS_GEN9_LP(dev_priv)) {
> > source_rates = bxt_rates;
> > size = ARRAY_SIZE(bxt_rates);
> > -- 
> > 2.14.4
> > 
> > ___
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> -- 
> Ville Syrjälä
> Intel
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (rev3)

2018-06-12 Thread Saarinen, Jani
HI, 

> -Original Message-
> From: Intel-gfx [mailto:intel-gfx-boun...@lists.freedesktop.org] On Behalf
> Of Patchwork
> Sent: tiistai 12. kesäkuuta 2018 11.38
> To: Kumar, Abhay 
> Cc: intel-gfx@lists.freedesktop.org
> Subject: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Force 2*96 MHz cdclk 
> on
> glk/cnl when audio power is enabled (rev3)
> 
> == Series Details ==
> 
> Series: drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is
> enabled (rev3)
> URL   : https://patchwork.freedesktop.org/series/42459/
> State : success
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_4304_full -> Patchwork_9268_full =
> 
> == Summary - WARNING ==
> 
>   Minor unknown changes coming with Patchwork_9268_full need to be
> verified
>   manually.
> 
>   If you think the reported changes have nothing to do with the changes
>   introduced in Patchwork_9268_full, please notify your bug team to allow
> them
>   to document this new failure mode, which will reduce false positives in CI.
> 
> 
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in
> Patchwork_9268_full:
> 
>   === IGT changes ===
> 
>  Warnings 
> 
> igt@gem_exec_schedule@deep-bsd2:
>   shard-kbl:  PASS -> SKIP
> 
> igt@gem_exec_schedule@deep-vebox:
>   shard-kbl:  SKIP -> PASS
> 
> 
> == Known issues ==
> 
>   Here are the changes found in Patchwork_9268_full that come from known
> issues:
> 
>   === IGT changes ===
> 
>  Issues hit 
> 
> igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
>   shard-hsw:  PASS -> FAIL (fdo#102887)
> 
> igt@kms_setmode@basic:
>   shard-kbl:  PASS -> FAIL (fdo#99912)
> 
> 
>  Possible fixes 
> 
> igt@drv_selftest@live_gtt:
>   shard-kbl:  FAIL (fdo#105347) -> PASS
> 
> igt@drv_suspend@shrink:
>   shard-hsw:  INCOMPLETE (fdo#103540) -> PASS
> 
> igt@kms_rotation_crc@sprite-rotation-180:
>   shard-hsw:  FAIL (fdo#103925, fdo#104724) -> PASS
> 
> 
>   fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
>   fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
>   fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
>   fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
>   fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
>   fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
> 
> 
> == Participating hosts (5 -> 4) ==
> 
>   Missing(1): shard-glk
There glk's are but some issues:
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9268/shard-glk1/
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9268/shard-glk2/run2.log
etc...

Worth to investigate...

+ Tomi too. 

> 
> 
> == Build changes ==
> 
> * Linux: CI_DRM_4304 -> Patchwork_9268
> 
>   CI_DRM_4304: 2313a1dc588ef63d9650ccbaaf576bc4b47dc255 @
> git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @
> git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_9268: 7e66d7400ee9f80e00633e6cfdecc354dda8e049 @
> git://anongit.freedesktop.org/gfx-ci/linux
>   piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @
> git://anongit.freedesktop.org/piglit
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-
> tip/Patchwork_9268/shards.html
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gtt: Only keep gen6 page directories pinned while active

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/gtt: Only keep gen6 page directories pinned while active
URL   : https://patchwork.freedesktop.org/series/44649/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4308 -> Patchwork_9278 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9278 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9278, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44649/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9278:

  === IGT changes ===

 Warnings 

igt@gem_exec_gttfill@basic:
  fi-pnv-d510:SKIP -> PASS


== Known issues ==

  Here are the changes found in Patchwork_9278 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_suspend@basic-s4-devices:
  fi-hsw-4770:PASS -> FAIL (fdo#105900)
  fi-hsw-4770r:   PASS -> FAIL (fdo#105900)


 Possible fixes 

igt@drv_module_reload@basic-reload:
  fi-ilk-650: DMESG-WARN (fdo#106387) -> PASS

igt@kms_flip@basic-flip-vs-dpms:
  fi-glk-j4005:   DMESG-WARN (fdo#106000) -> PASS +1

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   FAIL (fdo#100368) -> PASS

igt@kms_pipe_crc_basic@read-crc-pipe-c:
  fi-glk-j4005:   DMESG-WARN (fdo#105719) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106387 https://bugs.freedesktop.org/show_bug.cgi?id=106387


== Participating hosts (43 -> 38) ==

  Missing(5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4308 -> Patchwork_9278

  CI_DRM_4308: 355cdcfec85bdd8bea927357789f53e4dec4f7b2 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9278: e8c416abf96f31a6541d5a052849db26eee8ef8b @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

e8c416abf96f drm/i915/gtt: Only keep gen6 page directories pinned while active

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9278/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: add support for perf configuration queries (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: add support for perf configuration queries (rev2)
URL   : https://patchwork.freedesktop.org/series/44290/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4308 -> Patchwork_9277 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44290/revisions/2/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9277 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_ctx_create@basic-files:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#105719)

igt@kms_busy@basic-flip-a:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097)

igt@kms_flip@basic-flip-vs-modeset:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097, fdo#106000)

igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
  fi-cnl-psr: PASS -> FAIL (fdo#103481)


 Possible fixes 

igt@drv_module_reload@basic-reload:
  fi-ilk-650: DMESG-WARN (fdo#106387) -> PASS

igt@kms_flip@basic-flip-vs-dpms:
  fi-glk-j4005:   DMESG-WARN (fdo#106000) -> PASS +1

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   FAIL (fdo#100368) -> PASS

igt@kms_pipe_crc_basic@read-crc-pipe-c:
  fi-glk-j4005:   DMESG-WARN (fdo#105719) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
  fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
  fdo#106387 https://bugs.freedesktop.org/show_bug.cgi?id=106387


== Participating hosts (43 -> 38) ==

  Missing(5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4308 -> Patchwork_9277

  CI_DRM_4308: 355cdcfec85bdd8bea927357789f53e4dec4f7b2 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4517: e94ce40798e35d2e3c4494f50b617908066bbf8b @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9277: 31b5046df85fcf24ed17b9d4d15e7c1164f9c324 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

31b5046df85f drm/i915: add support for perf configuration queries

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9277/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: add support for perf configuration queries (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: add support for perf configuration queries (rev2)
URL   : https://patchwork.freedesktop.org/series/44290/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm/i915: add support for perf configuration queries
-drivers/gpu/drm/i915/selftests/../i915_drv.h:3680:16: warning: expression 
using sizeof(void)
+drivers/gpu/drm/i915/selftests/../i915_drv.h:3686:16: warning: expression 
using sizeof(void)

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for tests/i915-query: new tests for listing perf configurations

2018-06-12 Thread Patchwork
== Series Details ==

Series: tests/i915-query: new tests for listing perf configurations
URL   : https://patchwork.freedesktop.org/series/44644/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4307 -> IGTPW_1451 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44644/revisions/1/mbox/

== Known issues ==

  Here are the changes found in IGTPW_1451 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_suspend@basic-s3:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097)

igt@gem_exec_suspend@basic-s4-devices:
  fi-hsw-peppy:   PASS -> FAIL (fdo#105900)

igt@prime_vgem@basic-fence-flip:
  fi-ilk-650: PASS -> FAIL (fdo#104008)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@gem_ctx_create@basic-files:
  fi-glk-j4005:   DMESG-WARN (fdo#106000) -> PASS

igt@kms_chamelium@dp-edid-read:
  fi-kbl-7500u:   FAIL (fdo#103841) -> PASS

igt@kms_pipe_crc_basic@hang-read-crc-pipe-a:
  fi-skl-guc: FAIL (fdo#104724, fdo#103191) -> PASS


  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#103841 https://bugs.freedesktop.org/show_bug.cgi?id=103841
  fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097


== Participating hosts (42 -> 38) ==

  Missing(4): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-skl-6700hq 


== Build changes ==

* IGT: IGT_4516 -> IGTPW_1451

  CI_DRM_4307: 0cf6f8f74cad691364d738d1607bc45945f3a5f9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1451: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1451/
  IGT_4516: 95bfb2902473b9f4e644c3eb831fdf110d87ed4f @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@i915_query@query-perf-configs
+igt@i915_query@query-perf-config-data-invalid
+igt@i915_query@query-perf-config-list-invalid

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1451/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [CI] drm/i915/gtt: Only keep gen6 page directories pinned while active

2018-06-12 Thread Chris Wilson
In order to be able to evict the gen6 ppgtt, we have to unpin it at some
point. We can simply use our context activity tracking to know when the
ppgtt is no longer in use by hardware, and so only keep it pinned while
being used a request.

For the kernel_context (and thus aliasing_ppgtt), it remains pinned at
all times, as the kernel_context itself is pinned at all times.

Signed-off-by: Chris Wilson 
Cc: Joonas Lahtinen 
Cc: Mika Kuoppala 
Cc: Matthew Auld 
Reviewed-by: Joonas Lahtinen 
---
 drivers/gpu/drm/i915/i915_gem_gtt.c | 36 ++---
 drivers/gpu/drm/i915/i915_gem_gtt.h |  5 
 drivers/gpu/drm/i915/intel_ringbuffer.c | 28 +++
 3 files changed, 54 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c 
b/drivers/gpu/drm/i915/i915_gem_gtt.c
index c6949da3423f..317f27a9d78e 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -1912,7 +1912,6 @@ static void gen6_ppgtt_cleanup(struct i915_address_space 
*vm)
 {
struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm));
 
-   i915_vma_unpin(ppgtt->vma);
i915_vma_destroy(ppgtt->vma);
 
gen6_ppgtt_free_pd(ppgtt);
@@ -1998,10 +1997,19 @@ static struct i915_vma *pd_vma_create(struct 
gen6_hw_ppgtt *ppgtt, int size)
return vma;
 }
 
-static int gen6_ppgtt_pin(struct i915_hw_ppgtt *base)
+int gen6_ppgtt_pin(struct i915_hw_ppgtt *base)
 {
struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(base);
 
+   /*
+* Workaround the limited maximum vma->pin_count and the aliasing_ppgtt
+* which will be pinned into every active context.
+* (When vma->pin_count becomes atomic, I expect we will naturally
+* need a larger, unpacked, type and kill this redundancy.)
+*/
+   if (ppgtt->pin_count++)
+   return 0;
+
/*
 * PPGTT PDEs reside in the GGTT and consists of 512 entries. The
 * allocator works in address space sizes, so it's multiplied by page
@@ -2012,6 +2020,17 @@ static int gen6_ppgtt_pin(struct i915_hw_ppgtt *base)
PIN_GLOBAL | PIN_HIGH);
 }
 
+void gen6_ppgtt_unpin(struct i915_hw_ppgtt *base)
+{
+   struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(base);
+
+   GEM_BUG_ON(!ppgtt->pin_count);
+   if (--ppgtt->pin_count)
+   return;
+
+   i915_vma_unpin(ppgtt->vma);
+}
+
 static struct i915_hw_ppgtt *gen6_ppgtt_create(struct drm_i915_private *i915)
 {
struct i915_ggtt * const ggtt = >ggtt;
@@ -2053,21 +2072,8 @@ static struct i915_hw_ppgtt *gen6_ppgtt_create(struct 
drm_i915_private *i915)
if (err)
goto err_vma;
 
-   err = gen6_ppgtt_pin(>base);
-   if (err)
-   goto err_pd;
-
-   DRM_DEBUG_DRIVER("Allocated pde space (%lldM) at GTT entry: %llx\n",
-ppgtt->vma->node.size >> 20,
-ppgtt->vma->node.start / PAGE_SIZE);
-
-   DRM_DEBUG_DRIVER("Adding PPGTT at offset %x\n",
-ppgtt->base.pd.base.ggtt_offset << 10);
-
return >base;
 
-err_pd:
-   gen6_ppgtt_free_pd(ppgtt);
 err_vma:
i915_vma_destroy(ppgtt->vma);
 err_scratch:
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.h 
b/drivers/gpu/drm/i915/i915_gem_gtt.h
index 6e9acd99ecc6..d7b7b4afe060 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.h
@@ -412,6 +412,8 @@ struct gen6_hw_ppgtt {
 
struct i915_vma *vma;
gen6_pte_t __iomem *pd_addr;
+
+   unsigned int pin_count;
 };
 
 #define __to_gen6_ppgtt(base) container_of(base, struct gen6_hw_ppgtt, base)
@@ -625,6 +627,9 @@ static inline void i915_ppgtt_put(struct i915_hw_ppgtt 
*ppgtt)
kref_put(>ref, i915_ppgtt_release);
 }
 
+int gen6_ppgtt_pin(struct i915_hw_ppgtt *base);
+void gen6_ppgtt_unpin(struct i915_hw_ppgtt *base);
+
 void i915_check_and_clear_faults(struct drm_i915_private *dev_priv);
 void i915_gem_suspend_gtt_mappings(struct drm_i915_private *dev_priv);
 void i915_gem_restore_gtt_mappings(struct drm_i915_private *dev_priv);
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c 
b/drivers/gpu/drm/i915/intel_ringbuffer.c
index dda671e0a680..ef3c76425843 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -1181,6 +1181,27 @@ static void intel_ring_context_destroy(struct 
intel_context *ce)
__i915_gem_object_release_unless_active(ce->state->obj);
 }
 
+static int __context_pin_ppgtt(struct i915_gem_context *ctx)
+{
+   struct i915_hw_ppgtt *ppgtt;
+   int err = 0;
+
+   ppgtt = ctx->ppgtt ?: ctx->i915->mm.aliasing_ppgtt;
+   if (ppgtt)
+   err = gen6_ppgtt_pin(ppgtt);
+
+   return err;
+}
+
+static void __context_unpin_ppgtt(struct i915_gem_context *ctx)
+{
+   struct i915_hw_ppgtt *ppgtt;
+
+   ppgtt = ctx->ppgtt ?: ctx->i915->mm.aliasing_ppgtt;
+   if 

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/gtt: Make gen6 page directories evictable

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/gtt: Make gen6 page directories evictable
URL   : https://patchwork.freedesktop.org/series/44623/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4306_full -> Patchwork_9275_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9275_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9275_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9275_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +1

igt@gem_exec_schedule@deep-render:
  shard-kbl:  PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9275_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-kbl:  PASS -> FAIL (fdo#105347)

igt@drv_suspend@shrink:
  shard-kbl:  PASS -> INCOMPLETE (fdo#106886, fdo#103665)

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  PASS -> FAIL (fdo#100368)


 Possible fixes 

igt@drv_selftest@live_gtt:
  shard-glk:  INCOMPLETE (k.org#198133, fdo#103359) -> PASS

igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
  shard-glk:  FAIL (fdo#105703) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-hsw:  FAIL (fdo#105189) -> PASS

igt@kms_flip@flip-vs-expired-vblank-interruptible:
  shard-glk:  FAIL (fdo#105189) -> PASS

igt@kms_flip@modeset-vs-vblank-race-interruptible:
  shard-glk:  FAIL (fdo#103060) -> PASS

igt@kms_flip@plain-flip-fb-recreate:
  shard-glk:  FAIL (fdo#100368) -> PASS

igt@kms_flip_tiling@flip-x-tiled:
  shard-glk:  FAIL (fdo#103822, fdo#104724) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105189 https://bugs.freedesktop.org/show_bug.cgi?id=105189
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106886 https://bugs.freedesktop.org/show_bug.cgi?id=106886
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4306 -> Patchwork_9275

  CI_DRM_4306: 46ac5b5698d4aea58eb440f1ec47d734762259f7 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9275: 903967c3061a798c8feef2c6c73c468481f86cc9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9275/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2] drm/i915: add support for perf configuration queries

2018-06-12 Thread Lionel Landwerlin
Listing configurations at the moment is supported only through sysfs.
This might cause issues for applications wanting to list
configurations from a container where sysfs isn't available.

This change adds a way to query the number of configurations and their
content through the i915 query uAPI.

v2: Fix sparse warnings (Lionel)
Add support to query configuration using uuid (Lionel)

Signed-off-by: Lionel Landwerlin 
---
 drivers/gpu/drm/i915/i915_drv.h   |   6 +
 drivers/gpu/drm/i915/i915_perf.c  |   4 +
 drivers/gpu/drm/i915/i915_query.c | 285 ++
 include/uapi/drm/i915_drm.h   |  62 ++-
 4 files changed, 356 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 6104d7115054..ef03fffefc11 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1945,6 +1945,12 @@ struct drm_i915_private {
 */
struct idr metrics_idr;
 
+   /*
+* Number of dynamic configurations, you need to hold
+* dev_priv->perf.metrics_lock to access it.
+*/
+   u32 n_metrics;
+
/*
 * Lock associated with anything below within this structure
 * except exclusive_stream.
diff --git a/drivers/gpu/drm/i915/i915_perf.c b/drivers/gpu/drm/i915/i915_perf.c
index 881a992305ec..c7a3721ae93e 100644
--- a/drivers/gpu/drm/i915/i915_perf.c
+++ b/drivers/gpu/drm/i915/i915_perf.c
@@ -3357,6 +3357,8 @@ int i915_perf_add_config_ioctl(struct drm_device *dev, 
void *data,
goto sysfs_err;
}
 
+   dev_priv->perf.n_metrics++;
+
mutex_unlock(_priv->perf.metrics_lock);
 
DRM_DEBUG("Added config %s id=%i\n", oa_config->uuid, oa_config->id);
@@ -3418,6 +3420,8 @@ int i915_perf_remove_config_ioctl(struct drm_device *dev, 
void *data,
 
idr_remove(_priv->perf.metrics_idr, *arg);
 
+   dev_priv->perf.n_metrics--;
+
DRM_DEBUG("Removed config %s id=%i\n", oa_config->uuid, oa_config->id);
 
put_oa_config(dev_priv, oa_config);
diff --git a/drivers/gpu/drm/i915/i915_query.c 
b/drivers/gpu/drm/i915/i915_query.c
index 3f502eef2431..06cc34d9cb4a 100644
--- a/drivers/gpu/drm/i915/i915_query.c
+++ b/drivers/gpu/drm/i915/i915_query.c
@@ -84,9 +84,294 @@ static int query_topology_info(struct drm_i915_private 
*dev_priv,
return total_length;
 }
 
+static int can_copy_perf_config_registers_or_number(u32 user_n_regs,
+   u64 user_regs_ptr,
+   u32 kernel_n_regs)
+{
+   /*
+* We'll just put the number of registers, and won't copy the
+* register.
+*/
+   if (user_n_regs == 0)
+   return 0;
+
+   if (user_n_regs < kernel_n_regs)
+   return -EINVAL;
+
+   if (!access_ok(VERIFY_WRITE, u64_to_user_ptr(user_regs_ptr),
+  2 * sizeof(u32) * kernel_n_regs))
+   return -EFAULT;
+
+   return 0;
+}
+
+static int copy_perf_config_registers_or_number(const struct i915_oa_reg 
*kernel_regs,
+   u32 kernel_n_regs,
+   u64 user_regs_ptr,
+   u32 *user_n_regs)
+{
+   u32 r;
+
+   if (*user_n_regs == 0) {
+   *user_n_regs = kernel_n_regs;
+   return 0;
+   }
+
+   *user_n_regs = kernel_n_regs;
+
+   for (r = 0; r < kernel_n_regs; r++) {
+   u32 __user *user_reg_ptr =
+   u64_to_user_ptr(user_regs_ptr + sizeof(u32) * r * 2);
+   u32 __user *user_val_ptr =
+   u64_to_user_ptr(user_regs_ptr + sizeof(u32) * r * 2 +
+   sizeof(u32));
+   int ret;
+
+   ret = __put_user(i915_mmio_reg_offset(kernel_regs[r].addr),
+user_reg_ptr);
+   if (ret)
+   return -EFAULT;
+
+   ret = __put_user(kernel_regs[r].value, user_val_ptr);
+   if (ret)
+   return -EFAULT;
+   }
+
+   return 0;
+}
+
+static int query_perf_config_data(struct drm_i915_private *i915,
+ struct drm_i915_query_item *query_item,
+ bool use_uuid)
+{
+   struct drm_i915_query_perf_config __user *user_query_config_ptr =
+   u64_to_user_ptr(query_item->data_ptr);
+   struct drm_i915_perf_oa_config __user *user_config_ptr =
+   u64_to_user_ptr(query_item->data_ptr +
+   sizeof(struct drm_i915_query_perf_config));
+   struct drm_i915_perf_oa_config user_config;
+   struct i915_oa_config *oa_config = NULL;
+   u32 flags, total_size;
+   int ret;
+
+   if 

Re: [Intel-gfx] [PATCH i-g-t v2 0/2] tests/i915-query: new tests for listing perf configurations

2018-06-12 Thread Lionel Landwerlin

On 12/06/18 17:37, Lionel Landwerlin wrote:

Hi,

A small update to add query based on configuration uuids.

Cheers,

Lionel Landwerlin (2):
   include: bump i915 header
   tests/i915-query: add new tests for perf configurations queries

  include/drm-uapi/i915_drm.h |  56 +++-
  tests/i915_query.c  | 608 
  2 files changed, 663 insertions(+), 1 deletion(-)

--
2.17.1


Oops, wrong mailing list :(

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t v2 2/2] tests/i915-query: add new tests for perf configurations queries

2018-06-12 Thread Lionel Landwerlin
These new tests allow to list the available configurations and also to
query the data that makes up a configuration.

v2: Verify uuid queries (Lionel)

Signed-off-by: Lionel Landwerlin 
---
 tests/i915_query.c | 608 +
 1 file changed, 608 insertions(+)

diff --git a/tests/i915_query.c b/tests/i915_query.c
index c7de8cbd..fe2090cf 100644
--- a/tests/i915_query.c
+++ b/tests/i915_query.c
@@ -22,6 +22,7 @@
  */
 
 #include "igt.h"
+#include "igt_sysfs.h"
 
 #include 
 
@@ -477,6 +478,598 @@ test_query_topology_known_pci_ids(int fd, int devid)
free(topo_info);
 }
 
+static bool query_perf_config_supported(int fd)
+{
+   struct drm_i915_query_item item = {
+   .query_id = DRM_I915_QUERY_PERF_CONFIG,
+   .flags = DRM_I915_QUERY_PERF_CONFIG_LIST,
+   };
+
+   return __i915_query_items(fd, , 1) == 0 && item.length > 0;
+}
+
+/*
+ * Verify that perf configuration queries for list of configurations
+ * rejects invalid parameters.
+ */
+static void test_query_perf_config_list_invalid(int fd)
+{
+   struct drm_i915_query_perf_config *query_config_ptr;
+   struct drm_i915_query_item item;
+   size_t len;
+   void *data;
+
+   /* Verify invalid flags for perf config queries */
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = 42; /* invalid */
+   i915_query_items(fd, , 1);
+   igt_assert_eq(item.length, -EINVAL);
+
+   /*
+* A too small data length is invalid. We should have at least
+* the test config list.
+*/
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_LIST;
+   item.length = sizeof(struct drm_i915_query_perf_config); /* invalid */
+   i915_query_items(fd, , 1);
+   igt_assert_eq(item.length, -EINVAL);
+
+   /* Flags on the query config data are invalid. */
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_LIST;
+   item.length = 0;
+   i915_query_items(fd, , 1);
+   igt_assert(item.length > sizeof(struct drm_i915_query_perf_config));
+
+   query_config_ptr = calloc(1, item.length);
+   query_config_ptr->flags = 1; /* invalid */
+   item.data_ptr = to_user_pointer(query_config_ptr);
+   i915_query_items(fd, , 1);
+   igt_assert_eq(item.length, -EINVAL);
+   free(query_config_ptr);
+
+   /*
+* A NULL data pointer is invalid when the length is long
+* enough for i915 to copy data into the pointed memory.
+*/
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_LIST;
+   item.length = 0;
+   i915_query_items(fd, , 1);
+   igt_assert(item.length > sizeof(struct drm_i915_query_perf_config));
+
+   i915_query_items(fd, , 1); /* leaves data ptr to null */
+   igt_assert_eq(item.length, -EFAULT);
+
+   /* Trying to write into read only memory will fail. */
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_LIST;
+   item.length = 0;
+   i915_query_items(fd, , 1);
+   igt_assert(item.length > sizeof(struct drm_i915_query_perf_config));
+
+   len = ALIGN(item.length, 4096);
+   data = mmap(0, len, PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0);
+   memset(data, 0, len);
+   mprotect(data, len, PROT_READ);
+   item.data_ptr = to_user_pointer(data); /* invalid with read only data */
+   i915_query_items(fd, , 1);
+   igt_assert_eq(item.length, -EFAULT);
+
+   munmap(data, len);
+}
+
+static int query_perf_config_id_data(int fd, int length,
+struct drm_i915_query_perf_config *query)
+{
+   struct drm_i915_query_item item;
+
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_ID;
+   item.length = length;
+   item.data_ptr = to_user_pointer(query);
+   i915_query_items(fd, , 1);
+
+   return item.length;
+}
+
+static int query_perf_config_uuid_data(int fd, int length,
+  struct drm_i915_query_perf_config *query)
+{
+   struct drm_i915_query_item item;
+
+   memset(, 0, sizeof(item));
+   item.query_id = DRM_I915_QUERY_PERF_CONFIG;
+   item.flags = DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_UUID;
+   item.length = length;
+   item.data_ptr = to_user_pointer(query);
+   i915_query_items(fd, , 1);
+
+   return item.length;
+}
+
+/*
+ * Verify that perf configuration queries for configuration data
+ * rejects invalid parameters.
+ */
+static void test_query_perf_config_data_invalid(int fd)
+{
+   struct {
+   struct 

[Intel-gfx] [PATCH i-g-t v2 0/2] tests/i915-query: new tests for listing perf configurations

2018-06-12 Thread Lionel Landwerlin
Hi,

A small update to add query based on configuration uuids.

Cheers,

Lionel Landwerlin (2):
  include: bump i915 header
  tests/i915-query: add new tests for perf configurations queries

 include/drm-uapi/i915_drm.h |  56 +++-
 tests/i915_query.c  | 608 
 2 files changed, 663 insertions(+), 1 deletion(-)

--
2.17.1
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH i-g-t v2 1/2] include: bump i915 header

2018-06-12 Thread Lionel Landwerlin
---
 include/drm-uapi/i915_drm.h | 56 -
 1 file changed, 55 insertions(+), 1 deletion(-)

diff --git a/include/drm-uapi/i915_drm.h b/include/drm-uapi/i915_drm.h
index 16e452aa..17f56dcd 100644
--- a/include/drm-uapi/i915_drm.h
+++ b/include/drm-uapi/i915_drm.h
@@ -1620,6 +1620,7 @@ struct drm_i915_perf_oa_config {
 struct drm_i915_query_item {
__u64 query_id;
 #define DRM_I915_QUERY_TOPOLOGY_INFO1
+#define DRM_I915_QUERY_PERF_CONFIG  2
 
/*
 * When set to zero by userspace, this is filled with the size of the
@@ -1646,9 +1647,18 @@ struct drm_i915_query {
__u32 num_items;
 
/*
-* Unused for now. Must be cleared to zero.
+* When query_id == DRM_I915_QUERY_TOPOLOGY_INFO, must be 0.
+*
+* When query_id == DRM_I915_QUERY_PERF_CONFIG, must be one of the
+* following :
+* - DRM_I915_QUERY_PERF_CONFIG_LIST
+* - DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_UUID
+* - DRM_I915_QUERY_PERF_CONFIG_FOR_UUID
 */
__u32 flags;
+#define DRM_I915_QUERY_PERF_CONFIG_LIST  1
+#define DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_UUID 2
+#define DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_ID   3
 
/*
 * This points to an array of num_items drm_i915_query_item structures.
@@ -1717,6 +1727,50 @@ struct drm_i915_query_topology_info {
__u8 data[];
 };
 
+/*
+ * Data written by the kernel with query DRM_I915_QUERY_PERF_CONFIG.
+ */
+struct drm_i915_query_perf_config {
+   union {
+   /*
+* When query_item.flags == DRM_I915_QUERY_PERF_CONFIG_LIST, 
i915 sets
+* this fields to the number of configurations available.
+*/
+   __u64 n_configs;
+
+   /*
+* When query_id == DRM_I915_QUERY_PERF_CONFIG_DATA, i915 will
+* use the value in this field as configuration identifier to
+* decide what data to write into config_ptr.
+*/
+   __u64 config;
+
+   /** String formatted like "%08x-%04x-%04x-%04x-%012x" */
+   char uuid[36];
+   };
+
+   /*
+* Unused for now. Must be cleared to zero.
+*/
+   __u32 flags;
+
+   /*
+* When query_item.flags == DRM_I915_QUERY_PERF_CONFIG_LIST, i915 will
+* write an array of __u64 of configuration identifiers.
+*
+* When query_item.flags == DRM_I915_QUERY_PERF_CONFIG_DATA, i915 will
+* write a struct drm_i915_perf_oa_config. If the following fields of
+* drm_i915_perf_oa_config are set not set to 0, i915 will write into
+* the associated pointers the values of submitted when the
+* configuration was created :
+*
+* - n_mux_regs
+* - n_boolean_regs
+* - n_flex_regs
+*/
+   __u8 data[];
+};
+
 #if defined(__cplusplus)
 }
 #endif
-- 
2.17.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v3] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled

2018-06-12 Thread Kumar, Abhay



On 6/12/2018 5:13 AM, Ville Syrjälä wrote:

On Tue, Jun 12, 2018 at 12:17:41AM -0700, Abhay Kumar wrote:

From: Ville Syrjälä 

CDCLK has to be at least twice the BLCK regardless of audio. Audio
driver has to probe using this hook and increase the clock even in
absence of any display.

v2: Use atomic refcount for get_power, put_power so that we can
 call each once(Abhay).
v3: Reset power well 2 to avoid any transaction on iDisp link
 during cdclk change(Abhay).

Signed-off-by: Ville Syrjälä 
Signed-off-by: Abhay Kumar 
---
  drivers/gpu/drm/i915/i915_drv.h  |  3 ++
  drivers/gpu/drm/i915/i915_reg.h  |  4 ++
  drivers/gpu/drm/i915/intel_audio.c   | 87 ++--
  drivers/gpu/drm/i915/intel_cdclk.c   | 29 
  drivers/gpu/drm/i915/intel_display.c |  7 ++-
  drivers/gpu/drm/i915/intel_drv.h |  2 +
  6 files changed, 107 insertions(+), 25 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 6104d7115054..a4a386a5db69 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1702,6 +1702,7 @@ struct drm_i915_private {
unsigned int hpll_freq;
unsigned int fdi_pll_freq;
unsigned int czclk_freq;
+   u32 get_put_refcount;
  
  	struct {

/*
@@ -1719,6 +1720,8 @@ struct drm_i915_private {
struct intel_cdclk_state actual;
/* The current hardware cdclk state */
struct intel_cdclk_state hw;
+
+   int force_min_cdclk;
} cdclk;
  
  	/**

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 987def26ce82..cef770184245 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -8869,6 +8869,10 @@ enum skl_power_gate {
   * SKL Clocks
   */
  
+/* Power well 2 */

+#define POWER_WELL_2   _MMIO(0x45404)
+#define POWER_WELL_2_REQUEST   (1<<31)
+
  /* CDCLK_CTL */
  #define CDCLK_CTL _MMIO(0x46000)
  #define  CDCLK_FREQ_SEL_MASK  (3 << 26)
diff --git a/drivers/gpu/drm/i915/intel_audio.c 
b/drivers/gpu/drm/i915/intel_audio.c
index 3ea566f99450..1f5a9af13ef0 100644
--- a/drivers/gpu/drm/i915/intel_audio.c
+++ b/drivers/gpu/drm/i915/intel_audio.c
@@ -618,7 +618,6 @@ void intel_audio_codec_enable(struct intel_encoder *encoder,
  
  	if (!connector->eld[0])

return;
-
DRM_DEBUG_DRIVER("ELD on [CONNECTOR:%d:%s], [ENCODER:%d:%s]\n",
 connector->base.id,
 connector->name,
@@ -713,14 +712,94 @@ void intel_init_audio_hooks(struct drm_i915_private 
*dev_priv)
}
  }
  
+static void glk_force_audio_cdclk(struct drm_i915_private *dev_priv,

+   bool enable)
+{
+   struct drm_modeset_acquire_ctx ctx;
+   struct drm_atomic_state *state;
+   int ret;
+
+   drm_modeset_acquire_init(, 0);
+   state = drm_atomic_state_alloc(_priv->drm);
+   if (WARN_ON(!state))
+   return;
+
+   state->acquire_ctx = 
+
+retry:
+   to_intel_atomic_state(state)->modeset = true;
+   to_intel_atomic_state(state)->cdclk.force_min_cdclk =
+   enable ? 2 * 96000 : 0;
+
+   /*
+* Protects dev_priv->cdclk.force_min_cdclk
+* Need to lock this here in case we have no active pipes
+* and thus wouldn't lock it during the commit otherwise.
+*/
+   ret = drm_modeset_lock(_priv->drm.mode_config.connection_mutex, 
);
+   if (!ret)
+   ret = drm_atomic_commit(state);
+
+   if (ret == -EDEADLK) {
+   drm_atomic_state_clear(state);
+   drm_modeset_backoff();
+   goto retry;
+   }
+
+   WARN_ON(ret);
+
+   drm_atomic_state_put(state);
+
+   drm_modeset_drop_locks();
+   drm_modeset_acquire_fini();
+}
+
  static void i915_audio_component_get_power(struct device *kdev)
  {
-   intel_display_power_get(kdev_to_i915(kdev), POWER_DOMAIN_AUDIO);
+   struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
+   u32 tmp;
+
+   dev_priv->get_put_refcount++;
+
+   /* Force cdclk to 2*BCLK during first time get power call */
+   if (dev_priv->get_put_refcount == 1) {
+   if (IS_CANNONLAKE(dev_priv) || IS_GEMINILAKE(dev_priv)) {
+
+   /*FIXME: Make sure there is no transaction
+* on iDisp link while changing cdclk
+*/
+
+   /* Turn off power well 2*/
+   tmp = I915_READ(POWER_WELL_2);
+   tmp = tmp & ~POWER_WELL_2_REQUEST;
+   I915_WRITE(POWER_WELL_2, tmp);
+   tmp = I915_READ(POWER_WELL_2);
+
+   /* Turn on power well 2*/
+   tmp = I915_READ(POWER_WELL_2);
+   tmp = tmp | POWER_WELL_2_REQUEST;
+  

[Intel-gfx] [PATCH xf86-video-intel] sna/uxa: Fix colormap handling at screen depth 30. (v2)

2018-06-12 Thread Mario Kleiner
The various clut handling functions like a setup
consistent with the x-screen color depth. Otherwise
we observe improper sampling in the gamma tables
at depth 30.

Therefore replace hard-coded bitsPerRGB = 8 by actual
bits per channel scrn->rgbBits. Also use this for call
to xf86HandleColormaps().

Tested for uxa and sna at depths 8, 16, 24 and 30 on
IvyBridge, and tested at depth 24 and 30 that xgamma
and gamma table animations work, and with measurement
equipment to make sure identity gamma ramps actually
are identity mappings at the output.

v2: Also deal with X-Server 1.19 and earlier, which as of
v1.19.6 lack a fix to color palette handling and can
not deal with depths/bpc > 24/8 bpc. On < 1.20 we skip
xf86HandleColormaps() setup at > 8 bpc. This disables
color palette handling on such servers at > 8 bpc, but
still keeps RandR gamma table handling intact.

Tested on 1.19.6 and 1.20.0 to do the right thing.

Signed-off-by: Mario Kleiner 
---
 src/sna/sna_driver.c   | 9 ++---
 src/uxa/intel_driver.c | 6 +-
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 2007e354..8c79d43b 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -1152,7 +1152,7 @@ sna_screen_init(SCREEN_INIT_ARGS_DECL)
if (!miInitVisuals(, , , , ,
   ,
   ((unsigned long)1 << (scrn->bitsPerPixel - 1)),
-  8, -1))
+  scrn->rgbBits, -1))
return FALSE;
 
if (!miScreenInit(screen, NULL,
@@ -1223,8 +1223,11 @@ sna_screen_init(SCREEN_INIT_ARGS_DECL)
if (!miCreateDefColormap(screen))
return FALSE;
 
-   if (sna->mode.num_real_crtc &&
-   !xf86HandleColormaps(screen, 256, 8, sna_load_palette, NULL,
+   /* X-Server < 1.20 mishandles > 256 slots / > 8 bpc color maps. */
+   if (sna->mode.num_real_crtc && (scrn->rgbBits <= 8 ||
+   XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,20,0,0,0)) &&
+   !xf86HandleColormaps(screen, 1 << scrn->rgbBits, scrn->rgbBits,
+sna_load_palette, NULL,
 CMAP_RELOAD_ON_MODE_SWITCH |
 CMAP_PALETTED_TRUECOLOR))
return FALSE;
diff --git a/src/uxa/intel_driver.c b/src/uxa/intel_driver.c
index 3703c412..77c0dc00 100644
--- a/src/uxa/intel_driver.c
+++ b/src/uxa/intel_driver.c
@@ -991,7 +991,11 @@ I830ScreenInit(SCREEN_INIT_ARGS_DECL)
if (!miCreateDefColormap(screen))
return FALSE;
 
-   if (!xf86HandleColormaps(screen, 256, 8, I830LoadPalette, NULL,
+   /* X-Server < 1.20 mishandles > 256 slots / > 8 bpc color maps. */
+   if ((scrn->rgbBits <= 8 ||
+   XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,20,0,0,0)) &&
+   !xf86HandleColormaps(screen, 1 << scrn->rgbBits, scrn->rgbBits,
+I830LoadPalette, NULL,
 CMAP_RELOAD_ON_MODE_SWITCH |
 CMAP_PALETTED_TRUECOLOR)) {
return FALSE;
-- 
2.17.1

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] Depth 30 colormap handling fixes for servers 1.20+ and < 1.20

2018-06-12 Thread Mario Kleiner
Hi,

finally here's an updated patch that for depth 30 now works on both
Server 1.20 with the full colormap + gamma table handling, and for
servers < 1.20 with the RandR gamma tables working fine and the colormap
processing skipped.

This one successfully tested on sna and uxa with both server 1.20.0 and
server 1.19.6.

I assume this one will be replaced by Ville's ddx+kmswork anyway soonish,
but until that is done, this one keeps things at least testable without
crashes and other problems. I use it with my own intel-kms 10 bit lut poc
hacks for measurements and to test that Mesa's depth 30 stuff doesn't
break.

Thanks,
-mario

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [BUG] cc5b114dcf bpf, i40e: add meta data support

2018-06-12 Thread Keith Busch
My server's i40e no longer obtains an IP address on linux
mainline. Bisected to the following:

commit cc5b114dcf986bfd8e4c37bf65d1b7b1e5290ac6
Author: Daniel Borkmann 
Date:   Mon May 28 11:07:20 2018 +0200

bpf, i40e: add meta data support

Reverting on mainline resolves the issue.

Is there something wrong with my i40e adapter, or is the patch possibly
doing something wrong? Or any other information I can get to help
understand why it's stopped working with this feature?

An excert from "journalctl -xe" on on the failing network adapter
is below.

Thanks,
Keith

---
Jun 12 10:04:35 localhost.localdomain dhclient[2632]: DHCPDISCOVER on eno1 to 
255.255.255.255 port 67 interval 7 (xid=0x3b301712)
Jun 12 10:04:42 localhost.localdomain dhclient[2632]: DHCPDISCOVER on eno1 to 
255.255.255.255 port 67 interval 14 (xid=0x3b301712)
Jun 12 10:04:56 localhost.localdomain dhclient[2632]: DHCPDISCOVER on eno1 to 
255.255.255.255 port 67 interval 21 (xid=0x3b301712)
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2274] dhcp4 (eno1): request timed out
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2275] dhcp4 (eno1): state changed unknown -> timeout
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2440] dhcp4 (eno1): canceled DHCP transaction, DHCP client pid 2632
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2441] dhcp4 (eno1): state changed timeout -> done
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2445] device (eno1): state change: ip-config -> failed (reason 
'ip-config-unavailable', internal state 'managed')
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2448] manager: NetworkManager state is now DISCONNECTED
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2452] device (eno1): Activation: failed for connection 'Wired 
connection 1'
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2460] device (eno1): state change: failed -> disconnected (reason 
'none', internal state 'managed')
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2498] policy: auto-activating connection 'Wired connection 1'
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2517] device (eno1): Activation: starting connection 'Wired 
connection 1' (16a13ab5-c51e-361b-90bc-b6fc6f84cbe9)
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2520] device (eno1): state change: disconnected -> prepare (reason 
'none', internal state 'managed')
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2523] manager: NetworkManager state is now CONNECTING
Jun 12 10:05:03 localhost.localdomain NetworkManager[2215]:   
[1528819503.2529] device (eno1): state change: prepare -> config (reason 
'none', internal state 'managed')
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.IGT: failure for series starting with [v2,1/7] drm/i915/guc: Don't store runtime GuC log level in modparam (rev3)

2018-06-12 Thread Chris Wilson
Quoting Piorkowski, Piotr (2018-06-12 14:12:34)
> On Tue, 2018-06-05 at 21:56 +, Patchwork wrote:
> > == Series Details ==
> > 
> > Series: series starting with [v2,1/7] drm/i915/guc: Don't store
> > runtime GuC log level in modparam (rev3)
> > URL   : https://patchwork.freedesktop.org/series/44201/
> > State : failure
> > 
> > == Summary ==
> > 
> > = CI Bug Log - changes from CI_DRM_4280_full -> Patchwork_9205_full =
> > 
> > == Summary - FAILURE ==
> > 
> >   Serious unknown changes coming with Patchwork_9205_full absolutely
> > need to be
> >   verified manually.
> >   
> >   If you think the reported changes have nothing to do with the
> > changes
> >   introduced in Patchwork_9205_full, please notify your bug team to
> > allow them
> >   to document this new failure mode, which will reduce false
> > positives in CI.
> > 
> >   External URL: https://patchwork.freedesktop.org/api/1.0/series/4420
> > 1/revisions/3/mbox/
> > 
> > == Possible new issues ==
> > 
> >   Here are the unknown changes that may have been introduced in
> > Patchwork_9205_full:
> > 
> >   === IGT changes ===
> > 
> >  Possible regressions 
> > 
> > igt@drv_selftest@live_hangcheck:
> >   shard-kbl:  PASS -> DMESG-FAIL
> > 
> > 
> >  Warnings 
> > 
> > igt@drv_selftest@live_guc:
> >   shard-kbl:  PASS -> SKIP +1
> > 
> 
> These negative results do not relate to my changes.

Applied, but note for the future, your authorname and s-o-b are not an
exact match. Please fix so that the scripts don't complain (and let's
hope upstream is also forgiving).
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for Enable P010, P012 and P016 formats for GLK/CNL (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: Enable P010, P012 and P016 formats for GLK/CNL (rev2)
URL   : https://patchwork.freedesktop.org/series/43891/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305_full -> Patchwork_9274_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9274_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9274_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9274_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-blt:
  shard-kbl:  PASS -> SKIP

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +2

igt@kms_ccs@pipe-a-crc-sprite-planes-basic:
  shard-glk:  PASS -> SKIP +1

igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
  shard-snb:  SKIP -> PASS +3


== Known issues ==

  Here are the changes found in Patchwork_9274_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-apl:  PASS -> FAIL (fdo#105347)

igt@drv_selftest@live_hangcheck:
  shard-kbl:  PASS -> DMESG-FAIL (fdo#106560)

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-glk:  PASS -> FAIL (fdo#105363)

igt@kms_flip_tiling@flip-to-y-tiled:
  shard-glk:  PASS -> FAIL (fdo#103822, fdo#104724)

igt@perf@polling:
  shard-hsw:  PASS -> FAIL (fdo#102252)


 Possible fixes 

igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
  shard-hsw:  FAIL (fdo#103060) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank:
  shard-hsw:  FAIL (fdo#102887) -> PASS

igt@kms_flip@2x-flip-vs-fences:
  shard-glk:  INCOMPLETE (fdo#103359, k.org#198133) -> PASS

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-glk:  FAIL (fdo#100368) -> PASS +1

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  FAIL (fdo#100368) -> PASS

igt@kms_flip_tiling@flip-y-tiled:
  shard-glk:  FAIL (fdo#103822, fdo#104724) -> PASS

igt@kms_setmode@basic:
  shard-kbl:  FAIL (fdo#99912) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9274

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9274: b9090703ea04fcf0b22830e7c083f329b194a1ea @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9274/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915: Make closing request flush mandatory

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: Make closing request flush mandatory
URL   : https://patchwork.freedesktop.org/series/44614/
State : failure

== Summary ==

= CI Bug Log - changes from CI_DRM_4305_full -> Patchwork_9273_full =

== Summary - FAILURE ==

  Serious unknown changes coming with Patchwork_9273_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9273_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9273_full:

  === IGT changes ===

 Possible regressions 

igt@drv_suspend@forcewake:
  shard-snb:  PASS -> DMESG-WARN


 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +2

igt@gem_exec_schedule@deep-vebox:
  shard-kbl:  PASS -> SKIP

igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
  shard-snb:  SKIP -> PASS +3


== Known issues ==

  Here are the changes found in Patchwork_9273_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_big:
  shard-hsw:  PASS -> INCOMPLETE (fdo#103540)

igt@kms_atomic_transition@1x-modeset-transitions-nonblocking:
  shard-glk:  PASS -> FAIL (fdo#105703)

igt@kms_flip@flip-vs-expired-vblank:
  shard-glk:  PASS -> FAIL (fdo#105363, fdo#102887)

igt@kms_flip_tiling@flip-to-y-tiled:
  shard-glk:  PASS -> FAIL (fdo#104724)


 Possible fixes 

igt@drv_suspend@shrink:
  shard-hsw:  INCOMPLETE (fdo#103540) -> PASS

igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
  shard-glk:  FAIL (fdo#105454, fdo#106509) -> PASS

igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
  shard-hsw:  FAIL (fdo#103060) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank:
  shard-hsw:  FAIL (fdo#102887) -> PASS

igt@kms_flip@2x-flip-vs-fences:
  shard-glk:  INCOMPLETE (fdo#103359, k.org#198133) -> PASS

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-glk:  FAIL (fdo#100368) -> PASS +1

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  FAIL (fdo#100368) -> PASS

igt@kms_flip_tiling@flip-x-tiled:
  shard-glk:  FAIL (fdo#104724, fdo#103822) -> PASS

igt@kms_setmode@basic:
  shard-apl:  FAIL (fdo#99912) -> PASS
  shard-kbl:  FAIL (fdo#99912) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105703 https://bugs.freedesktop.org/show_bug.cgi?id=105703
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9273

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9273: f0774d6ad9407317c3b116b68be17d91c18b98ff @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9273/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 0/7] drm/i915: move towards kernel types

2018-06-12 Thread Ville Syrjälä
On Tue, Jun 12, 2018 at 12:19:28PM +0300, Jani Nikula wrote:
> Semi-RFC. Do we want to do this? Here's a batch of conversions that shouldn't
> conflict much with in-flight patches.
> 
> The trouble with mixed use is that it's inconsistent, and any remaining C99
> types will encourage their use. We could at least do the low hanging fruit?
> 
> $ git grep "uint\(8\|16\|32\|64\)_t" -- drivers/gpu/drm/i915/ | sed 's/:.*//' 
> | sort | uniq -c | sort -n
> 
> BR,
> Jani.
> 
> 
> Jani Nikula (7):
>   drm/i915/vbt: switch to kernel unsigned int types
>   drm/i915/hdmi: switch to kernel unsigned int types
>   drm/i915/uncore: switch to kernel unsigned int types
>   drm/i915/dvo: switch to kernel unsigned int types
>   drm/i915/backlight: switch to kernel unsigned int types
>   drm/i915/audio: switch to kernel unsigned int types
>   drm/i915/lspcon: switch to kernel unsigned int types

Did a quick once over and didn't spot anything wrong, so
Reviewed-by: Ville Syrjälä 

> 
>  drivers/gpu/drm/i915/dvo_ch7017.c | 20 ++--
>  drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +++---
>  drivers/gpu/drm/i915/dvo_ivch.c   | 26 
>  drivers/gpu/drm/i915/dvo_ns2501.c | 44 
> +--
>  drivers/gpu/drm/i915/dvo_sil164.c | 10 +++---
>  drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
>  drivers/gpu/drm/i915/intel_audio.c| 36 +++---
>  drivers/gpu/drm/i915/intel_bios.c |  4 +--
>  drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 
>  drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
>  drivers/gpu/drm/i915/intel_hdmi.c | 14 -
>  drivers/gpu/drm/i915/intel_lspcon.c   |  2 +-
>  drivers/gpu/drm/i915/intel_panel.c|  8 ++---
>  drivers/gpu/drm/i915/intel_uncore.h   | 22 +++---
>  drivers/gpu/drm/i915/intel_vbt_defs.h |  2 +-
>  15 files changed, 120 insertions(+), 120 deletions(-)
> 
> -- 
> 2.11.0
> 
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.BAT: failure for HACK: drm/i915: see what breaks with display disabled

2018-06-12 Thread Patchwork
== Series Details ==

Series: HACK: drm/i915: see what breaks with display disabled
URL   : https://patchwork.freedesktop.org/series/44485/
State : failure

== Summary ==

= CI Bug Log - changes from CI_DRM_4306 -> Patchwork_9276 =

== Summary - FAILURE ==

  Serious unknown changes coming with Patchwork_9276 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9276, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44485/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9276:

  === IGT changes ===

 Possible regressions 

igt@debugfs_test@read_all_entries:
  fi-byt-j1900:   PASS -> DMESG-FAIL +1
  fi-bsw-n3050:   PASS -> DMESG-FAIL

igt@gem_exec_flush@basic-wb-ro-before-default:
  fi-snb-2600:PASS -> INCOMPLETE

igt@gem_exec_suspend@basic-s3:
  fi-bdw-5557u:   PASS -> DMESG-WARN
  fi-bsw-n3050:   PASS -> DMESG-WARN
  fi-hsw-4770:PASS -> DMESG-WARN
  fi-hsw-4200u:   PASS -> DMESG-WARN

igt@kms_addfb_basic@addfb25-bad-modifier:
  fi-bdw-gvtdvm:  PASS -> FAIL +36
  fi-gdg-551: PASS -> FAIL +36

igt@kms_addfb_basic@addfb25-modifier-no-flag:
  fi-cfl-guc: PASS -> FAIL +37
  fi-skl-guc: PASS -> FAIL +37

igt@kms_addfb_basic@addfb25-y-tiled:
  fi-kbl-r:   PASS -> FAIL +36
  fi-byt-n2820:   PASS -> FAIL +37

igt@kms_addfb_basic@addfb25-y-tiled-small:
  fi-bwr-2160:SKIP -> FAIL
  fi-bdw-5557u:   SKIP -> FAIL
  fi-byt-n2820:   SKIP -> FAIL
  fi-hsw-4200u:   SKIP -> FAIL +1
  fi-hsw-4770:SKIP -> FAIL
  fi-byt-j1900:   SKIP -> FAIL
  fi-ivb-3770:SKIP -> FAIL
  fi-blb-e6850:   SKIP -> FAIL
  fi-gdg-551: SKIP -> FAIL
  fi-elk-e7500:   SKIP -> FAIL
  fi-ilk-650: SKIP -> FAIL
  fi-bdw-gvtdvm:  SKIP -> FAIL
  fi-hsw-4770r:   SKIP -> FAIL
  fi-pnv-d510:SKIP -> FAIL

igt@kms_addfb_basic@addfb25-yf-tiled:
  fi-snb-2520m:   NOTRUN -> FAIL +37

igt@kms_addfb_basic@bad-pitch-1024:
  fi-cfl-u2:  PASS -> FAIL +36
  fi-bxt-dsi: PASS -> FAIL +36
  fi-ivb-3520m:   PASS -> FAIL +35

igt@kms_addfb_basic@bad-pitch-128:
  fi-bxt-j4205:   PASS -> FAIL +37

igt@kms_addfb_basic@bad-pitch-32:
  fi-pnv-d510:PASS -> FAIL +36

igt@kms_addfb_basic@bad-pitch-63:
  fi-kbl-7567u:   PASS -> FAIL +37

igt@kms_addfb_basic@basic:
  fi-cnl-psr: PASS -> FAIL +36
  fi-byt-j1900:   PASS -> FAIL +37
  fi-skl-6260u:   PASS -> FAIL +37

igt@kms_addfb_basic@basic-y-tiled:
  fi-cfl-s3:  PASS -> FAIL +36

igt@kms_addfb_basic@framebuffer-vs-set-tiling:
  fi-ilk-650: PASS -> FAIL +36
  fi-skl-6770hq:  PASS -> FAIL +37

igt@kms_addfb_basic@invalid-get-prop-any:
  fi-skl-6600u:   PASS -> FAIL +36
  fi-ivb-3770:PASS -> FAIL +36
  fi-kbl-7560u:   PASS -> FAIL +36

igt@kms_addfb_basic@invalid-set-prop:
  fi-hsw-4770:PASS -> FAIL +36

igt@kms_addfb_basic@no-handle:
  fi-cfl-8700k:   PASS -> FAIL +37

igt@kms_addfb_basic@too-high:
  fi-glk-j4005:   PASS -> FAIL +37

igt@kms_addfb_basic@unused-handle:
  fi-skl-6700k2:  PASS -> FAIL +37
  fi-elk-e7500:   PASS -> FAIL +36

igt@kms_addfb_basic@unused-modifier:
  fi-bdw-5557u:   PASS -> FAIL +36
  fi-kbl-guc: PASS -> FAIL +36

igt@kms_addfb_basic@unused-offsets:
  fi-bwr-2160:PASS -> FAIL +36
  fi-blb-e6850:   PASS -> FAIL +36
  fi-hsw-4200u:   PASS -> FAIL +35

igt@kms_addfb_basic@unused-pitches:
  fi-hsw-peppy:   PASS -> FAIL +35
  fi-skl-gvtdvm:  PASS -> FAIL +37

igt@pm_rps@basic-api:
  fi-byt-n2820:   PASS -> DMESG-FAIL +1

igt@prime_vgem@basic-fence-flip:
  fi-hsw-4770r:   PASS -> FAIL +36
  fi-kbl-7500u:   PASS -> FAIL +37
  fi-cfl-u2:  SKIP -> FAIL
  fi-bxt-dsi: SKIP -> FAIL
  fi-ivb-3520m:   SKIP -> FAIL +1
  fi-cnl-psr: SKIP -> FAIL
  fi-hsw-peppy:   SKIP -> FAIL +1
  fi-kbl-r:   SKIP -> FAIL
  fi-skl-6600u:   SKIP -> FAIL
  fi-kbl-7560u:   SKIP -> FAIL
  fi-cfl-s3:  SKIP -> FAIL
  fi-kbl-guc: SKIP -> FAIL


 Warnings 

igt@kms_busy@basic-flip-a:
  fi-kbl-7567u:   PASS -> SKIP +36

igt@kms_chamelium@dp-crc-fast:
  fi-kbl-7500u:   PASS -> SKIP +39

igt@kms_chamelium@hdmi-crc-fast:
  fi-skl-6700k2:  PASS -> SKIP +40

  

Re: [Intel-gfx] [PATCH 6/7] drm/i915/audio: switch to kernel unsigned int types

2018-06-12 Thread Ville Syrjälä
On Tue, Jun 12, 2018 at 12:19:34PM +0300, Jani Nikula wrote:
> We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
> to stick to kernel types at least where it's more prevalent.
> 
> Signed-off-by: Jani Nikula 
> ---
>  drivers/gpu/drm/i915/intel_audio.c | 36 ++--
>  1 file changed, 18 insertions(+), 18 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_audio.c 
> b/drivers/gpu/drm/i915/intel_audio.c
> index 3ea566f99450..4e4c0ec44f35 100644
> --- a/drivers/gpu/drm/i915/intel_audio.c
> +++ b/drivers/gpu/drm/i915/intel_audio.c
> @@ -198,13 +198,13 @@ static int audio_config_hdmi_get_n(const struct 
> intel_crtc_state *crtc_state,
>  }
>  
>  static bool intel_eld_uptodate(struct drm_connector *connector,
> -i915_reg_t reg_eldv, uint32_t bits_eldv,
> -i915_reg_t reg_elda, uint32_t bits_elda,
> +i915_reg_t reg_eldv, u32 bits_eldv,
> +i915_reg_t reg_elda, u32 bits_elda,
>  i915_reg_t reg_edid)
>  {
>   struct drm_i915_private *dev_priv = to_i915(connector->dev);
> - uint8_t *eld = connector->eld;
> - uint32_t tmp;
> + u8 *eld = connector->eld;

Drive by observation: could make all of these eld pointers const u32 *

> + u32 tmp;
>   int i;
>  
>   tmp = I915_READ(reg_eldv);
> @@ -218,7 +218,7 @@ static bool intel_eld_uptodate(struct drm_connector 
> *connector,
>   I915_WRITE(reg_elda, tmp);
>  
>   for (i = 0; i < drm_eld_size(eld) / 4; i++)
> - if (I915_READ(reg_edid) != *((uint32_t *)eld + i))
> + if (I915_READ(reg_edid) != *((u32 *)eld + i))
>   return false;
>  
>   return true;
-- 
Ville Syrjälä
Intel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.IGT: failure for series starting with [v2,1/7] drm/i915/guc: Don't store runtime GuC log level in modparam (rev3)

2018-06-12 Thread Piorkowski, Piotr
On Tue, 2018-06-05 at 21:56 +, Patchwork wrote:
> == Series Details ==
> 
> Series: series starting with [v2,1/7] drm/i915/guc: Don't store
> runtime GuC log level in modparam (rev3)
> URL   : https://patchwork.freedesktop.org/series/44201/
> State : failure
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_4280_full -> Patchwork_9205_full =
> 
> == Summary - FAILURE ==
> 
>   Serious unknown changes coming with Patchwork_9205_full absolutely
> need to be
>   verified manually.
>   
>   If you think the reported changes have nothing to do with the
> changes
>   introduced in Patchwork_9205_full, please notify your bug team to
> allow them
>   to document this new failure mode, which will reduce false
> positives in CI.
> 
>   External URL: https://patchwork.freedesktop.org/api/1.0/series/4420
> 1/revisions/3/mbox/
> 
> == Possible new issues ==
> 
>   Here are the unknown changes that may have been introduced in
> Patchwork_9205_full:
> 
>   === IGT changes ===
> 
>  Possible regressions 
> 
> igt@drv_selftest@live_hangcheck:
>   shard-kbl:  PASS -> DMESG-FAIL
> 
> 
>  Warnings 
> 
> igt@drv_selftest@live_guc:
>   shard-kbl:  PASS -> SKIP +1
> 

These negative results do not relate to my changes.

> 
>   Here are the changes found in Patchwork_9205_full that come from
> known issues:
> 
>   === IGT changes ===
> 
>  Issues hit 
> 
> igt@gem_ctx_isolation@bcs0-s3:
>   shard-kbl:  PASS -> INCOMPLETE (fdo#103665) +1
> 
> igt@gem_eio@suspend:
>   shard-snb:  PASS -> FAIL (fdo#105957)
> 
> igt@gem_ppgtt@blt-vs-render-ctxn:
>   shard-kbl:  PASS -> INCOMPLETE (fdo#103665, fdo#106023)
> 
> igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
>   shard-glk:  PASS -> FAIL (fdo#100368) +2
> 
> igt@kms_flip@flip-vs-expired-vblank-interruptible:
>   shard-glk:  PASS -> FAIL (fdo#102887, fdo#105363)
> 
> igt@kms_flip_tiling@flip-y-tiled:
>   shard-glk:  PASS -> FAIL (fdo#104724, fdo#103822)
> 
> 
>  Possible fixes 
> 
> igt@drv_selftest@live_gtt:
>   shard-glk:  INCOMPLETE (k.org#198133, fdo#103359) ->
> PASS
> 
> igt@drv_selftest@live_hangcheck:
>   shard-apl:  DMESG-FAIL (fdo#106560) -> PASS
> 
> igt@kms_flip@2x-flip-vs-expired-vblank:
>   shard-glk:  FAIL (fdo#105363) -> PASS
> 
> 
>   fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
>   fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
>   fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
>   fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
>   fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
>   fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
>   fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
>   fdo#105957 https://bugs.freedesktop.org/show_bug.cgi?id=105957
>   fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
>   fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
>   k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
> 
> 
> == Participating hosts (5 -> 5) ==
> 
>   No changes in participating hosts
> 
> 
> == Build changes ==
> 
> * Linux: CI_DRM_4280 -> Patchwork_9205
> 
>   CI_DRM_4280: 967aa2f22752af3adc629b50e7d2ed2b7e061e44 @
> git://anongit.freedesktop.org/gfx-ci/linux
>   IGT_4507: 938135f033d7fd79c04a7a042d40f9d074489ffd @
> git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
>   Patchwork_9205: 2d8957f508dca1fd3b25f006a40388ea2a020080 @
> git://anongit.freedesktop.org/gfx-ci/linux
> 
> == Logs ==
> 
> For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchw
> ork_9205/shards.html

smime.p7s
Description: S/MIME cryptographic signature
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/gtt: Make gen6 page directories evictable

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/gtt: Make gen6 page directories evictable
URL   : https://patchwork.freedesktop.org/series/44623/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4306 -> Patchwork_9275 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9275 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9275, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44623/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9275:

  === IGT changes ===

 Warnings 

igt@gem_exec_gttfill@basic:
  fi-pnv-d510:PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9275 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_basic@gtt-render:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000)

igt@gem_exec_gttfill@basic:
  fi-byt-n2820:   PASS -> FAIL (fdo#106744)

igt@gem_exec_suspend@basic-s3:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#105719)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@kms_flip@basic-flip-vs-dpms:
  fi-glk-j4005:   DMESG-WARN (fdo#106000) -> PASS


  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106744 https://bugs.freedesktop.org/show_bug.cgi?id=106744


== Participating hosts (43 -> 38) ==

  Missing(5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4306 -> Patchwork_9275

  CI_DRM_4306: 46ac5b5698d4aea58eb440f1ec47d734762259f7 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9275: 903967c3061a798c8feef2c6c73c468481f86cc9 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

903967c3061a drm/i915/gtt: Make gen6 page directories evictable

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9275/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915/gtt: Make gen6 page directories evictable

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/gtt: Make gen6 page directories evictable
URL   : https://patchwork.freedesktop.org/series/44623/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm/i915/gtt: Make gen6 page directories evictable
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1709:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1709:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1961:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1961:9: warning: expression using 
sizeof(void)

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: move towards kernel types (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types (rev2)
URL   : https://patchwork.freedesktop.org/series/44610/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305_full -> Patchwork_9272_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9272_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9272_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9272_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +2

igt@gem_mocs_settings@mocs-rc6-vebox:
  shard-kbl:  PASS -> SKIP +3

igt@gem_tiled_blits@normal:
  shard-glk:  SKIP -> PASS

igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
  shard-snb:  SKIP -> PASS +3


== Known issues ==

  Here are the changes found in Patchwork_9272_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-kbl:  PASS -> INCOMPLETE (fdo#103665)
  shard-glk:  PASS -> FAIL (fdo#105347)

igt@kms_cursor_legacy@cursora-vs-flipa-toggle:
  shard-glk:  PASS -> DMESG-WARN (fdo#105763)

igt@kms_flip_tiling@flip-to-y-tiled:
  shard-glk:  PASS -> FAIL (fdo#104724, fdo#103822)


 Possible fixes 

igt@drv_suspend@shrink:
  shard-hsw:  INCOMPLETE (fdo#103540) -> PASS

igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
  shard-hsw:  FAIL (fdo#103060) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank:
  shard-hsw:  FAIL (fdo#102887) -> PASS

igt@kms_flip@2x-flip-vs-fences:
  shard-glk:  INCOMPLETE (k.org#198133, fdo#103359) -> PASS +1

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-glk:  FAIL (fdo#100368) -> PASS
  shard-hsw:  FAIL (fdo#100368) -> PASS

igt@kms_flip_tiling@flip-x-tiled:
  shard-glk:  FAIL (fdo#104724, fdo#103822) -> PASS +1


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#105763 https://bugs.freedesktop.org/show_bug.cgi?id=105763
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9272

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9272: 63e510d8cf5be48d1cd705797004da2b8cbf6ad9 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9272/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [CI 1/2] drm/i915/icl: Add allowed DP rates for Icelake

2018-06-12 Thread Ville Syrjälä
On Mon, Jun 11, 2018 at 03:26:54PM -0700, Paulo Zanoni wrote:
> From: Manasi Navare 
> 
> For ICL, on Combo PHY the allowed max rates are:
>  - HBR3 8.1 eDP (DDIA)
>  - HBR2 5.4 DisplayPort (DDIB)
> and for MG PHY/TC DDI Ports allowed DP rates are:
>  - HBR3 8.1 DisplayPort (DP alternate mode, DP over TBT,
>  - DP on legacy connector - DDIC/D/E/F)
> 
> Cc: Rodrigo Vivi 
> Cc: Jani Nikula 
> Reviewed-by: James Ausmus 
> Signed-off-by: Manasi Navare 
> Signed-off-by: James Ausmus 
> [Paulo: bikeshed to keep future platforms on "else".]
> Signed-off-by: Paulo Zanoni 
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 21 +++--
>  1 file changed, 19 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 37b9f62aeb6e..8371159cc192 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -256,6 +256,20 @@ static int cnl_max_source_rate(struct intel_dp *intel_dp)
>   return 81;
>  }
>  
> +static int icl_max_source_rate(struct intel_dp *intel_dp)
> +{
> + struct intel_digital_port *dig_port = dp_to_dig_port(intel_dp);
> + enum port port = dig_port->base.port;
> +
> + /* On Combo PHY port A max speed is HBR3 for all Vccio voltages
> +  * and on Combo PHY Port B the maximum supported is HBR2.
> +  */

And what about the other ports? If port B is the only
exception why are we even discussing port A specifically
here?

> + if (port == PORT_B)
> + return 54;
> +
> + return 81;
> +}
> +
>  static void
>  intel_dp_set_source_rates(struct intel_dp *intel_dp)
>  {
> @@ -285,10 +299,13 @@ intel_dp_set_source_rates(struct intel_dp *intel_dp)
>   /* This should only be done once */
>   WARN_ON(intel_dp->source_rates || intel_dp->num_source_rates);
>  
> - if (IS_CANNONLAKE(dev_priv)) {
> + if (INTEL_GEN(dev_priv) >= 10) {
>   source_rates = cnl_rates;
>   size = ARRAY_SIZE(cnl_rates);
> - max_rate = cnl_max_source_rate(intel_dp);
> + if (INTEL_GEN(dev_priv) == 10)
> + max_rate = cnl_max_source_rate(intel_dp);
> + else
> + max_rate = icl_max_source_rate(intel_dp);
>   } else if (IS_GEN9_LP(dev_priv)) {
>   source_rates = bxt_rates;
>   size = ARRAY_SIZE(bxt_rates);
> -- 
> 2.14.4
> 
> ___
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v3] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled

2018-06-12 Thread Ville Syrjälä
On Tue, Jun 12, 2018 at 12:17:41AM -0700, Abhay Kumar wrote:
> From: Ville Syrjälä 
> 
> CDCLK has to be at least twice the BLCK regardless of audio. Audio
> driver has to probe using this hook and increase the clock even in
> absence of any display.
> 
> v2: Use atomic refcount for get_power, put_power so that we can
> call each once(Abhay).
> v3: Reset power well 2 to avoid any transaction on iDisp link
> during cdclk change(Abhay).
> 
> Signed-off-by: Ville Syrjälä 
> Signed-off-by: Abhay Kumar 
> ---
>  drivers/gpu/drm/i915/i915_drv.h  |  3 ++
>  drivers/gpu/drm/i915/i915_reg.h  |  4 ++
>  drivers/gpu/drm/i915/intel_audio.c   | 87 
> ++--
>  drivers/gpu/drm/i915/intel_cdclk.c   | 29 
>  drivers/gpu/drm/i915/intel_display.c |  7 ++-
>  drivers/gpu/drm/i915/intel_drv.h |  2 +
>  6 files changed, 107 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
> index 6104d7115054..a4a386a5db69 100644
> --- a/drivers/gpu/drm/i915/i915_drv.h
> +++ b/drivers/gpu/drm/i915/i915_drv.h
> @@ -1702,6 +1702,7 @@ struct drm_i915_private {
>   unsigned int hpll_freq;
>   unsigned int fdi_pll_freq;
>   unsigned int czclk_freq;
> + u32 get_put_refcount;
>  
>   struct {
>   /*
> @@ -1719,6 +1720,8 @@ struct drm_i915_private {
>   struct intel_cdclk_state actual;
>   /* The current hardware cdclk state */
>   struct intel_cdclk_state hw;
> +
> + int force_min_cdclk;
>   } cdclk;
>  
>   /**
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 987def26ce82..cef770184245 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -8869,6 +8869,10 @@ enum skl_power_gate {
>   * SKL Clocks
>   */
>  
> +/* Power well 2 */
> +#define POWER_WELL_2 _MMIO(0x45404)
> +#define POWER_WELL_2_REQUEST (1<<31)
> +
>  /* CDCLK_CTL */
>  #define CDCLK_CTL_MMIO(0x46000)
>  #define  CDCLK_FREQ_SEL_MASK (3 << 26)
> diff --git a/drivers/gpu/drm/i915/intel_audio.c 
> b/drivers/gpu/drm/i915/intel_audio.c
> index 3ea566f99450..1f5a9af13ef0 100644
> --- a/drivers/gpu/drm/i915/intel_audio.c
> +++ b/drivers/gpu/drm/i915/intel_audio.c
> @@ -618,7 +618,6 @@ void intel_audio_codec_enable(struct intel_encoder 
> *encoder,
>  
>   if (!connector->eld[0])
>   return;
> -
>   DRM_DEBUG_DRIVER("ELD on [CONNECTOR:%d:%s], [ENCODER:%d:%s]\n",
>connector->base.id,
>connector->name,
> @@ -713,14 +712,94 @@ void intel_init_audio_hooks(struct drm_i915_private 
> *dev_priv)
>   }
>  }
>  
> +static void glk_force_audio_cdclk(struct drm_i915_private *dev_priv,
> + bool enable)
> +{
> + struct drm_modeset_acquire_ctx ctx;
> + struct drm_atomic_state *state;
> + int ret;
> +
> + drm_modeset_acquire_init(, 0);
> + state = drm_atomic_state_alloc(_priv->drm);
> + if (WARN_ON(!state))
> + return;
> +
> + state->acquire_ctx = 
> +
> +retry:
> + to_intel_atomic_state(state)->modeset = true;
> + to_intel_atomic_state(state)->cdclk.force_min_cdclk =
> + enable ? 2 * 96000 : 0;
> +
> + /*
> +  * Protects dev_priv->cdclk.force_min_cdclk
> +  * Need to lock this here in case we have no active pipes
> +  * and thus wouldn't lock it during the commit otherwise.
> +  */
> + ret = drm_modeset_lock(_priv->drm.mode_config.connection_mutex, 
> );
> + if (!ret)
> + ret = drm_atomic_commit(state);
> +
> + if (ret == -EDEADLK) {
> + drm_atomic_state_clear(state);
> + drm_modeset_backoff();
> + goto retry;
> + }
> +
> + WARN_ON(ret);
> +
> + drm_atomic_state_put(state);
> +
> + drm_modeset_drop_locks();
> + drm_modeset_acquire_fini();
> +}
> +
>  static void i915_audio_component_get_power(struct device *kdev)
>  {
> - intel_display_power_get(kdev_to_i915(kdev), POWER_DOMAIN_AUDIO);
> + struct drm_i915_private *dev_priv = kdev_to_i915(kdev);
> + u32 tmp;
> +
> + dev_priv->get_put_refcount++;
> +
> + /* Force cdclk to 2*BCLK during first time get power call */
> + if (dev_priv->get_put_refcount == 1) {
> + if (IS_CANNONLAKE(dev_priv) || IS_GEMINILAKE(dev_priv)) {
> +
> + /*FIXME: Make sure there is no transaction
> +  * on iDisp link while changing cdclk
> +  */
> +
> + /* Turn off power well 2*/
> + tmp = I915_READ(POWER_WELL_2);
> + tmp = tmp & ~POWER_WELL_2_REQUEST;
> + I915_WRITE(POWER_WELL_2, tmp);
> + tmp = I915_READ(POWER_WELL_2);
> +
> + /* Turn on power well 2*/
> + tmp = 

Re: [Intel-gfx] [PATCH][V3] drm/i915/guc: fix GEM_BUG_ON check

2018-06-12 Thread Michal Wajdeczko
On Tue, 12 Jun 2018 11:38:04 +0200, Colin King   
wrote:



From: Colin Ian King 

The check for level being less than zero always false because flags
is currently unsigned and can never be negative. Fix this by making
level a s32.

Detected by CoverityScan, CID#1468363 ("Macro compares unsigned to 0")

Fixes: cb5d64e9f13e ("drm/i915/guc: Allow user to control default GuC  
logging")

Signed-off-by: Colin Ian King 

---
V3: Make level s32 and add the missing Fixes: tag, thanks to Dan  
Carpenter and

Jani Nikula for correcting my mistakes

---
 drivers/gpu/drm/i915/intel_guc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_guc.c  
b/drivers/gpu/drm/i915/intel_guc.c

index 116f4ccf1bbd..bdb1fab322bf 100644
--- a/drivers/gpu/drm/i915/intel_guc.c
+++ b/drivers/gpu/drm/i915/intel_guc.c
@@ -205,7 +205,7 @@ void intel_guc_fini(struct intel_guc *guc)
static u32 get_log_control_flags(void)
 {
-   u32 level = i915_modparams.guc_log_level;
+   s32 level = i915_modparams.guc_log_level;


s/s32 level/int level

to match modparam type as already suggested by others


u32 flags = 0;
GEM_BUG_ON(level < 0);


please note that this BUG_ON will go away with pending [1] so maybe
we can just merge series [2] instead ?

Thanks,
Michal

[1] https://patchwork.freedesktop.org/patch/227365/
[2] https://patchwork.freedesktop.org/series/44201/
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [CI] drm/i915/gtt: Make gen6 page directories evictable

2018-06-12 Thread Chris Wilson
Currently all page directories are bound at creation using an
unevictable node in the GGTT. This severely limits us as we cannot
remove any inactive ppgtt for new contexts, or under aperture pressure.
To fix this we need to make the page directory into a first class and
unbindable vma. Hence, the creation of a custom vma to wrap the page
directory as opposed to a GEM object.

In this patch, we leave the page directories pinned upon creation.

Signed-off-by: Chris Wilson 
Cc: Joonas Lahtinen 
Cc: Mika Kuoppala 
Cc: Matthew Auld 
Reviewed-by: Matthew Auld 
---
 drivers/gpu/drm/i915/i915_gem_gtt.c | 257 
 drivers/gpu/drm/i915/i915_gem_gtt.h |   2 +-
 drivers/gpu/drm/i915/i915_vma.h |   7 +
 3 files changed, 155 insertions(+), 111 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c 
b/drivers/gpu/drm/i915/i915_gem_gtt.c
index e9fcc4370b1a..c6949da3423f 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -1640,50 +1640,55 @@ static void gen6_dump_ppgtt(struct i915_hw_ppgtt *base, 
struct seq_file *m)
 {
struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(base);
struct i915_address_space *vm = >vm;
-   struct i915_page_table *unused;
-   gen6_pte_t scratch_pte;
-   u32 pd_entry, pte, pde;
-
-   scratch_pte = vm->pte_encode(vm->scratch_page.daddr, I915_CACHE_LLC, 0);
-
-   gen6_for_all_pdes(unused, >pd, pde) {
-   u32 expected;
-   gen6_pte_t *pt_vaddr;
-   const dma_addr_t pt_addr = px_dma(base->pd.page_table[pde]);
-   pd_entry = readl(ppgtt->pd_addr + pde);
-   expected = (GEN6_PDE_ADDR_ENCODE(pt_addr) | GEN6_PDE_VALID);
-
-   if (pd_entry != expected)
-   seq_printf(m, "\tPDE #%d mismatch: Actual PDE: %x 
Expected PDE: %x\n",
-  pde,
-  pd_entry,
-  expected);
-   seq_printf(m, "\tPDE: %x\n", pd_entry);
-
-   pt_vaddr = kmap_atomic_px(base->pd.page_table[pde]);
-
-   for (pte = 0; pte < GEN6_PTES; pte+=4) {
-   unsigned long va =
-   (pde * PAGE_SIZE * GEN6_PTES) +
-   (pte * PAGE_SIZE);
+   const gen6_pte_t scratch_pte =
+   vm->pte_encode(vm->scratch_page.daddr, I915_CACHE_LLC, 0);
+   struct i915_page_table *pt;
+   u32 pte, pde;
+
+   gen6_for_all_pdes(pt, >pd, pde) {
+   gen6_pte_t *vaddr;
+
+   if (pt == base->vm.scratch_pt)
+   continue;
+
+   if (i915_vma_is_bound(ppgtt->vma, I915_VMA_GLOBAL_BIND)) {
+   u32 expected =
+   GEN6_PDE_ADDR_ENCODE(px_dma(pt)) |
+   GEN6_PDE_VALID;
+   u32 pd_entry = readl(ppgtt->pd_addr + pde);
+
+   if (pd_entry != expected)
+   seq_printf(m,
+  "\tPDE #%d mismatch: Actual PDE: %x 
Expected PDE: %x\n",
+  pde,
+  pd_entry,
+  expected);
+
+   seq_printf(m, "\tPDE: %x\n", pd_entry);
+   }
+
+   vaddr = kmap_atomic_px(base->pd.page_table[pde]);
+   for (pte = 0; pte < GEN6_PTES; pte += 4) {
int i;
-   bool found = false;
+
for (i = 0; i < 4; i++)
-   if (pt_vaddr[pte + i] != scratch_pte)
-   found = true;
-   if (!found)
+   if (vaddr[pte + i] != scratch_pte)
+   break;
+   if (i == 4)
continue;
 
-   seq_printf(m, "\t\t0x%lx [%03d,%04d]: =", va, pde, pte);
+   seq_printf(m, "\t\t(%03d, %04d) %08lx: ",
+  pde, pte,
+  (pde * GEN6_PTES + pte) * PAGE_SIZE);
for (i = 0; i < 4; i++) {
-   if (pt_vaddr[pte + i] != scratch_pte)
-   seq_printf(m, " %08x", pt_vaddr[pte + 
i]);
+   if (vaddr[pte + i] != scratch_pte)
+   seq_printf(m, " %08x", vaddr[pte + i]);
else
-   seq_puts(m, "  SCRATCH ");
+   seq_puts(m, "  SCRATCH");
}
seq_puts(m, "\n");
}
-   kunmap_atomic(pt_vaddr);
+   kunmap_atomic(vaddr);
}
 }
 
@@ -1697,22 +1702,6 @@ 

Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Chris Wilson
Quoting Lionel Landwerlin (2018-06-12 11:52:10)
> I'm looking forward to the definition of the greater good :)
> Tvrtko wanted to avoid the heuristic territory, it seems like we're just 
> stepping into it.

If we have to make any choice, we have not just stepped, but dived
head first into it. Tbh, I quite like the idea of having BPF policy
hooks. (Devil will definitely be in the details!)
-Chris
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Tvrtko Ursulin


On 12/06/2018 11:52, Lionel Landwerlin wrote:

On 12/06/18 11:37, Chris Wilson wrote:

Quoting Lionel Landwerlin (2018-06-12 11:33:34)

On 12/06/18 10:20, Joonas Lahtinen wrote:

Quoting Chris Wilson (2018-06-11 18:02:37)

Quoting Lionel Landwerlin (2018-06-11 14:46:07)

On 11/06/18 13:10, Tvrtko Ursulin wrote:

On 30/05/2018 15:33, Lionel Landwerlin wrote:
There are concerns about denial of service around the per 
context sseu

configuration capability. In a previous commit introducing the
capability we allowed it only for capable users. This changes 
adds a

new debugfs entry to let any user configure its own context
powergating setup.

As far as I understood it, Joonas' concerns here are:

1) That in the containers use case individual containers wouldn't be
able to turn on the sysfs toggle for them.

2) That also in the containers use case if box admin turns on the
feature, some containers would potentially start negatively 
affecting

the others (via the accumulated cost of slice re-configuration on
context switching).

I am not familiar with typical container setups to be authoritative
here, but intuitively I find it reasonable that a low-level hardware
switch like this would be under the control of a master domain
administrator. ("If you are installing our product in the container
environment, make sure your system administrator enables this 
hardware
feature.", "Note to system administrators: Enabling this features 
may

negatively affect the performance of other containers.")

Alternative proposal is for the i915 to apply an "or" filter on all
requested masks and in that way ensure dynamic re-configuration
doesn't happen on context switches, but driven from userspace via 
ioctls.


In other words, should _all_ userspace agree between themselves that
they want to turn off a slice, they would then need to send out a
concerted ioctl storm, where number of needed ioctls equals the 
number

of currently active contexts. (This may have its own performance
consequences caused by the barriers needed to modify all context 
images.)


This was deemed acceptable the the media use case, but my concern is
the approach is not elegant and will tie us with the "or" policy in
the ABI. (Performance concerns I haven't evaluated yet, but they 
also

may be significant.)

If we go back thinking about the containers use case, then it
transpires that even though the "or" policy does prevent one 
container

from affecting the other from one angle, it also prevents one
container from exercising the feature unless all containers 
co-operate.


As such, we can view the original problem statement where we have an
issue if not everyone co-operates, as conceptually the same just 
from
an opposite angle. (Rather than one container incurring the 
increased

cost of context switches to the rest, we would have one container
preventing the optimized slice configuration to the other.)

  From this follows that both proposals require complete 
co-operation

from all running userspace to avoid complete control of the feature.

Since the balance between the benefit of optimized slice 
configuration

(or penalty of suboptimal one), versus the penalty of increased
context switch times, cannot be know by the driver (barring 
venturing
into the heuristics territory), that is another reason why I find 
the

"or" policy in the driver questionable.

We can also ask a question of - If we go with the "or" policy, why
require N per-context ioctls to modify the global GPU configuration
and not instead add a global driver ioctl to modify the state?

If a future hardware requires, or enables, the per-context behaviour
in a more efficient way, we could then revisit the problem space.

In the mean time I see the "or" policy solution as adding some ABI
which doesn't do anything for many use cases without any way for the
sysadmin to enable it. At the same time master sysfs knob at least
enables the sysadmin to make a decision. Here I am thinking about a
random client environment where not all userspace co-operates, 
but for

instance user is running the feature aware media stack, and
non-feature aware OpenCL/3d stack.

I guess the complete story boils down to - is the master sysfs knob
really a problem in container use cases.

Regards,

Tvrtko

Hey Tvrtko,

Thanks for summarizing a bunch of discussions.
Essentially I agree with every you wrote above.

If we have a global setting (determined by the OR policy), what's the
point of per context settings?

In Dmitry's scenario, all userspace applications will work 
together to

reach the consensus so it sounds like we're reimplementing the policy
that is already existing in userspace.

Anyway, I'm implementing Joonas' suggestion. Hopefully somebody else
than me pick one or the other :)

I'll just mention the voting/consensus approach to see if anyone else
likes it.

Each context has a CONTEXT_PARAM_HINT_SSEU { small, dontcare, large }
(or some other abstract names).

Yeah, the param name should have the 

[Intel-gfx] ✓ Fi.CI.BAT: success for Enable P010, P012 and P016 formats for GLK/CNL (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: Enable P010, P012 and P016 formats for GLK/CNL (rev2)
URL   : https://patchwork.freedesktop.org/series/43891/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9274 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/43891/revisions/2/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9274 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_wait@basic-busy-all:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000) +1

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#100368)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@gem_exec_suspend@basic-s3:
  fi-skl-gvtdvm:  INCOMPLETE (fdo#105600, fdo#104108) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
  fdo#105600 https://bugs.freedesktop.org/show_bug.cgi?id=105600
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607


== Participating hosts (42 -> 37) ==

  Missing(5): fi-ctg-p8600 fi-ilk-m540 fi-bxt-dsi fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9274

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9274: b9090703ea04fcf0b22830e7c083f329b194a1ea @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

b9090703ea04 drm/i915: enable P010, P012, P016 formats for primary and sprite 
planes
13b5a18b2a3f drm/i915: preparations for enabling P010, P012, P016 formats
ffaf900fc205 drm/i915: Add P010, P012, P016 plane control definitions
c556cc92888f drm: Add P010, P012, P016 format definitions and fourcc

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9274/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for Enable P010, P012 and P016 formats for GLK/CNL (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: Enable P010, P012 and P016 formats for GLK/CNL (rev2)
URL   : https://patchwork.freedesktop.org/series/43891/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm: Add P010, P012, P016 format definitions and fourcc
Okay!

Commit: drm/i915: Add P010, P012, P016 plane control definitions
Okay!

Commit: drm/i915: preparations for enabling P010, P012, P016 formats
-O:drivers/gpu/drm/i915/intel_display.c:13099:21: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_display.c:13099:21: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_display.c:13113:21: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_display.c:13113:21: warning: expression using 
sizeof(void)

Commit: drm/i915: enable P010, P012, P016 formats for primary and sprite planes
Okay!

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/guc: fix GEM_BUG_ON check (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/guc: fix GEM_BUG_ON check (rev2)
URL   : https://patchwork.freedesktop.org/series/44578/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305_full -> Patchwork_9271_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9271_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9271_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9271_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +2

igt@gem_mocs_settings@mocs-rc6-vebox:
  shard-kbl:  PASS -> SKIP

igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
  shard-snb:  SKIP -> PASS +3

igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-pgflip-blt:
  shard-snb:  PASS -> SKIP +2


== Known issues ==

  Here are the changes found in Patchwork_9271_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-kbl:  PASS -> INCOMPLETE (fdo#103665)
  shard-glk:  PASS -> INCOMPLETE (k.org#198133, fdo#103359)

igt@gem_exec_big:
  shard-hsw:  PASS -> INCOMPLETE (fdo#103540)

igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
  shard-hsw:  PASS -> FAIL (fdo#102670)

igt@kms_flip@2x-flip-vs-absolute-wf_vblank:
  shard-hsw:  PASS -> FAIL (fdo#103928)

igt@kms_flip@modeset-vs-vblank-race:
  shard-glk:  PASS -> FAIL (fdo#103060)

igt@kms_flip_tiling@flip-to-y-tiled:
  shard-glk:  PASS -> FAIL (fdo#104724)

igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence:
  shard-hsw:  PASS -> FAIL (fdo#103481)


 Possible fixes 

igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
  shard-glk:  FAIL (fdo#106509, fdo#105454) -> PASS

igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
  shard-hsw:  FAIL (fdo#103060) -> PASS

igt@kms_flip@2x-flip-vs-expired-vblank:
  shard-hsw:  FAIL (fdo#102887) -> PASS

igt@kms_flip@2x-flip-vs-fences:
  shard-glk:  INCOMPLETE (k.org#198133, fdo#103359) -> PASS

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  FAIL (fdo#100368) -> PASS

igt@kms_setmode@basic:
  shard-apl:  FAIL (fdo#99912) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102670 https://bugs.freedesktop.org/show_bug.cgi?id=102670
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103928 https://bugs.freedesktop.org/show_bug.cgi?id=103928
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9271

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9271: 41a63d5285996d98330dc484c08a6e93d6ae8ebc @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9271/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Enable P010, P012 and P016 formats for GLK/CNL (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: Enable P010, P012 and P016 formats for GLK/CNL (rev2)
URL   : https://patchwork.freedesktop.org/series/43891/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
c556cc92888f drm: Add P010, P012, P016 format definitions and fourcc
-:28: WARNING:LONG_LINE: line over 100 characters
#28: FILE: drivers/gpu/drm/drm_fourcc.c:176:
+   { .format = DRM_FORMAT_P010,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },

-:29: WARNING:LONG_LINE: line over 100 characters
#29: FILE: drivers/gpu/drm/drm_fourcc.c:177:
+   { .format = DRM_FORMAT_P012,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },

-:30: WARNING:LONG_LINE: line over 100 characters
#30: FILE: drivers/gpu/drm/drm_fourcc.c:178:
+   { .format = DRM_FORMAT_P016,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },

-:48: WARNING:LONG_LINE_COMMENT: line over 100 characters
#48: FILE: include/uapi/drm/drm_fourcc.h:150:
+#define DRM_FORMAT_P010fourcc_code('P', '0', '1', '0') /* 2x2 
subsampled Cr:Cb plane, 10 bit per channel */

-:49: WARNING:LONG_LINE_COMMENT: line over 100 characters
#49: FILE: include/uapi/drm/drm_fourcc.h:151:
+#define DRM_FORMAT_P012fourcc_code('P', '0', '1', '2') /* 2x2 
subsampled Cr:Cb plane, 12 bit per channel */

-:50: WARNING:LONG_LINE_COMMENT: line over 100 characters
#50: FILE: include/uapi/drm/drm_fourcc.h:152:
+#define DRM_FORMAT_P016fourcc_code('P', '0', '1', '6') /* 2x2 
subsampled Cr:Cb plane, 16 bit per channel */

total: 0 errors, 6 warnings, 0 checks, 25 lines checked
ffaf900fc205 drm/i915: Add P010, P012, P016 plane control definitions
-:19: ERROR:SPACING: space prohibited after that open parenthesis '('
#19: FILE: drivers/gpu/drm/i915/i915_reg.h:6381:
+#define   PLANE_CTL_FORMAT_P010(  3 << 24)

-:21: ERROR:SPACING: space prohibited after that open parenthesis '('
#21: FILE: drivers/gpu/drm/i915/i915_reg.h:6383:
+#define   PLANE_CTL_FORMAT_P012(  5 << 24)

-:23: ERROR:SPACING: space prohibited after that open parenthesis '('
#23: FILE: drivers/gpu/drm/i915/i915_reg.h:6385:
+#define   PLANE_CTL_FORMAT_P016(  7 << 24)

total: 3 errors, 0 warnings, 0 checks, 11 lines checked
13b5a18b2a3f drm/i915: preparations for enabling P010, P012, P016 formats
-:136: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#136: FILE: drivers/gpu/drm/i915/intel_display.c:14492:
+ 
drm_get_format_name(mode_cmd->pixel_format,
+ _name));

-:142: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#142: FILE: drivers/gpu/drm/i915/intel_display.c:14498:
+ 
drm_get_format_name(mode_cmd->pixel_format,
+ _name));

total: 0 errors, 0 warnings, 2 checks, 236 lines checked
b9090703ea04 drm/i915: enable P010, P012, P016 formats for primary and sprite 
planes

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Make closing request flush mandatory

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: Make closing request flush mandatory
URL   : https://patchwork.freedesktop.org/series/44614/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9273 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44614/revisions/1/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9273 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_gttfill@basic:
  fi-byt-n2820:   PASS -> FAIL (fdo#106744)

igt@gem_exec_suspend@basic-s4-devices:
  fi-hsw-peppy:   PASS -> FAIL (fdo#105900)
  fi-kbl-7500u:   PASS -> DMESG-WARN (fdo#105128)

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#100368)


 Possible fixes 

igt@gem_exec_suspend@basic-s3:
  fi-skl-gvtdvm:  INCOMPLETE (fdo#105600, fdo#104108) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
  fdo#105128 https://bugs.freedesktop.org/show_bug.cgi?id=105128
  fdo#105600 https://bugs.freedesktop.org/show_bug.cgi?id=105600
  fdo#105900 https://bugs.freedesktop.org/show_bug.cgi?id=105900
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607
  fdo#106744 https://bugs.freedesktop.org/show_bug.cgi?id=106744


== Participating hosts (42 -> 37) ==

  Missing(5): fi-byt-j1900 fi-ctg-p8600 fi-ilk-m540 fi-bsw-cyan 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9273

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9273: f0774d6ad9407317c3b116b68be17d91c18b98ff @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

f0774d6ad940 drm/i915: Make closing request flush mandatory

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9273/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2 1/4] drm: Add P010, P012, P016 format definitions and fourcc

2018-06-12 Thread Juha-Pekka Heikkila
Add P010 definition, semi-planar yuv format where each component
is 16 bits 10 msb containing color value. First come Y plane [10:6]
followed by 2x2 subsampled Cr:Cb plane [10:6:10:6]

Add P012 definition, semi-planar yuv format where each component
is 16 bits 12 msb containing color value. First come Y plane [12:4]
followed by 2x2 subsampled Cr:Cb plane [12:4:12:4]

Add P016 definition, semi-planar yuv format where each component
is 16 bits. First come Y plane followed by 2x2 subsampled Cr:Cb
plane [16:16]

Signed-off-by: Juha-Pekka Heikkila 
---
 drivers/gpu/drm/drm_fourcc.c  |  3 +++
 include/uapi/drm/drm_fourcc.h | 10 ++
 2 files changed, 13 insertions(+)

diff --git a/drivers/gpu/drm/drm_fourcc.c b/drivers/gpu/drm/drm_fourcc.c
index 5ca6395..5bb2641 100644
--- a/drivers/gpu/drm/drm_fourcc.c
+++ b/drivers/gpu/drm/drm_fourcc.c
@@ -173,6 +173,9 @@ const struct drm_format_info *__drm_format_info(u32 format)
{ .format = DRM_FORMAT_UYVY,.depth = 0,  
.num_planes = 1, .cpp = { 2, 0, 0 }, .hsub = 2, .vsub = 1 },
{ .format = DRM_FORMAT_VYUY,.depth = 0,  
.num_planes = 1, .cpp = { 2, 0, 0 }, .hsub = 2, .vsub = 1 },
{ .format = DRM_FORMAT_AYUV,.depth = 0,  
.num_planes = 1, .cpp = { 4, 0, 0 }, .hsub = 1, .vsub = 1, .has_alpha = true },
+   { .format = DRM_FORMAT_P010,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },
+   { .format = DRM_FORMAT_P012,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },
+   { .format = DRM_FORMAT_P016,.depth = 0,  
.num_planes = 2, .cpp = { 2, 4, 0 }, .hsub = 2, .vsub = 2 },
};
 
unsigned int i;
diff --git a/include/uapi/drm/drm_fourcc.h b/include/uapi/drm/drm_fourcc.h
index 64bf67a..16f7dbd 100644
--- a/include/uapi/drm/drm_fourcc.h
+++ b/include/uapi/drm/drm_fourcc.h
@@ -142,6 +142,16 @@ extern "C" {
 #define DRM_FORMAT_NV42fourcc_code('N', 'V', '4', '2') /* 
non-subsampled Cb:Cr plane */
 
 /*
+ * 2 plane YCbCr
+ * index 0 = Y plane, [15:0] Y little endian where Pxxx indicate
+ * component xxx msb Y [xxx:16-xxx]
+ * index 1 = Cr:Cb plane, [31:0] Cr:Cb little endian [xxx:16-xxx:xxx:16-xxx]
+ */
+#define DRM_FORMAT_P010fourcc_code('P', '0', '1', '0') /* 2x2 
subsampled Cr:Cb plane, 10 bit per channel */
+#define DRM_FORMAT_P012fourcc_code('P', '0', '1', '2') /* 2x2 
subsampled Cr:Cb plane, 12 bit per channel */
+#define DRM_FORMAT_P016fourcc_code('P', '0', '1', '6') /* 2x2 
subsampled Cr:Cb plane, 16 bit per channel */
+
+/*
  * 3 plane YCbCr
  * index 0: Y plane, [7:0] Y
  * index 1: Cb plane, [7:0] Cb
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2 4/4] drm/i915: enable P010, P012, P016 formats for primary and sprite planes

2018-06-12 Thread Juha-Pekka Heikkila
Enabling of P010, P012 and P016 formats. These formats will
extend NV12 for larger bit depths.

Signed-off-by: Juha-Pekka Heikkila 
---
 drivers/gpu/drm/i915/intel_display.c | 24 +-
 drivers/gpu/drm/i915/intel_sprite.c  | 39 +++-
 2 files changed, 61 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index 728684c..84bdd39 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -104,6 +104,25 @@ static const uint32_t skl_pri_planar_formats[] = {
DRM_FORMAT_NV12,
 };
 
+static const uint32_t glk_primary_formats[] = {
+   DRM_FORMAT_C8,
+   DRM_FORMAT_RGB565,
+   DRM_FORMAT_XRGB,
+   DRM_FORMAT_XBGR,
+   DRM_FORMAT_ARGB,
+   DRM_FORMAT_ABGR,
+   DRM_FORMAT_XRGB2101010,
+   DRM_FORMAT_XBGR2101010,
+   DRM_FORMAT_YUYV,
+   DRM_FORMAT_YVYU,
+   DRM_FORMAT_UYVY,
+   DRM_FORMAT_VYUY,
+   DRM_FORMAT_NV12,
+   DRM_FORMAT_P010,
+   DRM_FORMAT_P012,
+   DRM_FORMAT_P016,
+};
+
 static const uint64_t skl_format_modifiers_noccs[] = {
I915_FORMAT_MOD_Yf_TILED,
I915_FORMAT_MOD_Y_TILED,
@@ -13635,7 +13654,10 @@ intel_primary_plane_create(struct drm_i915_private 
*dev_priv, enum pipe pipe)
primary->has_ccs = skl_plane_has_ccs(dev_priv, pipe,
 PLANE_PRIMARY);
 
-   if (skl_plane_has_planar(dev_priv, pipe, PLANE_PRIMARY)) {
+   if (IS_GEMINILAKE(dev_priv) || IS_CANNONLAKE(dev_priv)) {
+   intel_primary_formats = glk_primary_formats;
+   num_formats = ARRAY_SIZE(glk_primary_formats);
+   } else if (skl_plane_has_planar(dev_priv, pipe, PLANE_PRIMARY)) 
{
intel_primary_formats = skl_pri_planar_formats;
num_formats = ARRAY_SIZE(skl_pri_planar_formats);
} else {
diff --git a/drivers/gpu/drm/i915/intel_sprite.c 
b/drivers/gpu/drm/i915/intel_sprite.c
index 61b6bd7..c238017 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -1297,6 +1297,22 @@ static uint32_t skl_planar_formats[] = {
DRM_FORMAT_NV12,
 };
 
+static uint32_t glk_planar_formats[] = {
+   DRM_FORMAT_RGB565,
+   DRM_FORMAT_ABGR,
+   DRM_FORMAT_ARGB,
+   DRM_FORMAT_XBGR,
+   DRM_FORMAT_XRGB,
+   DRM_FORMAT_YUYV,
+   DRM_FORMAT_YVYU,
+   DRM_FORMAT_UYVY,
+   DRM_FORMAT_VYUY,
+   DRM_FORMAT_NV12,
+   DRM_FORMAT_P010,
+   DRM_FORMAT_P012,
+   DRM_FORMAT_P016,
+};
+
 static const uint64_t skl_plane_format_modifiers_noccs[] = {
I915_FORMAT_MOD_Yf_TILED,
I915_FORMAT_MOD_Y_TILED,
@@ -1542,7 +1558,28 @@ intel_sprite_plane_create(struct drm_i915_private 
*dev_priv,
}
intel_plane->base.state = >base;
 
-   if (INTEL_GEN(dev_priv) >= 9) {
+   if (IS_GEMINILAKE(dev_priv) || IS_CANNONLAKE(dev_priv)) {
+   intel_plane->can_scale = true;
+   state->scaler_id = -1;
+
+   intel_plane->update_plane = skl_update_plane;
+   intel_plane->disable_plane = skl_disable_plane;
+   intel_plane->get_hw_state = skl_plane_get_hw_state;
+
+   if (skl_plane_has_planar(dev_priv, pipe,
+PLANE_SPRITE0 + plane)) {
+   plane_formats = glk_planar_formats;
+   num_plane_formats = ARRAY_SIZE(glk_planar_formats);
+   } else {
+   plane_formats = skl_plane_formats;
+   num_plane_formats = ARRAY_SIZE(skl_plane_formats);
+   }
+
+   if (skl_plane_has_ccs(dev_priv, pipe, PLANE_SPRITE0 + plane))
+   modifiers = skl_plane_format_modifiers_ccs;
+   else
+   modifiers = skl_plane_format_modifiers_noccs;
+   } else if (INTEL_GEN(dev_priv) >= 9) {
intel_plane->can_scale = true;
state->scaler_id = -1;
 
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2 3/4] drm/i915: preparations for enabling P010, P012, P016 formats

2018-06-12 Thread Juha-Pekka Heikkila
Preparations for enabling P010, P012 and P016 formats. These
formats will extend NV12 for larger bit depths.

Signed-off-by: Juha-Pekka Heikkila 
---
 drivers/gpu/drm/i915/intel_atomic.c   |  3 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c |  2 +-
 drivers/gpu/drm/i915/intel_display.c  | 46 +++
 drivers/gpu/drm/i915/intel_drv.h  |  1 +
 drivers/gpu/drm/i915/intel_pm.c   | 19 ++---
 drivers/gpu/drm/i915/intel_sprite.c   | 21 +-
 6 files changed, 72 insertions(+), 20 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_atomic.c 
b/drivers/gpu/drm/i915/intel_atomic.c
index 61ddb58..d42624b 100644
--- a/drivers/gpu/drm/i915/intel_atomic.c
+++ b/drivers/gpu/drm/i915/intel_atomic.c
@@ -332,8 +332,7 @@ int intel_atomic_setup_scalers(struct drm_i915_private 
*dev_priv,
/* set scaler mode */
if ((INTEL_GEN(dev_priv) >= 9) &&
plane_state && plane_state->base.fb &&
-   plane_state->base.fb->format->format ==
-   DRM_FORMAT_NV12) {
+   is_planar_yuv_format(plane_state->base.fb->format->format)) 
{
if (INTEL_GEN(dev_priv) == 9 &&
!IS_GEMINILAKE(dev_priv) &&
!IS_SKYLAKE(dev_priv))
diff --git a/drivers/gpu/drm/i915/intel_atomic_plane.c 
b/drivers/gpu/drm/i915/intel_atomic_plane.c
index e8bf4cc..5b08d53 100644
--- a/drivers/gpu/drm/i915/intel_atomic_plane.c
+++ b/drivers/gpu/drm/i915/intel_atomic_plane.c
@@ -182,7 +182,7 @@ int intel_plane_atomic_check_with_state(const struct 
intel_crtc_state *old_crtc_
else
crtc_state->active_planes &= ~BIT(intel_plane->id);
 
-   if (state->visible && state->fb->format->format == DRM_FORMAT_NV12)
+   if (state->visible && is_planar_yuv_format(state->fb->format->format))
crtc_state->nv12_planes |= BIT(intel_plane->id);
else
crtc_state->nv12_planes &= ~BIT(intel_plane->id);
diff --git a/drivers/gpu/drm/i915/intel_display.c 
b/drivers/gpu/drm/i915/intel_display.c
index 2c16c3a..728684c 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2667,6 +2667,12 @@ int skl_format_to_fourcc(int format, bool rgb_order, 
bool alpha)
return DRM_FORMAT_RGB565;
case PLANE_CTL_FORMAT_NV12:
return DRM_FORMAT_NV12;
+   case PLANE_CTL_FORMAT_P010:
+   return DRM_FORMAT_P010;
+   case PLANE_CTL_FORMAT_P012:
+   return DRM_FORMAT_P012;
+   case PLANE_CTL_FORMAT_P016:
+   return DRM_FORMAT_P016;
default:
case PLANE_CTL_FORMAT_XRGB_:
if (rgb_order) {
@@ -3182,7 +3188,7 @@ int skl_check_plane_surface(const struct intel_crtc_state 
*crtc_state,
 * Handle the AUX surface first since
 * the main surface setup depends on it.
 */
-   if (fb->format->format == DRM_FORMAT_NV12) {
+   if (is_planar_yuv_format(fb->format->format)) {
ret = skl_check_nv12_surface(crtc_state, plane_state);
if (ret)
return ret;
@@ -3507,6 +3513,12 @@ static u32 skl_plane_ctl_format(uint32_t pixel_format)
return PLANE_CTL_FORMAT_YUV422 | PLANE_CTL_YUV422_VYUY;
case DRM_FORMAT_NV12:
return PLANE_CTL_FORMAT_NV12;
+   case DRM_FORMAT_P010:
+   return PLANE_CTL_FORMAT_P010;
+   case DRM_FORMAT_P012:
+   return PLANE_CTL_FORMAT_P012;
+   case DRM_FORMAT_P016:
+   return PLANE_CTL_FORMAT_P016;
default:
MISSING_CASE(pixel_format);
}
@@ -4808,8 +4820,7 @@ skl_update_scaler(struct intel_crtc_state *crtc_state, 
bool force_detach,
need_scaling = src_w != dst_w || src_h != dst_h;
 
if (plane_scaler_check)
-   if (pixel_format == DRM_FORMAT_NV12)
-   need_scaling = true;
+   need_scaling = is_planar_yuv_format(pixel_format);
 
if (crtc_state->ycbcr420 && scaler_user == SKL_CRTC_INDEX)
need_scaling = true;
@@ -4850,7 +4861,7 @@ skl_update_scaler(struct intel_crtc_state *crtc_state, 
bool force_detach,
return 0;
}
 
-   if (plane_scaler_check && pixel_format == DRM_FORMAT_NV12 &&
+   if (plane_scaler_check && is_planar_yuv_format(pixel_format) &&
(src_h < SKL_MIN_YUV_420_SRC_H || src_w < SKL_MIN_YUV_420_SRC_W)) {
DRM_DEBUG_KMS("NV12: src dimensions not met\n");
return -EINVAL;
@@ -4955,6 +4966,9 @@ static int skl_update_scaler_plane(struct 
intel_crtc_state *crtc_state,
case DRM_FORMAT_UYVY:
case DRM_FORMAT_VYUY:
case DRM_FORMAT_NV12:
+   case DRM_FORMAT_P010:
+   case DRM_FORMAT_P012:
+   case DRM_FORMAT_P016:
break;
default:

[Intel-gfx] [PATCH v2 2/4] drm/i915: Add P010, P012, P016 plane control definitions

2018-06-12 Thread Juha-Pekka Heikkila
Add needed plane control flag definitions for P010, P012 and
P016 formats.

Signed-off-by: Juha-Pekka Heikkila 
---
 drivers/gpu/drm/i915/i915_reg.h | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
index 987def2..9add270 100644
--- a/drivers/gpu/drm/i915/i915_reg.h
+++ b/drivers/gpu/drm/i915/i915_reg.h
@@ -6378,8 +6378,11 @@ enum {
 #define   PLANE_CTL_FORMAT_YUV422  (  0 << 24)
 #define   PLANE_CTL_FORMAT_NV12(  1 << 24)
 #define   PLANE_CTL_FORMAT_XRGB_2101010(  2 << 24)
+#define   PLANE_CTL_FORMAT_P010(  3 << 24)
 #define   PLANE_CTL_FORMAT_XRGB_   (  4 << 24)
+#define   PLANE_CTL_FORMAT_P012(  5 << 24)
 #define   PLANE_CTL_FORMAT_XRGB_16161616F  (  6 << 24)
+#define   PLANE_CTL_FORMAT_P016(  7 << 24)
 #define   PLANE_CTL_FORMAT_AYUV(  8 << 24)
 #define   PLANE_CTL_FORMAT_INDEXED ( 12 << 24)
 #define   PLANE_CTL_FORMAT_RGB_565 ( 14 << 24)
-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2 0/4] Enable P010, P012 and P016 formats for GLK/CNL

2018-06-12 Thread Juha-Pekka Heikkila
v2: Rebase and add better comment for Pxxx formats into drm_fourcc.h

These patches enable P010, P012 and P016 formats for GLK and CNL.
These formats are similar to NV12 extending from 8 bits per channel
to 10, 12 and 16 bits per channel.

For user space components there is in IGT kms_available_modes_crc test
which can test these new modes, test need to be recompiled with 
DRM_FORMAT_Pxxx definitions in place. For VLC media player I've made
KMS video out plugin which will be able to show these new modes. This vout
plugin is still work in progress, first version of my plugin can be seen
here: https://mailman.videolan.org/pipermail/vlc-devel/2018-May/119013.html

Juha-Pekka Heikkila (4):
  drm: Add P010, P012, P016 format definitions and fourcc
  drm/i915: Add P010, P012, P016 plane control definitions
  drm/i915: preparations for enabling P010, P012, P016 formats
  drm/i915: enable P010, P012, P016 formats for primary and sprite
planes

 drivers/gpu/drm/drm_fourcc.c  |  3 ++
 drivers/gpu/drm/i915/i915_reg.h   |  3 ++
 drivers/gpu/drm/i915/intel_atomic.c   |  3 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c |  2 +-
 drivers/gpu/drm/i915/intel_display.c  | 70 +++
 drivers/gpu/drm/i915/intel_drv.h  |  1 +
 drivers/gpu/drm/i915/intel_pm.c   | 19 -
 drivers/gpu/drm/i915/intel_sprite.c   | 60 +-
 include/uapi/drm/drm_fourcc.h | 10 +
 9 files changed, 149 insertions(+), 22 deletions(-)

-- 
2.7.4

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt

2018-06-12 Thread Patchwork
== Series Details ==

Series: series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt
URL   : https://patchwork.freedesktop.org/series/44608/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305_full -> Patchwork_9269_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9269_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9269_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9269_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  SKIP -> PASS +2

igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
  shard-snb:  SKIP -> PASS +3

igt@perf_pmu@rc6:
  shard-kbl:  PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9269_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@drv_selftest@live_gtt:
  shard-glk:  PASS -> FAIL (fdo#105347)

igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
  shard-glk:  PASS -> FAIL (fdo#100368)


 Possible fixes 

igt@drv_suspend@shrink:
  shard-hsw:  INCOMPLETE (fdo#103540) -> PASS

igt@kms_flip@2x-dpms-vs-vblank-race-interruptible:
  shard-hsw:  FAIL (fdo#103060) -> PASS

igt@kms_flip@2x-flip-vs-fences:
  shard-glk:  INCOMPLETE (k.org#198133, fdo#103359) -> PASS

igt@kms_flip@plain-flip-fb-recreate-interruptible:
  shard-glk:  FAIL (fdo#100368) -> PASS

igt@kms_flip@plain-flip-ts-check-interruptible:
  shard-hsw:  FAIL (fdo#100368) -> PASS

igt@kms_flip_tiling@flip-x-tiled:
  shard-glk:  FAIL (fdo#103822, fdo#104724) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9269

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9269: 54d2388afdb0286a63716eff571a7cc4122b9f78 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9269/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Lionel Landwerlin

On 12/06/18 11:37, Chris Wilson wrote:

Quoting Lionel Landwerlin (2018-06-12 11:33:34)

On 12/06/18 10:20, Joonas Lahtinen wrote:

Quoting Chris Wilson (2018-06-11 18:02:37)

Quoting Lionel Landwerlin (2018-06-11 14:46:07)

On 11/06/18 13:10, Tvrtko Ursulin wrote:

On 30/05/2018 15:33, Lionel Landwerlin wrote:

There are concerns about denial of service around the per context sseu
configuration capability. In a previous commit introducing the
capability we allowed it only for capable users. This changes adds a
new debugfs entry to let any user configure its own context
powergating setup.

As far as I understood it, Joonas' concerns here are:

1) That in the containers use case individual containers wouldn't be
able to turn on the sysfs toggle for them.

2) That also in the containers use case if box admin turns on the
feature, some containers would potentially start negatively affecting
the others (via the accumulated cost of slice re-configuration on
context switching).

I am not familiar with typical container setups to be authoritative
here, but intuitively I find it reasonable that a low-level hardware
switch like this would be under the control of a master domain
administrator. ("If you are installing our product in the container
environment, make sure your system administrator enables this hardware
feature.", "Note to system administrators: Enabling this features may
negatively affect the performance of other containers.")

Alternative proposal is for the i915 to apply an "or" filter on all
requested masks and in that way ensure dynamic re-configuration
doesn't happen on context switches, but driven from userspace via ioctls.

In other words, should _all_ userspace agree between themselves that
they want to turn off a slice, they would then need to send out a
concerted ioctl storm, where number of needed ioctls equals the number
of currently active contexts. (This may have its own performance
consequences caused by the barriers needed to modify all context images.)

This was deemed acceptable the the media use case, but my concern is
the approach is not elegant and will tie us with the "or" policy in
the ABI. (Performance concerns I haven't evaluated yet, but they also
may be significant.)

If we go back thinking about the containers use case, then it
transpires that even though the "or" policy does prevent one container
from affecting the other from one angle, it also prevents one
container from exercising the feature unless all containers co-operate.

As such, we can view the original problem statement where we have an
issue if not everyone co-operates, as conceptually the same just from
an opposite angle. (Rather than one container incurring the increased
cost of context switches to the rest, we would have one container
preventing the optimized slice configuration to the other.)

  From this follows that both proposals require complete co-operation
from all running userspace to avoid complete control of the feature.

Since the balance between the benefit of optimized slice configuration
(or penalty of suboptimal one), versus the penalty of increased
context switch times, cannot be know by the driver (barring venturing
into the heuristics territory), that is another reason why I find the
"or" policy in the driver questionable.

We can also ask a question of - If we go with the "or" policy, why
require N per-context ioctls to modify the global GPU configuration
and not instead add a global driver ioctl to modify the state?

If a future hardware requires, or enables, the per-context behaviour
in a more efficient way, we could then revisit the problem space.

In the mean time I see the "or" policy solution as adding some ABI
which doesn't do anything for many use cases without any way for the
sysadmin to enable it. At the same time master sysfs knob at least
enables the sysadmin to make a decision. Here I am thinking about a
random client environment where not all userspace co-operates, but for
instance user is running the feature aware media stack, and
non-feature aware OpenCL/3d stack.

I guess the complete story boils down to - is the master sysfs knob
really a problem in container use cases.

Regards,

Tvrtko

Hey Tvrtko,

Thanks for summarizing a bunch of discussions.
Essentially I agree with every you wrote above.

If we have a global setting (determined by the OR policy), what's the
point of per context settings?

In Dmitry's scenario, all userspace applications will work together to
reach the consensus so it sounds like we're reimplementing the policy
that is already existing in userspace.

Anyway, I'm implementing Joonas' suggestion. Hopefully somebody else
than me pick one or the other :)

I'll just mention the voting/consensus approach to see if anyone else
likes it.

Each context has a CONTEXT_PARAM_HINT_SSEU { small, dontcare, large }
(or some other abstract names).

Yeah, the param name should have the word _HINT_ in it when it's not a
definitive set.

There's no global setter across 

[Intel-gfx] [PATCH] drm/i915: Make closing request flush mandatory

2018-06-12 Thread Chris Wilson
For symmetry, simplicity and ensuring the request is always truly idle
upon its completion, always emit the closing flush prior to emitting the
request breadcrumb. Previously, we would only emit the flush if we had
started a user batch, but this just leaves all the other paths open to
speculation (do they affect the GPU caches or not?) With mm switching, a
key requirement is that the GPU is flushed and invalidated before hand,
so for absolute safety, we want that closing flush be mandatory.

Signed-off-by: Chris Wilson 
---
 drivers/gpu/drm/i915/i915_gem.c|  4 ++--
 drivers/gpu/drm/i915/i915_gem_context.c|  9 +
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |  4 ++--
 drivers/gpu/drm/i915/i915_request.c| 18 ++
 drivers/gpu/drm/i915/i915_request.h|  4 +---
 drivers/gpu/drm/i915/selftests/huge_pages.c|  2 +-
 .../drm/i915/selftests/i915_gem_coherency.c|  4 ++--
 .../gpu/drm/i915/selftests/i915_gem_context.c  |  4 ++--
 drivers/gpu/drm/i915/selftests/i915_request.c  |  2 +-
 .../gpu/drm/i915/selftests/intel_hangcheck.c   | 16 
 drivers/gpu/drm/i915/selftests/intel_lrc.c |  2 +-
 .../gpu/drm/i915/selftests/intel_workarounds.c |  2 +-
 12 files changed, 24 insertions(+), 47 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 93efd92362db..8dd4d35655af 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -3213,7 +3213,7 @@ void i915_gem_reset(struct drm_i915_private *dev_priv,
rq = i915_request_alloc(engine,
dev_priv->kernel_context);
if (!IS_ERR(rq))
-   __i915_request_add(rq, false);
+   i915_request_add(rq);
}
}
 
@@ -5332,7 +5332,7 @@ static int __intel_engines_record_defaults(struct 
drm_i915_private *i915)
if (engine->init_context)
err = engine->init_context(rq);
 
-   __i915_request_add(rq, true);
+   i915_request_add(rq);
if (err)
goto err_active;
}
diff --git a/drivers/gpu/drm/i915/i915_gem_context.c 
b/drivers/gpu/drm/i915/i915_gem_context.c
index b2c7ac1b074d..ef6ea4bcd773 100644
--- a/drivers/gpu/drm/i915/i915_gem_context.c
+++ b/drivers/gpu/drm/i915/i915_gem_context.c
@@ -700,14 +700,7 @@ int i915_gem_switch_to_kernel_context(struct 
drm_i915_private *i915)
i915_timeline_sync_set(rq->timeline, >fence);
}
 
-   /*
-* Force a flush after the switch to ensure that all rendering
-* and operations prior to switching to the kernel context hits
-* memory. This should be guaranteed by the previous request,
-* but an extra layer of paranoia before we declare the system
-* idle (on suspend etc) is advisable!
-*/
-   __i915_request_add(rq, true);
+   i915_request_add(rq);
}
 
return 0;
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c 
b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index 2d2eb3075960..60dc2a865f5f 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -921,7 +921,7 @@ static void reloc_gpu_flush(struct reloc_cache *cache)
i915_gem_object_unpin_map(cache->rq->batch->obj);
i915_gem_chipset_flush(cache->rq->i915);
 
-   __i915_request_add(cache->rq, true);
+   i915_request_add(cache->rq);
cache->rq = NULL;
 }
 
@@ -2438,7 +2438,7 @@ i915_gem_do_execbuffer(struct drm_device *dev,
trace_i915_request_queue(eb.request, eb.batch_flags);
err = eb_submit();
 err_request:
-   __i915_request_add(eb.request, err == 0);
+   i915_request_add(eb.request);
add_to_client(eb.request, file);
 
if (fences)
diff --git a/drivers/gpu/drm/i915/i915_request.c 
b/drivers/gpu/drm/i915/i915_request.c
index 9092f5464c24..e1dbb544046f 100644
--- a/drivers/gpu/drm/i915/i915_request.c
+++ b/drivers/gpu/drm/i915/i915_request.c
@@ -1018,14 +1018,13 @@ i915_request_await_object(struct i915_request *to,
  * request is not being tracked for completion but the work itself is
  * going to happen on the hardware. This would be a Bad Thing(tm).
  */
-void __i915_request_add(struct i915_request *request, bool flush_caches)
+void i915_request_add(struct i915_request *request)
 {
struct intel_engine_cs *engine = request->engine;
struct i915_timeline *timeline = request->timeline;
struct intel_ring *ring = request->ring;
struct i915_request *prev;
u32 *cs;
-   int err;
 
GEM_TRACE("%s fence %llx:%d\n",
  engine->name, request->fence.context, request->fence.seqno);
@@ -1046,20 +1045,7 @@ void 

Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Chris Wilson
Quoting Lionel Landwerlin (2018-06-12 11:33:34)
> On 12/06/18 10:20, Joonas Lahtinen wrote:
> > Quoting Chris Wilson (2018-06-11 18:02:37)
> >> Quoting Lionel Landwerlin (2018-06-11 14:46:07)
> >>> On 11/06/18 13:10, Tvrtko Ursulin wrote:
>  On 30/05/2018 15:33, Lionel Landwerlin wrote:
> > There are concerns about denial of service around the per context sseu
> > configuration capability. In a previous commit introducing the
> > capability we allowed it only for capable users. This changes adds a
> > new debugfs entry to let any user configure its own context
> > powergating setup.
>  As far as I understood it, Joonas' concerns here are:
> 
>  1) That in the containers use case individual containers wouldn't be
>  able to turn on the sysfs toggle for them.
> 
>  2) That also in the containers use case if box admin turns on the
>  feature, some containers would potentially start negatively affecting
>  the others (via the accumulated cost of slice re-configuration on
>  context switching).
> 
>  I am not familiar with typical container setups to be authoritative
>  here, but intuitively I find it reasonable that a low-level hardware
>  switch like this would be under the control of a master domain
>  administrator. ("If you are installing our product in the container
>  environment, make sure your system administrator enables this hardware
>  feature.", "Note to system administrators: Enabling this features may
>  negatively affect the performance of other containers.")
> 
>  Alternative proposal is for the i915 to apply an "or" filter on all
>  requested masks and in that way ensure dynamic re-configuration
>  doesn't happen on context switches, but driven from userspace via ioctls.
> 
>  In other words, should _all_ userspace agree between themselves that
>  they want to turn off a slice, they would then need to send out a
>  concerted ioctl storm, where number of needed ioctls equals the number
>  of currently active contexts. (This may have its own performance
>  consequences caused by the barriers needed to modify all context images.)
> 
>  This was deemed acceptable the the media use case, but my concern is
>  the approach is not elegant and will tie us with the "or" policy in
>  the ABI. (Performance concerns I haven't evaluated yet, but they also
>  may be significant.)
> 
>  If we go back thinking about the containers use case, then it
>  transpires that even though the "or" policy does prevent one container
>  from affecting the other from one angle, it also prevents one
>  container from exercising the feature unless all containers co-operate.
> 
>  As such, we can view the original problem statement where we have an
>  issue if not everyone co-operates, as conceptually the same just from
>  an opposite angle. (Rather than one container incurring the increased
>  cost of context switches to the rest, we would have one container
>  preventing the optimized slice configuration to the other.)
> 
>   From this follows that both proposals require complete co-operation
>  from all running userspace to avoid complete control of the feature.
> 
>  Since the balance between the benefit of optimized slice configuration
>  (or penalty of suboptimal one), versus the penalty of increased
>  context switch times, cannot be know by the driver (barring venturing
>  into the heuristics territory), that is another reason why I find the
>  "or" policy in the driver questionable.
> 
>  We can also ask a question of - If we go with the "or" policy, why
>  require N per-context ioctls to modify the global GPU configuration
>  and not instead add a global driver ioctl to modify the state?
> 
>  If a future hardware requires, or enables, the per-context behaviour
>  in a more efficient way, we could then revisit the problem space.
> 
>  In the mean time I see the "or" policy solution as adding some ABI
>  which doesn't do anything for many use cases without any way for the
>  sysadmin to enable it. At the same time master sysfs knob at least
>  enables the sysadmin to make a decision. Here I am thinking about a
>  random client environment where not all userspace co-operates, but for
>  instance user is running the feature aware media stack, and
>  non-feature aware OpenCL/3d stack.
> 
>  I guess the complete story boils down to - is the master sysfs knob
>  really a problem in container use cases.
> 
>  Regards,
> 
>  Tvrtko
> >>> Hey Tvrtko,
> >>>
> >>> Thanks for summarizing a bunch of discussions.
> >>> Essentially I agree with every you wrote above.
> >>>
> >>> If we have a global setting (determined by the OR policy), what's the
> >>> point of per context settings?
> >>>
> >>> In Dmitry's scenario, 

Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Lionel Landwerlin

On 12/06/18 10:20, Joonas Lahtinen wrote:

Quoting Chris Wilson (2018-06-11 18:02:37)

Quoting Lionel Landwerlin (2018-06-11 14:46:07)

On 11/06/18 13:10, Tvrtko Ursulin wrote:

On 30/05/2018 15:33, Lionel Landwerlin wrote:

There are concerns about denial of service around the per context sseu
configuration capability. In a previous commit introducing the
capability we allowed it only for capable users. This changes adds a
new debugfs entry to let any user configure its own context
powergating setup.

As far as I understood it, Joonas' concerns here are:

1) That in the containers use case individual containers wouldn't be
able to turn on the sysfs toggle for them.

2) That also in the containers use case if box admin turns on the
feature, some containers would potentially start negatively affecting
the others (via the accumulated cost of slice re-configuration on
context switching).

I am not familiar with typical container setups to be authoritative
here, but intuitively I find it reasonable that a low-level hardware
switch like this would be under the control of a master domain
administrator. ("If you are installing our product in the container
environment, make sure your system administrator enables this hardware
feature.", "Note to system administrators: Enabling this features may
negatively affect the performance of other containers.")

Alternative proposal is for the i915 to apply an "or" filter on all
requested masks and in that way ensure dynamic re-configuration
doesn't happen on context switches, but driven from userspace via ioctls.

In other words, should _all_ userspace agree between themselves that
they want to turn off a slice, they would then need to send out a
concerted ioctl storm, where number of needed ioctls equals the number
of currently active contexts. (This may have its own performance
consequences caused by the barriers needed to modify all context images.)

This was deemed acceptable the the media use case, but my concern is
the approach is not elegant and will tie us with the "or" policy in
the ABI. (Performance concerns I haven't evaluated yet, but they also
may be significant.)

If we go back thinking about the containers use case, then it
transpires that even though the "or" policy does prevent one container
from affecting the other from one angle, it also prevents one
container from exercising the feature unless all containers co-operate.

As such, we can view the original problem statement where we have an
issue if not everyone co-operates, as conceptually the same just from
an opposite angle. (Rather than one container incurring the increased
cost of context switches to the rest, we would have one container
preventing the optimized slice configuration to the other.)

 From this follows that both proposals require complete co-operation
from all running userspace to avoid complete control of the feature.

Since the balance between the benefit of optimized slice configuration
(or penalty of suboptimal one), versus the penalty of increased
context switch times, cannot be know by the driver (barring venturing
into the heuristics territory), that is another reason why I find the
"or" policy in the driver questionable.

We can also ask a question of - If we go with the "or" policy, why
require N per-context ioctls to modify the global GPU configuration
and not instead add a global driver ioctl to modify the state?

If a future hardware requires, or enables, the per-context behaviour
in a more efficient way, we could then revisit the problem space.

In the mean time I see the "or" policy solution as adding some ABI
which doesn't do anything for many use cases without any way for the
sysadmin to enable it. At the same time master sysfs knob at least
enables the sysadmin to make a decision. Here I am thinking about a
random client environment where not all userspace co-operates, but for
instance user is running the feature aware media stack, and
non-feature aware OpenCL/3d stack.

I guess the complete story boils down to - is the master sysfs knob
really a problem in container use cases.

Regards,

Tvrtko

Hey Tvrtko,

Thanks for summarizing a bunch of discussions.
Essentially I agree with every you wrote above.

If we have a global setting (determined by the OR policy), what's the
point of per context settings?

In Dmitry's scenario, all userspace applications will work together to
reach the consensus so it sounds like we're reimplementing the policy
that is already existing in userspace.

Anyway, I'm implementing Joonas' suggestion. Hopefully somebody else
than me pick one or the other :)

I'll just mention the voting/consensus approach to see if anyone else
likes it.

Each context has a CONTEXT_PARAM_HINT_SSEU { small, dontcare, large }
(or some other abstract names).

Yeah, the param name should have the word _HINT_ in it when it's not a
definitive set.

There's no global setter across containers, only a scenario when
everyone agrees or not. Tallying up the votes and going 

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: move towards kernel types (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types (rev2)
URL   : https://patchwork.freedesktop.org/series/44610/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9272 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9272 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9272, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44610/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9272:

  === IGT changes ===

 Warnings 

igt@gem_exec_gttfill@basic:
  fi-pnv-d510:PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9272 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_gttfill@basic:
  fi-byt-n2820:   PASS -> FAIL (fdo#106744)

igt@gem_exec_nop@basic-parallel:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#105719)

igt@kms_flip@basic-flip-vs-modeset:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000)

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#100368)
  fi-cfl-s3:  PASS -> FAIL (fdo#103928, fdo#100368)
  fi-cnl-psr: PASS -> FAIL (fdo#103928, fdo#100368)

igt@prime_vgem@basic-fence-flip:
  fi-ilk-650: PASS -> FAIL (fdo#104008)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#103928 https://bugs.freedesktop.org/show_bug.cgi?id=103928
  fdo#104008 https://bugs.freedesktop.org/show_bug.cgi?id=104008
  fdo#105719 https://bugs.freedesktop.org/show_bug.cgi?id=105719
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607
  fdo#106744 https://bugs.freedesktop.org/show_bug.cgi?id=106744


== Participating hosts (42 -> 36) ==

  Missing(6): fi-ilk-m540 fi-skl-gvtdvm fi-bdw-gvtdvm fi-bsw-cyan 
fi-ctg-p8600 fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9272

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9272: 63e510d8cf5be48d1cd705797004da2b8cbf6ad9 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

63e510d8cf5b drm/i915/lspcon: switch to kernel unsigned int types
f8db0d41ba91 drm/i915/audio: switch to kernel unsigned int types
63849ccfe923 drm/i915/backlight: switch to kernel unsigned int types
ec9c81f7b3c8 drm/i915/dvo: switch to kernel unsigned int types
d68815c38f9a drm/i915/uncore: switch to kernel unsigned int types
f22e9c3948d6 drm/i915/hdmi: switch to kernel unsigned int types
4a7207fae0c9 drm/i915/vbt: switch to kernel unsigned int types

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9272/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: move towards kernel types (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types (rev2)
URL   : https://patchwork.freedesktop.org/series/44610/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm/i915/vbt: switch to kernel unsigned int types
Okay!

Commit: drm/i915/hdmi: switch to kernel unsigned int types
Okay!

Commit: drm/i915/uncore: switch to kernel unsigned int types
Okay!

Commit: drm/i915/dvo: switch to kernel unsigned int types
Okay!

Commit: drm/i915/backlight: switch to kernel unsigned int types
Okay!

Commit: drm/i915/audio: switch to kernel unsigned int types
-O:drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:457:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:576:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:457:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:576:15: warning: expression using 
sizeof(void)

Commit: drm/i915/lspcon: switch to kernel unsigned int types
Okay!

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 0/7] drm/i915: move towards kernel types

2018-06-12 Thread Jani Nikula
On Tue, 12 Jun 2018, Tvrtko Ursulin  wrote:
> On 12/06/2018 10:19, Jani Nikula wrote:
>> Semi-RFC. Do we want to do this? Here's a batch of conversions that shouldn't
>> conflict much with in-flight patches.
>> 
>> The trouble with mixed use is that it's inconsistent, and any remaining C99
>> types will encourage their use. We could at least do the low hanging fruit?
>
> Ack from me. Doesn't seem so big to cause much pain.
>
> When you say low-hanging fruit, that implies you only dealt with a 
> particular class of occurrences?

I meant the files which don't have massive amounts of C99 types and
aren't under active development right now. I just wanted to avoid
trouble for starters. ;)

> Also going forward we have to make sure we will be able to stop them 
> creeping back in. Is checkpatch perhaps covering this? Or we could put 
> something in dim?

We can stop ignoring PREFER_KERNEL_TYPES in checkpatch (the ignores are
in dim). We don't even have to change everything for that, we just need
to change enough to make the S/N better. People tend to use the types
near the places they change.

BR,
Jani.


>
> Regards,
>
> Tvrtko
>
>> $ git grep "uint\(8\|16\|32\|64\)_t" -- drivers/gpu/drm/i915/ | sed 
>> 's/:.*//' | sort | uniq -c | sort -n
>> 
>> BR,
>> Jani.
>> 
>> 
>> Jani Nikula (7):
>>drm/i915/vbt: switch to kernel unsigned int types
>>drm/i915/hdmi: switch to kernel unsigned int types
>>drm/i915/uncore: switch to kernel unsigned int types
>>drm/i915/dvo: switch to kernel unsigned int types
>>drm/i915/backlight: switch to kernel unsigned int types
>>drm/i915/audio: switch to kernel unsigned int types
>>drm/i915/lspcon: switch to kernel unsigned int types
>> 
>>   drivers/gpu/drm/i915/dvo_ch7017.c | 20 ++--
>>   drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +++---
>>   drivers/gpu/drm/i915/dvo_ivch.c   | 26 
>>   drivers/gpu/drm/i915/dvo_ns2501.c | 44 
>> +--
>>   drivers/gpu/drm/i915/dvo_sil164.c | 10 +++---
>>   drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
>>   drivers/gpu/drm/i915/intel_audio.c| 36 +++---
>>   drivers/gpu/drm/i915/intel_bios.c |  4 +--
>>   drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 
>>   drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
>>   drivers/gpu/drm/i915/intel_hdmi.c | 14 -
>>   drivers/gpu/drm/i915/intel_lspcon.c   |  2 +-
>>   drivers/gpu/drm/i915/intel_panel.c|  8 ++---
>>   drivers/gpu/drm/i915/intel_uncore.h   | 22 +++---
>>   drivers/gpu/drm/i915/intel_vbt_defs.h |  2 +-
>>   15 files changed, 120 insertions(+), 120 deletions(-)
>> 

-- 
Jani Nikula, Intel Open Source Graphics Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/guc: fix GEM_BUG_ON check (rev2)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915/guc: fix GEM_BUG_ON check (rev2)
URL   : https://patchwork.freedesktop.org/series/44578/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9271 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9271 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9271, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44578/revisions/2/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9271:

  === IGT changes ===

 Warnings 

igt@gem_exec_gttfill@basic:
  fi-pnv-d510:PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9271 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#100368)

igt@kms_flip@basic-plain-flip:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000) +1

igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
  fi-glk-j4005:   PASS -> FAIL (fdo#103481)

igt@kms_pipe_crc_basic@read-crc-pipe-c:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607


== Participating hosts (42 -> 38) ==

  Missing(4): fi-ctg-p8600 fi-ilk-m540 fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9271

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9271: 41a63d5285996d98330dc484c08a6e93d6ae8ebc @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

41a63d528599 drm/i915/guc: fix GEM_BUG_ON check

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9271/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH 0/7] drm/i915: move towards kernel types

2018-06-12 Thread Tvrtko Ursulin


On 12/06/2018 10:19, Jani Nikula wrote:

Semi-RFC. Do we want to do this? Here's a batch of conversions that shouldn't
conflict much with in-flight patches.

The trouble with mixed use is that it's inconsistent, and any remaining C99
types will encourage their use. We could at least do the low hanging fruit?


Ack from me. Doesn't seem so big to cause much pain.

When you say low-hanging fruit, that implies you only dealt with a 
particular class of occurrences?


Also going forward we have to make sure we will be able to stop them 
creeping back in. Is checkpatch perhaps covering this? Or we could put 
something in dim?


Regards,

Tvrtko


$ git grep "uint\(8\|16\|32\|64\)_t" -- drivers/gpu/drm/i915/ | sed 's/:.*//' | 
sort | uniq -c | sort -n

BR,
Jani.


Jani Nikula (7):
   drm/i915/vbt: switch to kernel unsigned int types
   drm/i915/hdmi: switch to kernel unsigned int types
   drm/i915/uncore: switch to kernel unsigned int types
   drm/i915/dvo: switch to kernel unsigned int types
   drm/i915/backlight: switch to kernel unsigned int types
   drm/i915/audio: switch to kernel unsigned int types
   drm/i915/lspcon: switch to kernel unsigned int types

  drivers/gpu/drm/i915/dvo_ch7017.c | 20 ++--
  drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +++---
  drivers/gpu/drm/i915/dvo_ivch.c   | 26 
  drivers/gpu/drm/i915/dvo_ns2501.c | 44 +--
  drivers/gpu/drm/i915/dvo_sil164.c | 10 +++---
  drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
  drivers/gpu/drm/i915/intel_audio.c| 36 +++---
  drivers/gpu/drm/i915/intel_bios.c |  4 +--
  drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 
  drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
  drivers/gpu/drm/i915/intel_hdmi.c | 14 -
  drivers/gpu/drm/i915/intel_lspcon.c   |  2 +-
  drivers/gpu/drm/i915/intel_panel.c|  8 ++---
  drivers/gpu/drm/i915/intel_uncore.h   | 22 +++---
  drivers/gpu/drm/i915/intel_vbt_defs.h |  2 +-
  15 files changed, 120 insertions(+), 120 deletions(-)


___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH v2 4/7] drm/i915/dvo: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

v2: fix checkpatch warning on indentation

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/dvo_ch7017.c | 20 +-
 drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 ++--
 drivers/gpu/drm/i915/dvo_ivch.c   | 26 +++
 drivers/gpu/drm/i915/dvo_ns2501.c | 44 +++
 drivers/gpu/drm/i915/dvo_sil164.c | 10 -
 drivers/gpu/drm/i915/dvo_tfp410.c | 16 +++---
 drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
 7 files changed, 70 insertions(+), 70 deletions(-)

diff --git a/drivers/gpu/drm/i915/dvo_ch7017.c 
b/drivers/gpu/drm/i915/dvo_ch7017.c
index 80b3e16cf48c..caac9942e1e3 100644
--- a/drivers/gpu/drm/i915/dvo_ch7017.c
+++ b/drivers/gpu/drm/i915/dvo_ch7017.c
@@ -159,7 +159,7 @@
 #define CH7017_BANG_LIMIT_CONTROL  0x7f
 
 struct ch7017_priv {
-   uint8_t dummy;
+   u8 dummy;
 };
 
 static void ch7017_dump_regs(struct intel_dvo_device *dvo);
@@ -186,7 +186,7 @@ static bool ch7017_read(struct intel_dvo_device *dvo, u8 
addr, u8 *val)
 
 static bool ch7017_write(struct intel_dvo_device *dvo, u8 addr, u8 val)
 {
-   uint8_t buf[2] = { addr, val };
+   u8 buf[2] = { addr, val };
struct i2c_msg msg = {
.addr = dvo->slave_addr,
.flags = 0,
@@ -258,11 +258,11 @@ static void ch7017_mode_set(struct intel_dvo_device *dvo,
const struct drm_display_mode *mode,
const struct drm_display_mode *adjusted_mode)
 {
-   uint8_t lvds_pll_feedback_div, lvds_pll_vco_control;
-   uint8_t outputs_enable, lvds_control_2, lvds_power_down;
-   uint8_t horizontal_active_pixel_input;
-   uint8_t horizontal_active_pixel_output, vertical_active_line_output;
-   uint8_t active_input_line_output;
+   u8 lvds_pll_feedback_div, lvds_pll_vco_control;
+   u8 outputs_enable, lvds_control_2, lvds_power_down;
+   u8 horizontal_active_pixel_input;
+   u8 horizontal_active_pixel_output, vertical_active_line_output;
+   u8 active_input_line_output;
 
DRM_DEBUG_KMS("Registers before mode setting\n");
ch7017_dump_regs(dvo);
@@ -333,7 +333,7 @@ static void ch7017_mode_set(struct intel_dvo_device *dvo,
 /* set the CH7017 power state */
 static void ch7017_dpms(struct intel_dvo_device *dvo, bool enable)
 {
-   uint8_t val;
+   u8 val;
 
ch7017_read(dvo, CH7017_LVDS_POWER_DOWN, );
 
@@ -361,7 +361,7 @@ static void ch7017_dpms(struct intel_dvo_device *dvo, bool 
enable)
 
 static bool ch7017_get_hw_state(struct intel_dvo_device *dvo)
 {
-   uint8_t val;
+   u8 val;
 
ch7017_read(dvo, CH7017_LVDS_POWER_DOWN, );
 
@@ -373,7 +373,7 @@ static bool ch7017_get_hw_state(struct intel_dvo_device 
*dvo)
 
 static void ch7017_dump_regs(struct intel_dvo_device *dvo)
 {
-   uint8_t val;
+   u8 val;
 
 #define DUMP(reg)  \
 do {   \
diff --git a/drivers/gpu/drm/i915/dvo_ch7xxx.c 
b/drivers/gpu/drm/i915/dvo_ch7xxx.c
index 7aeeffd2428b..397ac5233726 100644
--- a/drivers/gpu/drm/i915/dvo_ch7xxx.c
+++ b/drivers/gpu/drm/i915/dvo_ch7xxx.c
@@ -85,7 +85,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
 static struct ch7xxx_id_struct {
-   uint8_t vid;
+   u8 vid;
char *name;
 } ch7xxx_ids[] = {
{ CH7011_VID, "CH7011" },
@@ -96,7 +96,7 @@ static struct ch7xxx_id_struct {
 };
 
 static struct ch7xxx_did_struct {
-   uint8_t did;
+   u8 did;
char *name;
 } ch7xxx_dids[] = {
{ CH7xxx_DID, "CH7XXX" },
@@ -107,7 +107,7 @@ struct ch7xxx_priv {
bool quiet;
 };
 
-static char *ch7xxx_get_id(uint8_t vid)
+static char *ch7xxx_get_id(u8 vid)
 {
int i;
 
@@ -119,7 +119,7 @@ static char *ch7xxx_get_id(uint8_t vid)
return NULL;
 }
 
-static char *ch7xxx_get_did(uint8_t did)
+static char *ch7xxx_get_did(u8 did)
 {
int i;
 
@@ -132,7 +132,7 @@ static char *ch7xxx_get_did(uint8_t did)
 }
 
 /** Reads an 8 bit register */
-static bool ch7xxx_readb(struct intel_dvo_device *dvo, int addr, uint8_t *ch)
+static bool ch7xxx_readb(struct intel_dvo_device *dvo, int addr, u8 *ch)
 {
struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
struct i2c_adapter *adapter = dvo->i2c_bus;
@@ -170,11 +170,11 @@ static bool ch7xxx_readb(struct intel_dvo_device *dvo, 
int addr, uint8_t *ch)
 }
 
 /** Writes an 8 bit register */
-static bool ch7xxx_writeb(struct intel_dvo_device *dvo, int addr, uint8_t ch)
+static bool ch7xxx_writeb(struct intel_dvo_device *dvo, int addr, u8 ch)
 {
struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
struct i2c_adapter *adapter = dvo->i2c_bus;
-   uint8_t out_buf[2];
+   u8 out_buf[2];
struct i2c_msg msg = {
.addr = dvo->slave_addr,
   

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: move towards kernel types

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types
URL   : https://patchwork.freedesktop.org/series/44610/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9270 =

== Summary - SUCCESS ==

  No regressions found.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44610/revisions/1/mbox/

== Known issues ==

  Here are the changes found in Patchwork_9270 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@kms_flip@basic-flip-vs-modeset:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000)

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#106724)

igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
  fi-glk-j4005:   PASS -> FAIL (fdo#103481)

igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
  fi-cnl-psr: PASS -> DMESG-WARN (fdo#104951)

igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
  fi-bxt-dsi: PASS -> INCOMPLETE (fdo#103927)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607
  fdo#106724 https://bugs.freedesktop.org/show_bug.cgi?id=106724


== Participating hosts (42 -> 37) ==

  Missing(5): fi-ctg-p8600 fi-bsw-cyan fi-ilk-m540 fi-skl-gvtdvm 
fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9270

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9270: 62b5ce446f23712cf857ecec728470f8cab2cc78 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

62b5ce446f23 drm/i915/lspcon: switch to kernel unsigned int types
cb02e7d6517d drm/i915/audio: switch to kernel unsigned int types
295e98774483 drm/i915/backlight: switch to kernel unsigned int types
592d209523eb drm/i915/dvo: switch to kernel unsigned int types
b67a03bc35e4 drm/i915/uncore: switch to kernel unsigned int types
ba755792a04b drm/i915/hdmi: switch to kernel unsigned int types
5e5d04a1d33d drm/i915/vbt: switch to kernel unsigned int types

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9270/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH][V3] drm/i915/guc: fix GEM_BUG_ON check

2018-06-12 Thread Colin King
From: Colin Ian King 

The check for level being less than zero always false because flags
is currently unsigned and can never be negative. Fix this by making
level a s32.

Detected by CoverityScan, CID#1468363 ("Macro compares unsigned to 0")

Fixes: cb5d64e9f13e ("drm/i915/guc: Allow user to control default GuC logging")
Signed-off-by: Colin Ian King 

---
V3: Make level s32 and add the missing Fixes: tag, thanks to Dan Carpenter and
Jani Nikula for correcting my mistakes

---
 drivers/gpu/drm/i915/intel_guc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_guc.c b/drivers/gpu/drm/i915/intel_guc.c
index 116f4ccf1bbd..bdb1fab322bf 100644
--- a/drivers/gpu/drm/i915/intel_guc.c
+++ b/drivers/gpu/drm/i915/intel_guc.c
@@ -205,7 +205,7 @@ void intel_guc_fini(struct intel_guc *guc)
 
 static u32 get_log_control_flags(void)
 {
-   u32 level = i915_modparams.guc_log_level;
+   s32 level = i915_modparams.guc_log_level;
u32 flags = 0;
 
GEM_BUG_ON(level < 0);
-- 
2.17.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for drm/i915: move towards kernel types

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types
URL   : https://patchwork.freedesktop.org/series/44610/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm/i915/vbt: switch to kernel unsigned int types
Okay!

Commit: drm/i915/hdmi: switch to kernel unsigned int types
Okay!

Commit: drm/i915/uncore: switch to kernel unsigned int types
Okay!

Commit: drm/i915/dvo: switch to kernel unsigned int types
Okay!

Commit: drm/i915/backlight: switch to kernel unsigned int types
Okay!

Commit: drm/i915/audio: switch to kernel unsigned int types
-O:drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:457:15: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/intel_audio.c:576:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:278:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:457:15: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/intel_audio.c:576:15: warning: expression using 
sizeof(void)

Commit: drm/i915/lspcon: switch to kernel unsigned int types
Okay!

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: move towards kernel types

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: move towards kernel types
URL   : https://patchwork.freedesktop.org/series/44610/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
5e5d04a1d33d drm/i915/vbt: switch to kernel unsigned int types
ba755792a04b drm/i915/hdmi: switch to kernel unsigned int types
b67a03bc35e4 drm/i915/uncore: switch to kernel unsigned int types
592d209523eb drm/i915/dvo: switch to kernel unsigned int types
-:289: WARNING:TABSTOP: Statements should start on a tabstop
#289: FILE: drivers/gpu/drm/i915/dvo_ns2501.c:194:
+u8 offset;

-:290: WARNING:TABSTOP: Statements should start on a tabstop
#290: FILE: drivers/gpu/drm/i915/dvo_ns2501.c:195:
+u8 value;

total: 0 errors, 2 warnings, 0 checks, 407 lines checked
295e98774483 drm/i915/backlight: switch to kernel unsigned int types
cb02e7d6517d drm/i915/audio: switch to kernel unsigned int types
62b5ce446f23 drm/i915/lspcon: switch to kernel unsigned int types

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH][V2] drm/i915/guc: fix GEM_BUG_ON check

2018-06-12 Thread Jani Nikula
On Tue, 12 Jun 2018, Dan Carpenter  wrote:
> On Mon, Jun 11, 2018 at 05:46:53PM +0100, Colin King wrote:
>> From: Colin Ian King 
>> 
>> The check for level being less than zero always false because flags
>> is currently unsigned and can never be negative. Fix this by making
>> flags a s32.
>> 
>> Detected by CoverityScan, CID#1468363 ("Macro compares unsigned to 0")
>> 
>> Signed-off-by: Colin Ian King 
>> 
>> ---
>> V2: Make flags s32 rather than remove the GEM_BUG_ON check, thanks to
>> Ville Syrjälä for spotting the mistake in my first attempt.
>> ---
>>  drivers/gpu/drm/i915/intel_guc.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/drivers/gpu/drm/i915/intel_guc.c 
>> b/drivers/gpu/drm/i915/intel_guc.c
>> index 116f4ccf1bbd..fb31f5004bcf 100644
>> --- a/drivers/gpu/drm/i915/intel_guc.c
>> +++ b/drivers/gpu/drm/i915/intel_guc.c
>> @@ -206,7 +206,7 @@ void intel_guc_fini(struct intel_guc *guc)
>>  static u32 get_log_control_flags(void)
>>  {
>>  u32 level = i915_modparams.guc_log_level;
>> -u32 flags = 0;
>> +s32 flags = 0;
>>  
>>  GEM_BUG_ON(level < 0);
>
> Only insane people use "s32" when it's not part of the hardware spec and
> you changed the wrong variable...

Yeah, int level.

Also,

Fixes: cb5d64e9f13e ("drm/i915/guc: Allow user to control default GuC logging")

BR,
Jani.


>
> regards,
> dan carpenter
>

-- 
Jani Nikula, Intel Open Source Graphics Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs

2018-06-12 Thread Joonas Lahtinen
Quoting Chris Wilson (2018-06-11 18:02:37)
> Quoting Lionel Landwerlin (2018-06-11 14:46:07)
> > On 11/06/18 13:10, Tvrtko Ursulin wrote:
> > >
> > > On 30/05/2018 15:33, Lionel Landwerlin wrote:
> > >> There are concerns about denial of service around the per context sseu
> > >> configuration capability. In a previous commit introducing the
> > >> capability we allowed it only for capable users. This changes adds a
> > >> new debugfs entry to let any user configure its own context
> > >> powergating setup.
> > >
> > > As far as I understood it, Joonas' concerns here are:
> > >
> > > 1) That in the containers use case individual containers wouldn't be 
> > > able to turn on the sysfs toggle for them.
> > >
> > > 2) That also in the containers use case if box admin turns on the 
> > > feature, some containers would potentially start negatively affecting 
> > > the others (via the accumulated cost of slice re-configuration on 
> > > context switching).
> > >
> > > I am not familiar with typical container setups to be authoritative 
> > > here, but intuitively I find it reasonable that a low-level hardware 
> > > switch like this would be under the control of a master domain 
> > > administrator. ("If you are installing our product in the container 
> > > environment, make sure your system administrator enables this hardware 
> > > feature.", "Note to system administrators: Enabling this features may 
> > > negatively affect the performance of other containers.")
> > >
> > > Alternative proposal is for the i915 to apply an "or" filter on all 
> > > requested masks and in that way ensure dynamic re-configuration 
> > > doesn't happen on context switches, but driven from userspace via ioctls.
> > >
> > > In other words, should _all_ userspace agree between themselves that 
> > > they want to turn off a slice, they would then need to send out a 
> > > concerted ioctl storm, where number of needed ioctls equals the number 
> > > of currently active contexts. (This may have its own performance 
> > > consequences caused by the barriers needed to modify all context images.)
> > >
> > > This was deemed acceptable the the media use case, but my concern is 
> > > the approach is not elegant and will tie us with the "or" policy in 
> > > the ABI. (Performance concerns I haven't evaluated yet, but they also 
> > > may be significant.)
> > >
> > > If we go back thinking about the containers use case, then it 
> > > transpires that even though the "or" policy does prevent one container 
> > > from affecting the other from one angle, it also prevents one 
> > > container from exercising the feature unless all containers co-operate.
> > >
> > > As such, we can view the original problem statement where we have an 
> > > issue if not everyone co-operates, as conceptually the same just from 
> > > an opposite angle. (Rather than one container incurring the increased 
> > > cost of context switches to the rest, we would have one container 
> > > preventing the optimized slice configuration to the other.)
> > >
> > > From this follows that both proposals require complete co-operation 
> > > from all running userspace to avoid complete control of the feature.
> > >
> > > Since the balance between the benefit of optimized slice configuration 
> > > (or penalty of suboptimal one), versus the penalty of increased 
> > > context switch times, cannot be know by the driver (barring venturing 
> > > into the heuristics territory), that is another reason why I find the 
> > > "or" policy in the driver questionable.
> > >
> > > We can also ask a question of - If we go with the "or" policy, why 
> > > require N per-context ioctls to modify the global GPU configuration 
> > > and not instead add a global driver ioctl to modify the state?
> > >
> > > If a future hardware requires, or enables, the per-context behaviour 
> > > in a more efficient way, we could then revisit the problem space.
> > >
> > > In the mean time I see the "or" policy solution as adding some ABI 
> > > which doesn't do anything for many use cases without any way for the 
> > > sysadmin to enable it. At the same time master sysfs knob at least 
> > > enables the sysadmin to make a decision. Here I am thinking about a 
> > > random client environment where not all userspace co-operates, but for 
> > > instance user is running the feature aware media stack, and 
> > > non-feature aware OpenCL/3d stack.
> > >
> > > I guess the complete story boils down to - is the master sysfs knob 
> > > really a problem in container use cases.
> > >
> > > Regards,
> > >
> > > Tvrtko 
> > 
> > Hey Tvrtko,
> > 
> > Thanks for summarizing a bunch of discussions.
> > Essentially I agree with every you wrote above.
> > 
> > If we have a global setting (determined by the OR policy), what's the 
> > point of per context settings?
> > 
> > In Dmitry's scenario, all userspace applications will work together to 
> > reach the consensus so it sounds like we're reimplementing the policy 
> > that is 

[Intel-gfx] [PATCH 6/7] drm/i915/audio: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_audio.c | 36 ++--
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_audio.c 
b/drivers/gpu/drm/i915/intel_audio.c
index 3ea566f99450..4e4c0ec44f35 100644
--- a/drivers/gpu/drm/i915/intel_audio.c
+++ b/drivers/gpu/drm/i915/intel_audio.c
@@ -198,13 +198,13 @@ static int audio_config_hdmi_get_n(const struct 
intel_crtc_state *crtc_state,
 }
 
 static bool intel_eld_uptodate(struct drm_connector *connector,
-  i915_reg_t reg_eldv, uint32_t bits_eldv,
-  i915_reg_t reg_elda, uint32_t bits_elda,
+  i915_reg_t reg_eldv, u32 bits_eldv,
+  i915_reg_t reg_elda, u32 bits_elda,
   i915_reg_t reg_edid)
 {
struct drm_i915_private *dev_priv = to_i915(connector->dev);
-   uint8_t *eld = connector->eld;
-   uint32_t tmp;
+   u8 *eld = connector->eld;
+   u32 tmp;
int i;
 
tmp = I915_READ(reg_eldv);
@@ -218,7 +218,7 @@ static bool intel_eld_uptodate(struct drm_connector 
*connector,
I915_WRITE(reg_elda, tmp);
 
for (i = 0; i < drm_eld_size(eld) / 4; i++)
-   if (I915_READ(reg_edid) != *((uint32_t *)eld + i))
+   if (I915_READ(reg_edid) != *((u32 *)eld + i))
return false;
 
return true;
@@ -229,7 +229,7 @@ static void g4x_audio_codec_disable(struct intel_encoder 
*encoder,
const struct drm_connector_state 
*old_conn_state)
 {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
-   uint32_t eldv, tmp;
+   u32 eldv, tmp;
 
DRM_DEBUG_KMS("Disable audio codec\n");
 
@@ -251,9 +251,9 @@ static void g4x_audio_codec_enable(struct intel_encoder 
*encoder,
 {
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_connector *connector = conn_state->connector;
-   uint8_t *eld = connector->eld;
-   uint32_t eldv;
-   uint32_t tmp;
+   u8 *eld = connector->eld;
+   u32 eldv;
+   u32 tmp;
int len, i;
 
DRM_DEBUG_KMS("Enable audio codec, %u bytes ELD\n", eld[2]);
@@ -278,7 +278,7 @@ static void g4x_audio_codec_enable(struct intel_encoder 
*encoder,
len = min(drm_eld_size(eld) / 4, len);
DRM_DEBUG_DRIVER("ELD size %d\n", len);
for (i = 0; i < len; i++)
-   I915_WRITE(G4X_HDMIW_HDMIEDID, *((uint32_t *)eld + i));
+   I915_WRITE(G4X_HDMIW_HDMIEDID, *((u32 *)eld + i));
 
tmp = I915_READ(G4X_AUD_CNTL_ST);
tmp |= eldv;
@@ -393,7 +393,7 @@ static void hsw_audio_codec_disable(struct intel_encoder 
*encoder,
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct intel_crtc *crtc = to_intel_crtc(old_crtc_state->base.crtc);
enum pipe pipe = crtc->pipe;
-   uint32_t tmp;
+   u32 tmp;
 
DRM_DEBUG_KMS("Disable audio codec on pipe %c\n", pipe_name(pipe));
 
@@ -426,8 +426,8 @@ static void hsw_audio_codec_enable(struct intel_encoder 
*encoder,
struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc);
struct drm_connector *connector = conn_state->connector;
enum pipe pipe = crtc->pipe;
-   const uint8_t *eld = connector->eld;
-   uint32_t tmp;
+   const u8 *eld = connector->eld;
+   u32 tmp;
int len, i;
 
DRM_DEBUG_KMS("Enable audio codec on pipe %c, %u bytes ELD\n",
@@ -456,7 +456,7 @@ static void hsw_audio_codec_enable(struct intel_encoder 
*encoder,
/* Up to 84 bytes of hw ELD buffer */
len = min(drm_eld_size(eld), 84);
for (i = 0; i < len / 4; i++)
-   I915_WRITE(HSW_AUD_EDID_DATA(pipe), *((uint32_t *)eld + i));
+   I915_WRITE(HSW_AUD_EDID_DATA(pipe), *((u32 *)eld + i));
 
/* ELD valid */
tmp = I915_READ(HSW_AUD_PIN_ELD_CP_VLD);
@@ -477,7 +477,7 @@ static void ilk_audio_codec_disable(struct intel_encoder 
*encoder,
struct intel_crtc *crtc = to_intel_crtc(old_crtc_state->base.crtc);
enum pipe pipe = crtc->pipe;
enum port port = encoder->port;
-   uint32_t tmp, eldv;
+   u32 tmp, eldv;
i915_reg_t aud_config, aud_cntrl_st2;
 
DRM_DEBUG_KMS("Disable audio codec on port %c, pipe %c\n",
@@ -524,8 +524,8 @@ static void ilk_audio_codec_enable(struct intel_encoder 
*encoder,
struct drm_connector *connector = conn_state->connector;
enum pipe pipe = crtc->pipe;
enum port port = encoder->port;
-   uint8_t *eld = connector->eld;
-   uint32_t tmp, eldv;
+   u8 *eld = connector->eld;
+   u32 tmp, eldv;
int len, i;
i915_reg_t hdmiw_hdmiedid, aud_config, aud_cntl_st, 

[Intel-gfx] [PATCH 7/7] drm/i915/lspcon: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_lspcon.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_lspcon.c 
b/drivers/gpu/drm/i915/intel_lspcon.c
index 8ae8f42f430a..5dae16ccd9f1 100644
--- a/drivers/gpu/drm/i915/intel_lspcon.c
+++ b/drivers/gpu/drm/i915/intel_lspcon.c
@@ -116,7 +116,7 @@ static int lspcon_change_mode(struct intel_lspcon *lspcon,
 
 static bool lspcon_wake_native_aux_ch(struct intel_lspcon *lspcon)
 {
-   uint8_t rev;
+   u8 rev;
 
if (drm_dp_dpcd_readb(_to_intel_dp(lspcon)->aux, DP_DPCD_REV,
  ) != 1) {
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 1/7] drm/i915/vbt: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_bios.c | 4 ++--
 drivers/gpu/drm/i915/intel_vbt_defs.h | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_bios.c 
b/drivers/gpu/drm/i915/intel_bios.c
index 18b9e0444116..62a53eb89b6b 100644
--- a/drivers/gpu/drm/i915/intel_bios.c
+++ b/drivers/gpu/drm/i915/intel_bios.c
@@ -652,7 +652,7 @@ parse_edp(struct drm_i915_private *dev_priv, const struct 
bdb_header *bdb)
}
 
if (bdb->version >= 173) {
-   uint8_t vswing;
+   u8 vswing;
 
/* Don't read from VBT if module parameter has valid value*/
if (i915_modparams.edp_vswing) {
@@ -964,7 +964,7 @@ static int goto_next_sequence_v3(const u8 *data, int index, 
int total)
 * includes MIPI_SEQ_ELEM_END byte, excludes the final MIPI_SEQ_END
 * byte.
 */
-   size_of_sequence = *((const uint32_t *)(data + index));
+   size_of_sequence = *((const u32 *)(data + index));
index += 4;
 
seq_end = index + size_of_sequence;
diff --git a/drivers/gpu/drm/i915/intel_vbt_defs.h 
b/drivers/gpu/drm/i915/intel_vbt_defs.h
index c132d0c3a500..5f2a9052a190 100644
--- a/drivers/gpu/drm/i915/intel_vbt_defs.h
+++ b/drivers/gpu/drm/i915/intel_vbt_defs.h
@@ -454,7 +454,7 @@ struct bdb_general_definitions {
 * number = (block_size - sizeof(bdb_general_definitions))/
 *   defs->child_dev_size;
 */
-   uint8_t devices[0];
+   u8 devices[0];
 } __packed;
 
 /* Mask for DRRS / Panel Channel / SSC / BLT control bits extraction */
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 2/7] drm/i915/hdmi: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_hdmi.c | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
b/drivers/gpu/drm/i915/intel_hdmi.c
index 0ca4cc877520..6e3c4e27c65a 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -51,7 +51,7 @@ assert_hdmi_port_disabled(struct intel_hdmi *intel_hdmi)
 {
struct drm_device *dev = intel_hdmi_to_dev(intel_hdmi);
struct drm_i915_private *dev_priv = to_i915(dev);
-   uint32_t enabled_bits;
+   u32 enabled_bits;
 
enabled_bits = HAS_DDI(dev_priv) ? DDI_BUF_CTL_ENABLE : SDVO_ENABLE;
 
@@ -144,7 +144,7 @@ static void g4x_write_infoframe(struct drm_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
 {
-   const uint32_t *data = frame;
+   const u32 *data = frame;
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = to_i915(dev);
u32 val = I915_READ(VIDEO_DIP_CTL);
@@ -199,7 +199,7 @@ static void ibx_write_infoframe(struct drm_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
 {
-   const uint32_t *data = frame;
+   const u32 *data = frame;
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = to_i915(dev);
struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->base.crtc);
@@ -259,7 +259,7 @@ static void cpt_write_infoframe(struct drm_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
 {
-   const uint32_t *data = frame;
+   const u32 *data = frame;
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = to_i915(dev);
struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->base.crtc);
@@ -317,7 +317,7 @@ static void vlv_write_infoframe(struct drm_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
 {
-   const uint32_t *data = frame;
+   const u32 *data = frame;
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = to_i915(dev);
struct intel_crtc *intel_crtc = to_intel_crtc(crtc_state->base.crtc);
@@ -376,7 +376,7 @@ static void hsw_write_infoframe(struct drm_encoder *encoder,
unsigned int type,
const void *frame, ssize_t len)
 {
-   const uint32_t *data = frame;
+   const u32 *data = frame;
struct drm_device *dev = encoder->dev;
struct drm_i915_private *dev_priv = to_i915(dev);
enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
@@ -442,7 +442,7 @@ static void intel_write_infoframe(struct drm_encoder 
*encoder,
  union hdmi_infoframe *frame)
 {
struct intel_digital_port *intel_dig_port = enc_to_dig_port(encoder);
-   uint8_t buffer[VIDEO_DIP_DATA_SIZE];
+   u8 buffer[VIDEO_DIP_DATA_SIZE];
ssize_t len;
 
/* see comment above for the reason for this offset */
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 3/7] drm/i915/uncore: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_uncore.h | 22 +++---
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_uncore.h 
b/drivers/gpu/drm/i915/intel_uncore.h
index 47478d609630..2fbe93178fb2 100644
--- a/drivers/gpu/drm/i915/intel_uncore.h
+++ b/drivers/gpu/drm/i915/intel_uncore.h
@@ -67,21 +67,21 @@ struct intel_uncore_funcs {
void (*force_wake_put)(struct drm_i915_private *dev_priv,
   enum forcewake_domains domains);
 
-   uint8_t  (*mmio_readb)(struct drm_i915_private *dev_priv,
-  i915_reg_t r, bool trace);
-   uint16_t (*mmio_readw)(struct drm_i915_private *dev_priv,
-  i915_reg_t r, bool trace);
-   uint32_t (*mmio_readl)(struct drm_i915_private *dev_priv,
-  i915_reg_t r, bool trace);
-   uint64_t (*mmio_readq)(struct drm_i915_private *dev_priv,
-  i915_reg_t r, bool trace);
+   u8 (*mmio_readb)(struct drm_i915_private *dev_priv,
+i915_reg_t r, bool trace);
+   u16 (*mmio_readw)(struct drm_i915_private *dev_priv,
+ i915_reg_t r, bool trace);
+   u32 (*mmio_readl)(struct drm_i915_private *dev_priv,
+ i915_reg_t r, bool trace);
+   u64 (*mmio_readq)(struct drm_i915_private *dev_priv,
+ i915_reg_t r, bool trace);
 
void (*mmio_writeb)(struct drm_i915_private *dev_priv,
-   i915_reg_t r, uint8_t val, bool trace);
+   i915_reg_t r, u8 val, bool trace);
void (*mmio_writew)(struct drm_i915_private *dev_priv,
-   i915_reg_t r, uint16_t val, bool trace);
+   i915_reg_t r, u16 val, bool trace);
void (*mmio_writel)(struct drm_i915_private *dev_priv,
-   i915_reg_t r, uint32_t val, bool trace);
+   i915_reg_t r, u32 val, bool trace);
 };
 
 struct intel_forcewake_range {
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 4/7] drm/i915/dvo: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/dvo_ch7017.c | 20 +-
 drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 ++--
 drivers/gpu/drm/i915/dvo_ivch.c   | 26 +++
 drivers/gpu/drm/i915/dvo_ns2501.c | 44 +++
 drivers/gpu/drm/i915/dvo_sil164.c | 10 -
 drivers/gpu/drm/i915/dvo_tfp410.c | 16 +++---
 drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
 7 files changed, 70 insertions(+), 70 deletions(-)

diff --git a/drivers/gpu/drm/i915/dvo_ch7017.c 
b/drivers/gpu/drm/i915/dvo_ch7017.c
index 80b3e16cf48c..caac9942e1e3 100644
--- a/drivers/gpu/drm/i915/dvo_ch7017.c
+++ b/drivers/gpu/drm/i915/dvo_ch7017.c
@@ -159,7 +159,7 @@
 #define CH7017_BANG_LIMIT_CONTROL  0x7f
 
 struct ch7017_priv {
-   uint8_t dummy;
+   u8 dummy;
 };
 
 static void ch7017_dump_regs(struct intel_dvo_device *dvo);
@@ -186,7 +186,7 @@ static bool ch7017_read(struct intel_dvo_device *dvo, u8 
addr, u8 *val)
 
 static bool ch7017_write(struct intel_dvo_device *dvo, u8 addr, u8 val)
 {
-   uint8_t buf[2] = { addr, val };
+   u8 buf[2] = { addr, val };
struct i2c_msg msg = {
.addr = dvo->slave_addr,
.flags = 0,
@@ -258,11 +258,11 @@ static void ch7017_mode_set(struct intel_dvo_device *dvo,
const struct drm_display_mode *mode,
const struct drm_display_mode *adjusted_mode)
 {
-   uint8_t lvds_pll_feedback_div, lvds_pll_vco_control;
-   uint8_t outputs_enable, lvds_control_2, lvds_power_down;
-   uint8_t horizontal_active_pixel_input;
-   uint8_t horizontal_active_pixel_output, vertical_active_line_output;
-   uint8_t active_input_line_output;
+   u8 lvds_pll_feedback_div, lvds_pll_vco_control;
+   u8 outputs_enable, lvds_control_2, lvds_power_down;
+   u8 horizontal_active_pixel_input;
+   u8 horizontal_active_pixel_output, vertical_active_line_output;
+   u8 active_input_line_output;
 
DRM_DEBUG_KMS("Registers before mode setting\n");
ch7017_dump_regs(dvo);
@@ -333,7 +333,7 @@ static void ch7017_mode_set(struct intel_dvo_device *dvo,
 /* set the CH7017 power state */
 static void ch7017_dpms(struct intel_dvo_device *dvo, bool enable)
 {
-   uint8_t val;
+   u8 val;
 
ch7017_read(dvo, CH7017_LVDS_POWER_DOWN, );
 
@@ -361,7 +361,7 @@ static void ch7017_dpms(struct intel_dvo_device *dvo, bool 
enable)
 
 static bool ch7017_get_hw_state(struct intel_dvo_device *dvo)
 {
-   uint8_t val;
+   u8 val;
 
ch7017_read(dvo, CH7017_LVDS_POWER_DOWN, );
 
@@ -373,7 +373,7 @@ static bool ch7017_get_hw_state(struct intel_dvo_device 
*dvo)
 
 static void ch7017_dump_regs(struct intel_dvo_device *dvo)
 {
-   uint8_t val;
+   u8 val;
 
 #define DUMP(reg)  \
 do {   \
diff --git a/drivers/gpu/drm/i915/dvo_ch7xxx.c 
b/drivers/gpu/drm/i915/dvo_ch7xxx.c
index 7aeeffd2428b..397ac5233726 100644
--- a/drivers/gpu/drm/i915/dvo_ch7xxx.c
+++ b/drivers/gpu/drm/i915/dvo_ch7xxx.c
@@ -85,7 +85,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
 static struct ch7xxx_id_struct {
-   uint8_t vid;
+   u8 vid;
char *name;
 } ch7xxx_ids[] = {
{ CH7011_VID, "CH7011" },
@@ -96,7 +96,7 @@ static struct ch7xxx_id_struct {
 };
 
 static struct ch7xxx_did_struct {
-   uint8_t did;
+   u8 did;
char *name;
 } ch7xxx_dids[] = {
{ CH7xxx_DID, "CH7XXX" },
@@ -107,7 +107,7 @@ struct ch7xxx_priv {
bool quiet;
 };
 
-static char *ch7xxx_get_id(uint8_t vid)
+static char *ch7xxx_get_id(u8 vid)
 {
int i;
 
@@ -119,7 +119,7 @@ static char *ch7xxx_get_id(uint8_t vid)
return NULL;
 }
 
-static char *ch7xxx_get_did(uint8_t did)
+static char *ch7xxx_get_did(u8 did)
 {
int i;
 
@@ -132,7 +132,7 @@ static char *ch7xxx_get_did(uint8_t did)
 }
 
 /** Reads an 8 bit register */
-static bool ch7xxx_readb(struct intel_dvo_device *dvo, int addr, uint8_t *ch)
+static bool ch7xxx_readb(struct intel_dvo_device *dvo, int addr, u8 *ch)
 {
struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
struct i2c_adapter *adapter = dvo->i2c_bus;
@@ -170,11 +170,11 @@ static bool ch7xxx_readb(struct intel_dvo_device *dvo, 
int addr, uint8_t *ch)
 }
 
 /** Writes an 8 bit register */
-static bool ch7xxx_writeb(struct intel_dvo_device *dvo, int addr, uint8_t ch)
+static bool ch7xxx_writeb(struct intel_dvo_device *dvo, int addr, u8 ch)
 {
struct ch7xxx_priv *ch7xxx = dvo->dev_priv;
struct i2c_adapter *adapter = dvo->i2c_bus;
-   uint8_t out_buf[2];
+   u8 out_buf[2];
struct i2c_msg msg = {
.addr = dvo->slave_addr,
.flags = 0,
@@ -201,7 +201,7 @@ static 

[Intel-gfx] [PATCH 0/7] drm/i915: move towards kernel types

2018-06-12 Thread Jani Nikula
Semi-RFC. Do we want to do this? Here's a batch of conversions that shouldn't
conflict much with in-flight patches.

The trouble with mixed use is that it's inconsistent, and any remaining C99
types will encourage their use. We could at least do the low hanging fruit?

$ git grep "uint\(8\|16\|32\|64\)_t" -- drivers/gpu/drm/i915/ | sed 's/:.*//' | 
sort | uniq -c | sort -n

BR,
Jani.


Jani Nikula (7):
  drm/i915/vbt: switch to kernel unsigned int types
  drm/i915/hdmi: switch to kernel unsigned int types
  drm/i915/uncore: switch to kernel unsigned int types
  drm/i915/dvo: switch to kernel unsigned int types
  drm/i915/backlight: switch to kernel unsigned int types
  drm/i915/audio: switch to kernel unsigned int types
  drm/i915/lspcon: switch to kernel unsigned int types

 drivers/gpu/drm/i915/dvo_ch7017.c | 20 ++--
 drivers/gpu/drm/i915/dvo_ch7xxx.c | 22 +++---
 drivers/gpu/drm/i915/dvo_ivch.c   | 26 
 drivers/gpu/drm/i915/dvo_ns2501.c | 44 +--
 drivers/gpu/drm/i915/dvo_sil164.c | 10 +++---
 drivers/gpu/drm/i915/dvo_tfp410.c | 16 +-
 drivers/gpu/drm/i915/intel_audio.c| 36 +++---
 drivers/gpu/drm/i915/intel_bios.c |  4 +--
 drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 
 drivers/gpu/drm/i915/intel_dvo.c  |  2 +-
 drivers/gpu/drm/i915/intel_hdmi.c | 14 -
 drivers/gpu/drm/i915/intel_lspcon.c   |  2 +-
 drivers/gpu/drm/i915/intel_panel.c|  8 ++---
 drivers/gpu/drm/i915/intel_uncore.h   | 22 +++---
 drivers/gpu/drm/i915/intel_vbt_defs.h |  2 +-
 15 files changed, 120 insertions(+), 120 deletions(-)

-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PATCH 5/7] drm/i915/backlight: switch to kernel unsigned int types

2018-06-12 Thread Jani Nikula
We have fairly mixed uintN_t vs. uN usage throughout the driver, but try
to stick to kernel types at least where it's more prevalent.

Signed-off-by: Jani Nikula 
---
 drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 12 ++--
 drivers/gpu/drm/i915/intel_panel.c|  8 
 2 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_dp_aux_backlight.c 
b/drivers/gpu/drm/i915/intel_dp_aux_backlight.c
index 2bb2ceb9d463..357136f17f85 100644
--- a/drivers/gpu/drm/i915/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/intel_dp_aux_backlight.c
@@ -26,7 +26,7 @@
 
 static void set_aux_backlight_enable(struct intel_dp *intel_dp, bool enable)
 {
-   uint8_t reg_val = 0;
+   u8 reg_val = 0;
 
/* Early return when display use other mechanism to enable backlight. */
if (!(intel_dp->edp_dpcd[1] & DP_EDP_BACKLIGHT_AUX_ENABLE_CAP))
@@ -54,11 +54,11 @@ static void set_aux_backlight_enable(struct intel_dp 
*intel_dp, bool enable)
  * Read the current backlight value from DPCD register(s) based
  * on if 8-bit(MSB) or 16-bit(MSB and LSB) values are supported
  */
-static uint32_t intel_dp_aux_get_backlight(struct intel_connector *connector)
+static u32 intel_dp_aux_get_backlight(struct intel_connector *connector)
 {
struct intel_dp *intel_dp = enc_to_intel_dp(>encoder->base);
-   uint8_t read_val[2] = { 0x0 };
-   uint16_t level = 0;
+   u8 read_val[2] = { 0x0 };
+   u16 level = 0;
 
if (drm_dp_dpcd_read(_dp->aux, DP_EDP_BACKLIGHT_BRIGHTNESS_MSB,
 _val, sizeof(read_val)) < 0) {
@@ -82,7 +82,7 @@ intel_dp_aux_set_backlight(const struct drm_connector_state 
*conn_state, u32 lev
 {
struct intel_connector *connector = 
to_intel_connector(conn_state->connector);
struct intel_dp *intel_dp = enc_to_intel_dp(>encoder->base);
-   uint8_t vals[2] = { 0x0 };
+   u8 vals[2] = { 0x0 };
 
vals[0] = level;
 
@@ -178,7 +178,7 @@ static void intel_dp_aux_enable_backlight(const struct 
intel_crtc_state *crtc_st
 {
struct intel_connector *connector = 
to_intel_connector(conn_state->connector);
struct intel_dp *intel_dp = enc_to_intel_dp(>encoder->base);
-   uint8_t dpcd_buf, new_dpcd_buf, edp_backlight_mode;
+   u8 dpcd_buf, new_dpcd_buf, edp_backlight_mode;
 
if (drm_dp_dpcd_readb(_dp->aux,
DP_EDP_BACKLIGHT_MODE_SET_REGISTER, _buf) != 1) {
diff --git a/drivers/gpu/drm/i915/intel_panel.c 
b/drivers/gpu/drm/i915/intel_panel.c
index b443278e569c..14b827ec5427 100644
--- a/drivers/gpu/drm/i915/intel_panel.c
+++ b/drivers/gpu/drm/i915/intel_panel.c
@@ -406,11 +406,11 @@ intel_panel_detect(struct drm_i915_private *dev_priv)
  * Return @source_val in range [@source_min..@source_max] scaled to range
  * [@target_min..@target_max].
  */
-static uint32_t scale(uint32_t source_val,
- uint32_t source_min, uint32_t source_max,
- uint32_t target_min, uint32_t target_max)
+static u32 scale(u32 source_val,
+u32 source_min, u32 source_max,
+u32 target_min, u32 target_max)
 {
-   uint64_t target_val;
+   u64 target_val;
 
WARN_ON(source_min > source_max);
WARN_ON(target_min > target_max);
-- 
2.11.0

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt

2018-06-12 Thread Patchwork
== Series Details ==

Series: series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt
URL   : https://patchwork.freedesktop.org/series/44608/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4305 -> Patchwork_9269 =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9269 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9269, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: 
https://patchwork.freedesktop.org/api/1.0/series/44608/revisions/1/mbox/

== Possible new issues ==

  Here are the unknown changes that may have been introduced in Patchwork_9269:

  === IGT changes ===

 Warnings 

igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
  fi-glk-j4005:   PASS -> SKIP


== Known issues ==

  Here are the changes found in Patchwork_9269 that come from known issues:

  === IGT changes ===

 Issues hit 

igt@gem_exec_gttfill@basic:
  fi-byt-n2820:   PASS -> FAIL (fdo#106744)

igt@kms_flip@basic-flip-vs-modeset:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106000)

igt@kms_flip@basic-flip-vs-wf_vblank:
  fi-glk-j4005:   PASS -> FAIL (fdo#100368)

igt@kms_flip@basic-plain-flip:
  fi-glk-j4005:   PASS -> DMESG-WARN (fdo#106097)

igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
  fi-cnl-psr: PASS -> DMESG-WARN (fdo#104951)


 Possible fixes 

igt@debugfs_test@read_all_entries:
  fi-snb-2520m:   INCOMPLETE (fdo#103713) -> PASS

igt@kms_frontbuffer_tracking@basic:
  fi-hsw-peppy:   DMESG-WARN (fdo#106607) -> PASS


  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097
  fdo#106607 https://bugs.freedesktop.org/show_bug.cgi?id=106607
  fdo#106744 https://bugs.freedesktop.org/show_bug.cgi?id=106744


== Participating hosts (42 -> 38) ==

  Missing(4): fi-ctg-p8600 fi-ilk-m540 fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

* Linux: CI_DRM_4305 -> Patchwork_9269

  CI_DRM_4305: d5ec1c93d19ce1fa4e23176828f4fb9a592f2609 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9269: 54d2388afdb0286a63716eff571a7cc4122b9f78 @ 
git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

54d2388afdb0 drm/i915/gtt: Onionify error handling for gen6_ppgtt_create
07d34d2c2ba7 drm/i915/gtt: Subclass gen6_hw_ppgtt

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9269/issues.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH][V2] drm/i915/guc: fix GEM_BUG_ON check

2018-06-12 Thread Dan Carpenter
On Mon, Jun 11, 2018 at 05:46:53PM +0100, Colin King wrote:
> From: Colin Ian King 
> 
> The check for level being less than zero always false because flags
> is currently unsigned and can never be negative. Fix this by making
> flags a s32.
> 
> Detected by CoverityScan, CID#1468363 ("Macro compares unsigned to 0")
> 
> Signed-off-by: Colin Ian King 
> 
> ---
> V2: Make flags s32 rather than remove the GEM_BUG_ON check, thanks to
> Ville Syrjälä for spotting the mistake in my first attempt.
> ---
>  drivers/gpu/drm/i915/intel_guc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/intel_guc.c 
> b/drivers/gpu/drm/i915/intel_guc.c
> index 116f4ccf1bbd..fb31f5004bcf 100644
> --- a/drivers/gpu/drm/i915/intel_guc.c
> +++ b/drivers/gpu/drm/i915/intel_guc.c
> @@ -206,7 +206,7 @@ void intel_guc_fini(struct intel_guc *guc)
>  static u32 get_log_control_flags(void)
>  {
>   u32 level = i915_modparams.guc_log_level;
> - u32 flags = 0;
> + s32 flags = 0;
>  
>   GEM_BUG_ON(level < 0);

Only insane people use "s32" when it's not part of the hardware spec and
you changed the wrong variable...

regards,
dan carpenter

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [PULL] drm-misc-fixes

2018-06-12 Thread Maarten Lankhorst
Hey,

Only the qxl fix by Jeremy Cline is new. The rest has landed in v4.17 already.

drm-misc-fixes-2018-06-12:
Only a small qxl fix that was queued for v4.17.

The following changes since commit 9a0e9802217291e54c4dd1fc5462f189a4be14ec:

  drm/vc4: Fix scaling of uni-planar formats (2018-05-09 09:48:23 +0200)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-fixes-2018-06-12

for you to fetch changes up to 889ad63d41eea20184b0483e7e585e5b20fb6cfe:

  drm/qxl: Call qxl_bo_unref outside atomic context (2018-06-04 09:31:39 +0200)


Only a small qxl fix that was queued for v4.17.


Dan Carpenter (1):
  drm/dumb-buffers: Integer overflow in drm_mode_create_ioctl()

Dhinakaran Pandiyan (1):
  drm/psr: Fix missed entry in PSR setup time table.

Eric Anholt (1):
  drm/vc4: Fix leak of the file_priv that stored the perfmon.

Haneen Mohammed (1):
  drm: Match sysfs name in link removal to link creation

Jeremy Cline (1):
  drm/qxl: Call qxl_bo_unref outside atomic context

Neil Armstrong (1):
  drm/bridge/synopsys: dw-hdmi: fix dw_hdmi_setup_rx_sense

Tomi Valkeinen (1):
  drm/omap: fix NULL deref crash with SDI displays

 drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 15 ---
 drivers/gpu/drm/drm_dp_helper.c   |  1 +
 drivers/gpu/drm/drm_drv.c |  2 +-
 drivers/gpu/drm/drm_dumb_buffers.c|  7 ---
 drivers/gpu/drm/meson/meson_dw_hdmi.c |  2 +-
 drivers/gpu/drm/omapdrm/dss/sdi.c |  5 -
 drivers/gpu/drm/qxl/qxl_display.c |  7 +--
 drivers/gpu/drm/vc4/vc4_drv.c |  1 +
 include/drm/bridge/dw_hdmi.h  |  2 +-
 9 files changed, 22 insertions(+), 20 deletions(-)
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] [PATCH] drm/i915/psr: Adds psrwake options for all platforms

2018-06-12 Thread Jani Nikula
On Tue, 12 Jun 2018, vathsala nagaraju  wrote:
> From: Vathsala Nagaraju 
>
> Adds new psrwake options defined in the below table.
> Platform  PSR wake options vbt version
> KBL/CFL/WHL   All
> SKL   All PV releases (Check for 203+ might help but cannot be 
> foolproof)
> BXT   Uses old interpretation.
> CNL/ICL+  All
> GLK   All
>
> For SKL, we will continue to use older interpretation for the above reason.
>
> Cc: Jani Nikula 
> Cc: Rodrigo Vivi 
> Cc: Puthikorn Voravootivat 
> Cc: Dhinakaran Pandiyan 
>
> Signed-off-by: Vathsala Nagaraju 
> ---
>  drivers/gpu/drm/i915/intel_bios.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_bios.c 
> b/drivers/gpu/drm/i915/intel_bios.c
> index 465dff4..010ff68 100644
> --- a/drivers/gpu/drm/i915/intel_bios.c
> +++ b/drivers/gpu/drm/i915/intel_bios.c
> @@ -710,7 +710,8 @@ static int intel_bios_ssc_frequency(struct 
> drm_i915_private *dev_priv,
>* New psr options 0=500us, 1=100us, 2=2500us, 3=0us
>* Old decimal value is wake up time in multiples of 100 us.
>*/
> - if (bdb->version >= 209 && IS_GEN9_BC(dev_priv)) {
> + if ((INTEL_GEN(dev_priv) >= 10) ||
> + (IS_GEN9_BC(dev_priv) && !IS_SKYLAKE(dev_priv))) {

Please keep the version check.

Please tell anyone who asks, and also those who don't, that *all* of the
VBT changes should be based on the *version*, and *none* of them should
be based on the *platform*.

BR,
Jani.

>   switch (psr_table->tp1_wakeup_time) {
>   case 0:
>   dev_priv->vbt.psr.tp1_wakeup_time_us = 500;

-- 
Jani Nikula, Intel Open Source Graphics Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.SPARSE: warning for series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt

2018-06-12 Thread Patchwork
== Series Details ==

Series: series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt
URL   : https://patchwork.freedesktop.org/series/44608/
State : warning

== Summary ==

$ dim sparse origin/drm-tip
Commit: drm/i915/gtt: Subclass gen6_hw_ppgtt
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1649:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1649:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1708:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1708:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1709:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1709:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1852:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1852:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1970:9: warning: expression using 
sizeof(void)
-O:drivers/gpu/drm/i915/i915_gem_gtt.c:1970:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1853:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1853:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1970:9: warning: expression using 
sizeof(void)
+drivers/gpu/drm/i915/i915_gem_gtt.c:1970:9: warning: expression using 
sizeof(void)

Commit: drm/i915/gtt: Onionify error handling for gen6_ppgtt_create
Okay!

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt

2018-06-12 Thread Patchwork
== Series Details ==

Series: series starting with [CI,1/2] drm/i915/gtt: Subclass gen6_hw_ppgtt
URL   : https://patchwork.freedesktop.org/series/44608/
State : warning

== Summary ==

$ dim checkpatch origin/drm-tip
07d34d2c2ba7 drm/i915/gtt: Subclass gen6_hw_ppgtt
-:290: CHECK:MACRO_ARG_REUSE: Macro argument reuse 'base' - possible 
side-effects?
#290: FILE: drivers/gpu/drm/i915/i915_gem_gtt.h:417:
+#define __to_gen6_ppgtt(base) container_of(base, struct gen6_hw_ppgtt, base)

total: 0 errors, 0 warnings, 1 checks, 294 lines checked
54d2388afdb0 drm/i915/gtt: Onionify error handling for gen6_ppgtt_create

___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


Re: [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/2] drm/i915/icl: Add allowed DP rates for Icelake

2018-06-12 Thread Jani Nikula
On Mon, 11 Jun 2018, Paulo Zanoni  wrote:
> Em Seg, 2018-06-11 às 22:35 +, Patchwork escreveu:
>> == Series Details ==
>> 
>> Series: series starting with [CI,1/2] drm/i915/icl: Add allowed DP
>> rates for Icelake
>> URL   : https://patchwork.freedesktop.org/series/44595/
>> State : warning
>> 
>> == Summary ==
>> 
>> $ dim checkpatch origin/drm-tip
>> e6e6b2f7af58 drm/i915/icl: Add allowed DP rates for Icelake
>> 3fe43cb729fe drm/i915/dp: Add support for HBR3 and TPS4 during link
>> training
>> -:26: CHECK:SPACING: spaces preferred around that '<<' (ctx:VxV)
>> #26: FILE: drivers/gpu/drm/i915/i915_reg.h:8694:
>> +#define  DP_TP_CTL_LINK_TRAIN_PAT4  (5<<8)
>
> Dear maintainers,
>
> I get this type of error way too often. What's the most desirable thing
> here?
>
> 1 - Make it "(5 << 8)" so checkpatch doesn't complain, which will leave
> the coding style inconsistent with the surrounding lines.

I don't like the inconsistency.

> 2 - Drive-by fix all the bits around it so everybody in the same
> definition has nice spaces, 2.a: in the same patch, 2.b: in a separate
> patch.

Fine by me. Both a and b. I was kind of hoping this would have happened
more.

> 3 - Just ignore the checkpatch message, push code as-is.

Also fine by me.

> 4 - Blacklist this check from checkpatch.

Unfortunately the SPACING class in checkpatch would silence much, much
more than just this specific thing, so it would be a net negative.

> 5 - Submit a separate patch fixing all the spacing errors on i915_reg.h
> once and for all. Live happily ever after.

It would be annoying for a while with conflicts, but I'd be fine. Not
sure if it would be better to do it in some arbitrary chunks rather than
mass change.

> 6 - Submit a separate patch converting everything to BIT() on
> i915_reg.h.

Same as above.

BR,
Jani.

-- 
Jani Nikula, Intel Open Source Graphics Center
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (rev3)

2018-06-12 Thread Patchwork
== Series Details ==

Series: drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled 
(rev3)
URL   : https://patchwork.freedesktop.org/series/42459/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4304_full -> Patchwork_9268_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9268_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9268_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

== Possible new issues ==

  Here are the unknown changes that may have been introduced in 
Patchwork_9268_full:

  === IGT changes ===

 Warnings 

igt@gem_exec_schedule@deep-bsd2:
  shard-kbl:  PASS -> SKIP

igt@gem_exec_schedule@deep-vebox:
  shard-kbl:  SKIP -> PASS


== Known issues ==

  Here are the changes found in Patchwork_9268_full that come from known issues:

  === IGT changes ===

 Issues hit 

igt@kms_flip@2x-flip-vs-expired-vblank-interruptible:
  shard-hsw:  PASS -> FAIL (fdo#102887)

igt@kms_setmode@basic:
  shard-kbl:  PASS -> FAIL (fdo#99912)


 Possible fixes 

igt@drv_selftest@live_gtt:
  shard-kbl:  FAIL (fdo#105347) -> PASS

igt@drv_suspend@shrink:
  shard-hsw:  INCOMPLETE (fdo#103540) -> PASS

igt@kms_rotation_crc@sprite-rotation-180:
  shard-hsw:  FAIL (fdo#103925, fdo#104724) -> PASS


  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 4) ==

  Missing(1): shard-glk 


== Build changes ==

* Linux: CI_DRM_4304 -> Patchwork_9268

  CI_DRM_4304: 2313a1dc588ef63d9650ccbaaf576bc4b47dc255 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4515: a0f2d23b7d3d4226a0a7637a9240bfa86f08c1d3 @ 
git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9268: 7e66d7400ee9f80e00633e6cfdecc354dda8e049 @ 
git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ 
git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: 
https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_9268/shards.html
___
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx


[Intel-gfx] [CI 2/2] drm/i915/gtt: Onionify error handling for gen6_ppgtt_create

2018-06-12 Thread Chris Wilson
Pull the empty stubs together into the top level gen6_ppgtt_create, and
tear each one down on error in proper onion order (rather than use
Joonas' pet hate of calling the cleanup function in indeterminable
state).

Signed-off-by: Chris Wilson 
Cc: Joonas Lahtinen 
Cc: Mika Kuoppala 
Cc: Matthew Auld 
Reviewed-by: Matthew Auld 
Reviewed-by: Joonas Lahtinen 
---
 drivers/gpu/drm/i915/i915_gem_gtt.c | 81 ++---
 1 file changed, 39 insertions(+), 42 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c 
b/drivers/gpu/drm/i915/i915_gem_gtt.c
index cc0e747b9286..e9fcc4370b1a 100644
--- a/drivers/gpu/drm/i915/i915_gem_gtt.c
+++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
@@ -1875,7 +1875,7 @@ static int gen6_alloc_va_range(struct i915_address_space 
*vm,
return -ENOMEM;
 }
 
-static int gen6_init_scratch(struct i915_address_space *vm)
+static int gen6_ppgtt_init_scratch(struct i915_address_space *vm)
 {
int ret;
 
@@ -1894,33 +1894,37 @@ static int gen6_init_scratch(struct i915_address_space 
*vm)
return 0;
 }
 
-static void gen6_free_scratch(struct i915_address_space *vm)
+static void gen6_ppgtt_free_scratch(struct i915_address_space *vm)
 {
free_pt(vm, vm->scratch_pt);
cleanup_scratch_page(vm);
 }
 
-static void gen6_ppgtt_cleanup(struct i915_address_space *vm)
+static void gen6_ppgtt_free_pd(struct gen6_hw_ppgtt *ppgtt)
 {
-   struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm));
struct i915_page_table *pt;
u32 pde;
 
-   drm_mm_remove_node(>node);
-
gen6_for_all_pdes(pt, >base.pd, pde)
-   if (pt != vm->scratch_pt)
-   free_pt(vm, pt);
+   if (pt != ppgtt->base.vm.scratch_pt)
+   free_pt(>base.vm, pt);
+}
 
-   gen6_free_scratch(vm);
+static void gen6_ppgtt_cleanup(struct i915_address_space *vm)
+{
+   struct gen6_hw_ppgtt *ppgtt = to_gen6_ppgtt(i915_vm_to_ppgtt(vm));
+
+   drm_mm_remove_node(>node);
+
+   gen6_ppgtt_free_pd(ppgtt);
+   gen6_ppgtt_free_scratch(vm);
 }
 
 static int gen6_ppgtt_allocate_page_directories(struct gen6_hw_ppgtt *ppgtt)
 {
-   struct i915_address_space *vm = >base.vm;
struct drm_i915_private *dev_priv = ppgtt->base.vm.i915;
struct i915_ggtt *ggtt = _priv->ggtt;
-   int ret;
+   int err;
 
/* PPGTT PDEs reside in the GGTT and consists of 512 entries. The
 * allocator works in address space sizes, so it's multiplied by page
@@ -1928,17 +1932,13 @@ static int gen6_ppgtt_allocate_page_directories(struct 
gen6_hw_ppgtt *ppgtt)
 */
BUG_ON(!drm_mm_initialized(>vm.mm));
 
-   ret = gen6_init_scratch(vm);
-   if (ret)
-   return ret;
-
-   ret = i915_gem_gtt_insert(>vm, >node,
+   err = i915_gem_gtt_insert(>vm, >node,
  GEN6_PD_SIZE, GEN6_PD_ALIGN,
  I915_COLOR_UNEVICTABLE,
  0, ggtt->vm.total,
  PIN_HIGH);
-   if (ret)
-   goto err_out;
+   if (err)
+   return err;
 
if (ppgtt->node.start < ggtt->mappable_end)
DRM_DEBUG("Forced to use aperture for PDEs\n");
@@ -1950,15 +1950,6 @@ static int gen6_ppgtt_allocate_page_directories(struct 
gen6_hw_ppgtt *ppgtt)
ppgtt->base.pd.base.ggtt_offset / sizeof(gen6_pte_t);
 
return 0;
-
-err_out:
-   gen6_free_scratch(vm);
-   return ret;
-}
-
-static int gen6_ppgtt_alloc(struct gen6_hw_ppgtt *ppgtt)
-{
-   return gen6_ppgtt_allocate_page_directories(ppgtt);
 }
 
 static void gen6_scratch_va_range(struct gen6_hw_ppgtt *ppgtt,
@@ -1984,21 +1975,8 @@ static struct i915_hw_ppgtt *gen6_ppgtt_create(struct 
drm_i915_private *i915)
ppgtt->base.vm.i915 = i915;
ppgtt->base.vm.dma = >drm.pdev->dev;
 
-   ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode;
-
-   err = gen6_ppgtt_alloc(ppgtt);
-   if (err)
-   goto err_free;
-
ppgtt->base.vm.total = I915_PDES * GEN6_PTES * PAGE_SIZE;
 
-   gen6_scratch_va_range(ppgtt, 0, ppgtt->base.vm.total);
-   gen6_write_page_range(>base, 0, ppgtt->base.vm.total);
-
-   err = gen6_alloc_va_range(>base.vm, 0, ppgtt->base.vm.total);
-   if (err)
-   goto err_cleanup;
-
ppgtt->base.vm.clear_range = gen6_ppgtt_clear_range;
ppgtt->base.vm.insert_entries = gen6_ppgtt_insert_entries;
ppgtt->base.vm.cleanup = gen6_ppgtt_cleanup;
@@ -2009,6 +1987,23 @@ static struct i915_hw_ppgtt *gen6_ppgtt_create(struct 
drm_i915_private *i915)
ppgtt->base.vm.vma_ops.set_pages   = ppgtt_set_pages;
ppgtt->base.vm.vma_ops.clear_pages = clear_pages;
 
+   ppgtt->base.vm.pte_encode = ggtt->vm.pte_encode;
+
+   err = gen6_ppgtt_init_scratch(>base.vm);
+   if (err)
+   goto err_free;
+
+   err = 

  1   2   >