drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields
Noticed while debugging GA102. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
8ad95edc39
commit
ba6e9ab0fc
@ -33,7 +33,7 @@ static void
|
|||||||
gm200_i2c_aux_fini(struct gm200_i2c_aux *aux)
|
gm200_i2c_aux_fini(struct gm200_i2c_aux *aux)
|
||||||
{
|
{
|
||||||
struct nvkm_device *device = aux->base.pad->i2c->subdev.device;
|
struct nvkm_device *device = aux->base.pad->i2c->subdev.device;
|
||||||
nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00310000, 0x00000000);
|
nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00710000, 0x00000000);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -54,10 +54,10 @@ gm200_i2c_aux_init(struct gm200_i2c_aux *aux)
|
|||||||
AUX_ERR(&aux->base, "begin idle timeout %08x", ctrl);
|
AUX_ERR(&aux->base, "begin idle timeout %08x", ctrl);
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
}
|
}
|
||||||
} while (ctrl & 0x03010000);
|
} while (ctrl & 0x07010000);
|
||||||
|
|
||||||
/* set some magic, and wait up to 1ms for it to appear */
|
/* set some magic, and wait up to 1ms for it to appear */
|
||||||
nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00300000, ureq);
|
nvkm_mask(device, 0x00d954 + (aux->ch * 0x50), 0x00700000, ureq);
|
||||||
timeout = 1000;
|
timeout = 1000;
|
||||||
do {
|
do {
|
||||||
ctrl = nvkm_rd32(device, 0x00d954 + (aux->ch * 0x50));
|
ctrl = nvkm_rd32(device, 0x00d954 + (aux->ch * 0x50));
|
||||||
@ -67,7 +67,7 @@ gm200_i2c_aux_init(struct gm200_i2c_aux *aux)
|
|||||||
gm200_i2c_aux_fini(aux);
|
gm200_i2c_aux_fini(aux);
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
}
|
}
|
||||||
} while ((ctrl & 0x03000000) != urep);
|
} while ((ctrl & 0x07000000) != urep);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user