drm/i915: POSTING_READs are simply flushes and so irrelevant to tracing
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 8 Nov 2010 21:07:24 +0000 (21:07 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 8 Nov 2010 21:09:52 +0000 (21:09 +0000)
As we use POSTING_READ to flush the write to the register before
proceeding, we do not care what the return value is and similar we do
not care for the read to be recorded whilst tracing register
read/writes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/intel_i2c.c

index 02c35d5..ff7593f 100644 (file)
@@ -1226,12 +1226,14 @@ i915_write(struct drm_i915_private *dev_priv, u32 reg, u64 val, int len)
 #define I915_WRITE8(reg, val)  i915_write(dev_priv, (reg), (val), 1)
 #define I915_WRITE64(reg, val) i915_write(dev_priv, (reg), (val), 8)
 #define I915_READ64(reg)       i915_read(dev_priv, (reg), 8)
-#define POSTING_READ(reg)      (void)I915_READ(reg)
-#define POSTING_READ16(reg)    (void)I915_READ16(reg)
 
 #define I915_READ_NOTRACE(reg)         readl(dev_priv->regs + (reg))
 #define I915_WRITE_NOTRACE(reg, val)   writel(val, dev_priv->regs + (reg))
-#define POSTING_READ_NOTRACE(reg)      (void)I915_READ_NOTRACE(reg)
+#define I915_READ16_NOTRACE(reg)               readw(dev_priv->regs + (reg))
+#define I915_WRITE16_NOTRACE(reg, val) writew(val, dev_priv->regs + (reg))
+
+#define POSTING_READ(reg)      (void)I915_READ_NOTRACE(reg)
+#define POSTING_READ16(reg)    (void)I915_READ16_NOTRACE(reg)
 
 
 #define BEGIN_LP_RING(n) \
index 8f5c0d3..d2d493a 100644 (file)
@@ -126,7 +126,7 @@ static void set_clock(void *data, int state_high)
                        GPIO_CLOCK_VAL_MASK;
 
        I915_WRITE_NOTRACE(gpio->reg, reserved | clock_bits);
-       POSTING_READ_NOTRACE(gpio->reg);
+       POSTING_READ(gpio->reg);
 }
 
 static void set_data(void *data, int state_high)
@@ -143,7 +143,7 @@ static void set_data(void *data, int state_high)
                        GPIO_DATA_VAL_MASK;
 
        I915_WRITE_NOTRACE(gpio->reg, reserved | data_bits);
-       POSTING_READ_NOTRACE(gpio->reg);
+       POSTING_READ(gpio->reg);
 }
 
 static struct i2c_adapter *