search for: nv_timeout

Displaying 2 results from an estimated 2 matches for "nv_timeout".

2012 Apr 22
2
[RFC PATCH 5/5] drm/nouveau: gpu lockup recovery
...turn atomic_read(&dev_priv->gpureset_in_progress) != 0; +} /* nv10_gpio.c */ int nv10_gpio_init(struct drm_device *dev); @@ -1632,12 +1651,20 @@ static inline void nv_wr08(struct drm_device *dev, unsigned reg, u8 val) iowrite8(val, dev_priv->mmio + reg); } +static inline uint64_t nv_timeout(struct drm_device *dev) +{ + uint64_t tm = 2000000000ULL; + if (nouveau_gpu_reset_in_progress(dev)) + tm /= 40; /* 50ms */ + return tm; +} + #define nv_wait(dev, reg, mask, val) \ - nouveau_wait_eq(dev, 2000000000ULL, (reg), (mask), (val)) + nouveau_wait_eq(dev, nv_timeout(dev), (reg), (mask), (v...
2012 Apr 25
5
[PATCH v2 4/4] drm/nouveau: gpu lockup recovery
...turn atomic_read(&dev_priv->gpureset_in_progress) != 0; +} /* nv10_gpio.c */ int nv10_gpio_init(struct drm_device *dev); @@ -1632,12 +1663,20 @@ static inline void nv_wr08(struct drm_device *dev, unsigned reg, u8 val) iowrite8(val, dev_priv->mmio + reg); } +static inline uint64_t nv_timeout(struct drm_device *dev) +{ + uint64_t tm = 2000000000ULL; + if (nouveau_gpu_reset_in_progress(dev)) + tm = 50000000; /* 50ms */ + return tm; +} + #define nv_wait(dev, reg, mask, val) \ - nouveau_wait_eq(dev, 2000000000ULL, (reg), (mask), (val)) + nouveau_wait_eq(dev, nv_timeout(dev), (reg), (mask...