aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_i2c.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-11-15 01:49:30 -0500
committerChris Wilson <chris@chris-wilson.co.uk>2010-11-15 01:49:30 -0500
commitc94f28c383f58c9de74678e0f1624db9c5f8a8cb (patch)
tree3281184f026cb79cee6c20fe29c994ba654cbbe4 /drivers/gpu/drm/i915/intel_i2c.c
parentdf15315899c0641412bd54b29565a70b078a6ac8 (diff)
parent1bb95834bbcdc969e477a9284cf96c17a4c2616f (diff)
Merge branch 'drm-intel-fixes' into drm-intel-next
Conflicts: drivers/gpu/drm/i915/i915_gem.c drivers/gpu/drm/i915/intel_ringbuffer.c
Diffstat (limited to 'drivers/gpu/drm/i915/intel_i2c.c')
-rw-r--r--drivers/gpu/drm/i915/intel_i2c.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c
index d2d493a24e65..58040f68ed7a 100644
--- a/drivers/gpu/drm/i915/intel_i2c.c
+++ b/drivers/gpu/drm/i915/intel_i2c.c
@@ -161,7 +161,7 @@ intel_gpio_create(struct drm_i915_private *dev_priv, u32 pin)
161 }; 161 };
162 struct intel_gpio *gpio; 162 struct intel_gpio *gpio;
163 163
164 if (pin < 1 || pin > 7) 164 if (pin >= ARRAY_SIZE(map_pin_to_reg) || !map_pin_to_reg[pin])
165 return NULL; 165 return NULL;
166 166
167 gpio = kzalloc(sizeof(struct intel_gpio), GFP_KERNEL); 167 gpio = kzalloc(sizeof(struct intel_gpio), GFP_KERNEL);
@@ -173,7 +173,8 @@ intel_gpio_create(struct drm_i915_private *dev_priv, u32 pin)
173 gpio->reg += PCH_GPIOA - GPIOA; 173 gpio->reg += PCH_GPIOA - GPIOA;
174 gpio->dev_priv = dev_priv; 174 gpio->dev_priv = dev_priv;
175 175
176 snprintf(gpio->adapter.name, I2C_NAME_SIZE, "GPIO%c", "?BACDEF?"[pin]); 176 snprintf(gpio->adapter.name, sizeof(gpio->adapter.name),
177 "i915 GPIO%c", "?BACDE?F"[pin]);
177 gpio->adapter.owner = THIS_MODULE; 178 gpio->adapter.owner = THIS_MODULE;
178 gpio->adapter.algo_data = &gpio->algo; 179 gpio->adapter.algo_data = &gpio->algo;
179 gpio->adapter.dev.parent = &dev_priv->dev->pdev->dev; 180 gpio->adapter.dev.parent = &dev_priv->dev->pdev->dev;
@@ -350,7 +351,7 @@ int intel_setup_gmbus(struct drm_device *dev)
350 "panel", 351 "panel",
351 "dpc", 352 "dpc",
352 "dpb", 353 "dpb",
353 "reserved" 354 "reserved",
354 "dpd", 355 "dpd",
355 }; 356 };
356 struct drm_i915_private *dev_priv = dev->dev_private; 357 struct drm_i915_private *dev_priv = dev->dev_private;
@@ -367,8 +368,8 @@ int intel_setup_gmbus(struct drm_device *dev)
367 bus->adapter.owner = THIS_MODULE; 368 bus->adapter.owner = THIS_MODULE;
368 bus->adapter.class = I2C_CLASS_DDC; 369 bus->adapter.class = I2C_CLASS_DDC;
369 snprintf(bus->adapter.name, 370 snprintf(bus->adapter.name,
370 I2C_NAME_SIZE, 371 sizeof(bus->adapter.name),
371 "gmbus %s", 372 "i915 gmbus %s",
372 names[i]); 373 names[i]);
373 374
374 bus->adapter.dev.parent = &dev->pdev->dev; 375 bus->adapter.dev.parent = &dev->pdev->dev;