Bug 67604 - [HSW GT3] support the second slice
Summary: [HSW GT3] support the second slice
Status: CLOSED NOTABUG
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium enhancement
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-08-01 05:46 UTC by Guo Yejun
Modified: 2017-07-24 22:57 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Guo Yejun 2013-08-01 05:46:47 UTC
HSW GT3 has two slices (GT2 has only one slice), need to support the second slice in KMD, thanks.
Comment 1 Chris Wilson 2013-08-01 07:22:45 UTC
Since the second slice is enabled, what is it exactly that you want. What we lack atm is slice shutdown.
Comment 2 Guo Yejun 2013-08-01 07:26:50 UTC
the second slice is physically inside GT3 but not enabled by KMD. Want the 2nd slice to be enabled. thanks.
Comment 3 Chris Wilson 2013-08-03 09:34:51 UTC
What does "intel_reg_write 0x138064 0x8" report?
Comment 4 Daniel Vetter 2013-08-04 20:46:16 UTC
Also, what exaxtly are the symptoms here? Hangs to due wrong threadcounts or just lack of performance?
Comment 5 Guo Yejun 2013-08-05 02:10:16 UTC
to Wilson: the result is "Couldn't map MMIO region: Resource temporarily unavailable"

to Vetter: there is a performance gap between windows and linux, and we narrowed down to the missed 2nd slice support by comparing the source code with Windows KMD.
Comment 6 Chris Wilson 2013-08-05 12:43:51 UTC
Now try again with the real intel-gpu-tools (i.e. built from http://cgit.freedesktop.org/xorg/app/intel-gpu-tools/).
Comment 7 Guo Yejun 2013-08-06 08:38:42 UTC
$ sudo ./intel_reg_write 0x138064 0x8
Value before: 0xB
Value after: 0xB



btw, i tried to read this register in function i915_driver_load with the following source code, and the result is 0x8. Not know how the register changes from 0x8 to 0xB.
    int val = I915_READ(0x138064);
    printk("0x%x\n", val);
Comment 8 Chris Wilson 2013-08-06 08:55:03 UTC
"lspci -vvvs 0:2" for the machine you are testing this on would be useful confirmation.
Comment 9 Rodrigo Vivi 2013-08-06 11:59:15 UTC
Since you got:

"Value before: 0xB"

I'd say that we don't have a bug here.
Please use $ sudo intel_reg_read 0x138064

This is more reliable than reading during load time.
If you still don't get 0xB with intel_reg_read so we do have a bug.
But 0x8 value is so strange it means all GT is off yet since

1:0 = 00: GT is powered off C6 or not yet booted
Comment 10 Guo Yejun 2013-08-07 01:56:32 UTC
to Wilson:
$ lspci -vvvs 0:2
00:02.0 VGA compatible controller: Intel Corporation Device 0d26 (rev 07) (prog-if 00 [VGA controller])
        Subsystem: Intel Corporation Device 2212
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin A routed to IRQ 46
        Region 0: Memory at c0000000 (64-bit, non-prefetchable) [size=4M]
        Region 2: Memory at b0000000 (64-bit, prefetchable) [size=256M]
        Region 4: I/O ports at 3000 [size=64]
        Expansion ROM at <unassigned> [disabled]
        Capabilities: <access denied>
        Kernel driver in use: i915
        Kernel modules: i915


to Vivi:
$ sudo ./intel_reg_read 0x138064
0x138064 : 0xB


And the register value read in function i915_driver_load is still 0x8.
Comment 11 Chris Wilson 2013-08-07 08:18:12 UTC
When the GPU is out of rc6, both slices are enabled. So what leads you to think that the second slice is not supported?
Comment 12 Eric Anholt 2013-11-16 23:21:46 UTC
I've confirmed that threads are being dispatched to both slices (by watching the PS Depth counts for the 2 slices, 0x22d8 and 0x22f8)


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.