Unify interrupt register init/reset
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest15 patches 12 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/15 | drm/i915: add INTEL_IRQ_REG_RESETdrivers/ | +21 | 0 replies | |
| 2/15 | drm/i915: change how VLV_IIR is resetdrivers/ | +2 | 0 replies | |
| 3/15 | drm/i915: port i965_irq_uninstall go INTEL_IRQ_REG_RESETdrivers/ | +1 | 3 replies | |
| 4/15 | drm/i915: really clear the IIR registersdrivers/ | +8 | 3 replies | |
| 5/15 | drm/i915: add INTEL_IRQ_REG_INITdrivers/ | +14 | 1 reply | |
| 6/15 | drm/i915: use INTEL_IRQ_REG_INIT on VLV toodrivers/ | +1 | 0 replies | |
| 7/15 | drm/i915: reset the IIR registers at preinstalldrivers/ | +16 | 1 reply | |
| 8/15 | drm/i915: WARN if IIR is not zero at irq_postinstalldrivers/ | +1 | 0 replies | |
| 9/15 | drm/i915: remove additional zerogin of VLV_IIR at postinstalldrivers/ | +0 | 0 replies | |
| 10/15 | drm/i915: remove extra clearing of GTIIR from VLV irq preinstalldrivers/ | +0 | 0 replies | |
| 11/15 | drm/i915: add INTEL_IRQ_REG_RESET16drivers/ | +11 | 1 reply | |
| 12/15 | drm/i915: really clear the IIR registers on i8xxdrivers/ | +8 | 0 replies | |
| 13/15 | drm/i915: add INTEL_IRQ_REG_INIT16drivers/ | +14 | 0 replies | |
| 14/15 | drm/i915: reset the i8xx IIR registers at preinstalldrivers/ | +6 | 0 replies | |
| 15/15 | drm/i915: WARN if IIR is not zero at i8xx irq_postinstalldrivers/ | +2 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 00/15] Unify interrupt register init/reset
From: Paulo Zanoni <[email protected]>
Hi
This patch series is based on emails I sent a few days ago, with subject "proposals/questions about the IRQ registers". The biggest goal of the series is to have an unified way to initialize/reset IRQ regsiters. After this series, when you add new interrupts to our driver you won't need to think about doing the correct reads, writes and posting_reads, all you'll need to worry about is to call the macros everyone else calls. So now either all the registers are initialized correctly or all the registers are initialized wrongly.
The first 10 patches do all the rework on i915+. The changes should be incremental and any non-trivial changes are on separate patches, so bisecting regressions should be very easy. It is worth mentioning that patches 2, 6, 9 and 10 touch VLV-specific code, and I don't have a way to test this code.
On my intial patches the i8xx code was changed along with the i915+ code, but Ben suggested I shouldn't be touching i8xx code, so patches 11-15 do the i8xx work. I don't know if we really want these patches, but they're here anyway, so feel free to give them a NACK, I won't complain. In case we decide to merge the patches, git bisect should easily spot regressions.
Patches tested on Haswell (constant use for 2 weeks), SandyBridge (a few hours of usage) and Atom (only booted and then suspend/resumed once).
Thanks,
Paulo
Paulo Zanoni (15):
drm/i915: add INTEL_IRQ_REG_RESET
drm/i915: change how VLV_IIR is reset
drm/i915: port i965_irq_uninstall go INTEL_IRQ_REG_RESET drm/i915: really clear the IIR registers
drm/i915: add INTEL_IRQ_REG_INIT
drm/i915: use INTEL_IRQ_REG_INIT on VLV too
drm/i915: reset the IIR registers at preinstall drm/i915: WARN if IIR is not zero at irq_postinstall drm/i915: remove additional zerogin of VLV_IIR at postinstall drm/i915: remove extra clearing of GTIIR from VLV irq preinstall drm/i915: add INTEL_IRQ_REG_RESET16
drm/i915: really clear the IIR registers on i8xx drm/i915: add INTEL_IRQ_REG_INIT16
drm/i915: reset the i8xx IIR registers at preinstall drm/i915: WARN if IIR is not zero at i8xx irq_postinstall
drivers/gpu/drm/i915/i915_irq.c | 144 +++++++++++++++++----------------------- 1 file changed, 62 insertions(+), 82 deletions(-)
Signature · 1 line
1.8.1.2