diff options
author | Dave Airlie <airlied@redhat.com> | 2010-10-05 22:38:04 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-10-05 22:57:11 -0400 |
commit | 0c8eb0dc65f5a78b252eeff6c729ba4741390e23 (patch) | |
tree | b3a64b52e9357ca8ea99966d411842659e2a27cf /drivers/gpu/drm/nouveau/nouveau_i2c.c | |
parent | e6b46ee712b92db1cc2449cf4f65bc635366cad4 (diff) | |
parent | d961db75ce86a84f1f04e91ad1014653ed7d9f46 (diff) |
Merge remote branch 'nouveau/for-airlied' of ../drm-nouveau-next into drm-core-next
[airlied - add fix for vmwgfx build]
* 'nouveau/for-airlied' of ../drm-nouveau-next: (93 commits)
drm/ttm: restructure to allow driver to plug in alternate memory manager
drm/ttm: introduce utility function to free an allocated memory node
drm/nouveau: fix thinkos in mem timing table recordlen check
drm/nouveau: parse voltage from perf 0x40 entires
drm/nouveau: don't use the default pll limits in table v2.1 on nv50+ cards
drm/nv50: Fix large 3D performance regression caused by the interchannel sync patches.
drm/nouveau: Synchronize buffer object moves in hardware.
drm/nouveau: Use semaphores to handle inter-channel sync in hardware.
drm/nouveau: Provide a means to have arbitrary work run on fence completion.
drm/nouveau: Minor refactoring/cleanup of the fence code.
drm/nouveau: Add a module option to force card POST.
drm/nv50: prevent (IB_PUT == IB_GET) for occurring unless idle
drm/nv0x-nv4x: Leave the 0x40 bit untouched when changing CRE_LCD.
drm/nv30-nv40: Fix postdivider mask when writing engine/memory PLLs.
drm/nouveau: Fix perf table parsing on BMP v5.25.
drm/nouveau: fix required mode bandwidth calculation for DP
drm/nouveau: fix typo in c2aa91afea5f7e7ae4530fabd37414a79c03328c
drm/nva3: split pm backend out from nv50
drm/nouveau: run perflvl and M table scripts on mem clock change
drm/nouveau: pass perflvl struct to clock_pre()
...
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_i2c.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_i2c.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_i2c.c b/drivers/gpu/drm/nouveau/nouveau_i2c.c index 84614858728b..fdd7e3de79c8 100644 --- a/drivers/gpu/drm/nouveau/nouveau_i2c.c +++ b/drivers/gpu/drm/nouveau/nouveau_i2c.c | |||
@@ -299,7 +299,10 @@ nouveau_probe_i2c_addr(struct nouveau_i2c_chan *i2c, int addr) | |||
299 | 299 | ||
300 | int | 300 | int |
301 | nouveau_i2c_identify(struct drm_device *dev, const char *what, | 301 | nouveau_i2c_identify(struct drm_device *dev, const char *what, |
302 | struct i2c_board_info *info, int index) | 302 | struct i2c_board_info *info, |
303 | bool (*match)(struct nouveau_i2c_chan *, | ||
304 | struct i2c_board_info *), | ||
305 | int index) | ||
303 | { | 306 | { |
304 | struct nouveau_i2c_chan *i2c = nouveau_i2c_find(dev, index); | 307 | struct nouveau_i2c_chan *i2c = nouveau_i2c_find(dev, index); |
305 | int i; | 308 | int i; |
@@ -307,7 +310,8 @@ nouveau_i2c_identify(struct drm_device *dev, const char *what, | |||
307 | NV_DEBUG(dev, "Probing %ss on I2C bus: %d\n", what, index); | 310 | NV_DEBUG(dev, "Probing %ss on I2C bus: %d\n", what, index); |
308 | 311 | ||
309 | for (i = 0; info[i].addr; i++) { | 312 | for (i = 0; info[i].addr; i++) { |
310 | if (nouveau_probe_i2c_addr(i2c, info[i].addr)) { | 313 | if (nouveau_probe_i2c_addr(i2c, info[i].addr) && |
314 | (!match || match(i2c, &info[i]))) { | ||
311 | NV_INFO(dev, "Detected %s: %s\n", what, info[i].type); | 315 | NV_INFO(dev, "Detected %s: %s\n", what, info[i].type); |
312 | return i; | 316 | return i; |
313 | } | 317 | } |