List of commits:
Subject Hash Author Date (UTC)
use usleep_range and fix a dp 1.1 time out d4183ce73e6ec7d7f3baf9d710dd2ba015b4a6a9 Sylvain BERTRAND 2014-02-19 20:09:44
fix dac a864ba601253674b679b07e4b1ddc00fb83a8cb6 Sylvain BERTRAND 2014-02-19 19:17:08
clear atombias dpm state and warn for instability 28b598d81f6a873f90d1a9325e3e1002743487a5 Sylvain BERTRAND 2014-02-19 19:10:43
CFG_MEM_SZ upper 16bits may have garbage f08f2e3471989e448d6d76ba02565fd9efc3293f Sylvain BERTRAND 2014-02-19 17:55:38
fix ena rbs mask performance critical bug 289497449dd0f2acb09e03f65988e22e45948fb6 Sylvain BERTRAND 2014-02-19 17:15:18
upstream confirm bug, fixed e2142c3fdfc01d51e7fec7687ec4d02f548ce763 Sylvain BERTRAND 2014-02-18 16:10:14
mainly bug fixing 1650d6a6e13bd81a4df9bfaa84a5daef2989ccdf Sylvain BERTRAND 2014-02-18 12:46:40
dump smc sw regs 5b42263039c858624ff411d94318f6ef5171a864 Sylvain BERTRAND 2014-02-17 12:22:26
disable switch to low power when no display 69f94e04ea89c1fe9ccaef153da5f5ade232c2a1 Sylvain BERTRAND 2014-02-17 09:59:28
finish smc switch to driver power state 6f99d0a01491dd671174919d842a771ac4a81a4b Sylvain BERTRAND 2014-02-17 09:47:02
pcie things and follow upstream for dyn pm init f4fb120597276a3badc08eec30783b10d111f756 Sylvain BERTRAND 2014-02-17 09:00:00
dump performance state tbls 06a22756b504ecf4523c86f657104e0b970195de Sylvain BERTRAND 2014-02-14 17:02:23
smc_mc_arb_tbl init for the driver state 5d1868e75b11164dbb97caaddbc7992b252ab973 Sylvain BERTRAND 2014-02-14 13:01:26
smc_mc_reg tbl init for the driver state e8aa12b1c87571031098c4427822733a74133afc Sylvain BERTRAND 2014-02-14 11:32:04
installation of the perf pwr state continued 535c853e7d0a0ab04fbff3b0d5613ef9a34d525c Sylvain BERTRAND 2014-02-13 19:16:33
installation of the perf pwr state continued b229eef2798acbe053aa09e47c213e23749638dd Sylvain BERTRAND 2014-02-13 10:48:02
dyn pm second part continuation 95dd7b4754476a014d8f84854e5b2ce5c81d23b4 Sylvain BERTRAND 2014-02-12 20:15:03
beginning of dyn pm second part c32c19d884dbf1f440480bbea42140e9c5ed8cd3 Sylvain BERTRAND 2014-02-12 14:44:04
uvd does only mpeg, then switch off 7e36b98bcab47e9986a63093dbeed98ab290f85f Sylvain BERTRAND 2014-02-12 10:55:54
bug fixing, end of dyn pm first part 533a4bd6731205f71704886e5fa099063be985ea Sylvain BERTRAND 2014-02-11 13:49:27
Commit d4183ce73e6ec7d7f3baf9d710dd2ba015b4a6a9 - use usleep_range and fix a dp 1.1 time out
Author: Sylvain BERTRAND
Author date (UTC): 2014-02-19 20:09
Committer name: Sylvain BERTRAND
Committer date (UTC): 2014-02-19 20:09
Parent(s): a864ba601253674b679b07e4b1ddc00fb83a8cb6
Signing key:
Tree: 2f0296857e3f7de41bb14f9e777c655e0a596c7e
File Lines added Lines deleted
drivers/gpu/alga/amd/atombios/dce.c 10 5
drivers/gpu/alga/amd/dce6/mod.c 1 1
drivers/gpu/alga/amd/dce6/sink.c 1 1
File drivers/gpu/alga/amd/atombios/dce.c changed (mode: 100644) (index a2c0178..09dd60a)
... ... long atb_dp_aux_native_write(struct atombios *atb, u8 aux_i2c_id, u8 hpd,
168 168 return send_buf_sz; return send_buf_sz;
169 169 } else if ((ack & DP_AUX_NATIVE_REPLY_MASK) } else if ((ack & DP_AUX_NATIVE_REPLY_MASK)
170 170 == DP_AUX_NATIVE_REPLY_DEFER) { == DP_AUX_NATIVE_REPLY_DEFER) {
171 udelay(400); /* dp standard, 400 microsecs timeout */
171 /* dp standard, 400 microsecs timeout */
172 usleep_range(400, 500);
172 173 } else /* NACK */ { } else /* NACK */ {
173 174 return -EIO; return -EIO;
174 175 } }
 
... ... long atb_dp_aux_native_read(struct atombios *atb, u8 aux_i2c_id, u8 hpd,
206 207 return r; return r;
207 208 else if ((ack & DP_AUX_NATIVE_REPLY_MASK) else if ((ack & DP_AUX_NATIVE_REPLY_MASK)
208 209 == DP_AUX_NATIVE_REPLY_DEFER) == DP_AUX_NATIVE_REPLY_DEFER)
209 udelay(400); /* dp standard, 400 microsecs timeout */
210 /* dp standard, 400 microsecs timeout */
211 usleep_range(400, 500);
210 212 else if (r == 0) /* NACK */ else if (r == 0) /* NACK */
211 213 return -EINVAL; /* dp standard says wrong address */ return -EINVAL; /* dp standard says wrong address */
212 214 else else
 
... ... long atb_dp_aux_i2c(struct atombios *atb, u8 aux_i2c_id, u8 hpd, u16 addr,
260 262 r = dp_aux(atb, aux_i2c_id, hpd, msg, msg_sz, byte_recv, 1, &ack); r = dp_aux(atb, aux_i2c_id, hpd, msg, msg_sz, byte_recv, 1, &ack);
261 263 if (r < 0) { if (r < 0) {
262 264 if (r == -EBUSY || r == -ETIMEDOUT) { if (r == -EBUSY || r == -ETIMEDOUT) {
263 udelay(400); /* dp standard transaction timeout */
265 /* dp standard transaction timeout */
266 usleep_range(400, 500);
264 267 return -EAGAIN; /* let the i2c core retry */ return -EAGAIN; /* let the i2c core retry */
265 268 } else { } else {
266 269 return r; return r;
 
... ... long atb_dp_aux_i2c(struct atombios *atb, u8 aux_i2c_id, u8 hpd, u16 addr,
275 278 dev_err(atb->adev.dev, "atombios:dp sink unable to fetch all i2c data\n"); dev_err(atb->adev.dev, "atombios:dp sink unable to fetch all i2c data\n");
276 279 return -EREMOTEIO; return -EREMOTEIO;
277 280 case DP_AUX_NATIVE_REPLY_DEFER: case DP_AUX_NATIVE_REPLY_DEFER:
278 udelay(400); /* dp standard transaction timeout */
281 /* dp standard transaction timeout */
282 usleep_range(400, 500);
279 283 return -EAGAIN; /* let the i2c core retry */ return -EAGAIN; /* let the i2c core retry */
280 284 default: default:
281 285 dev_err(atb->adev.dev, "atombios:dp sink invalid native ack value\n"); dev_err(atb->adev.dev, "atombios:dp sink invalid native ack value\n");
 
... ... long atb_dp_aux_i2c(struct atombios *atb, u8 aux_i2c_id, u8 hpd, u16 addr,
289 293 dev_err(atb->adev.dev, "atombios:dp sink i2c nack\n"); dev_err(atb->adev.dev, "atombios:dp sink i2c nack\n");
290 294 return -EREMOTEIO; return -EREMOTEIO;
291 295 case DP_AUX_I2C_REPLY_DEFER: case DP_AUX_I2C_REPLY_DEFER:
292 udelay(400); /* dp standard transaction timeout */
296 /* dp standard transaction timeout */
297 usleep_range(400, 500);
293 298 return -EAGAIN; /* let the i2c core retry */ return -EAGAIN; /* let the i2c core retry */
294 299 default: default:
295 300 dev_err(atb->adev.dev, "atombios:dp sink invalid i2c ack value\n"); dev_err(atb->adev.dev, "atombios:dp sink invalid i2c ack value\n");
File drivers/gpu/alga/amd/dce6/mod.c changed (mode: 100644) (index 6ac9022..2218c63)
... ... static long dps_used_pwr_on(struct dce6 *dce)
227 227 if (r == -ATB_ERR) if (r == -ATB_ERR)
228 228 return -DCE6_ERR; return -DCE6_ERR;
229 229 } }
230 msleep(300);/* follow timing specs from AMD code */
230 usleep_range(1000, 2000); /* dp specs 1.1 */
231 231 return 0; return 0;
232 232 } }
233 233
File drivers/gpu/alga/amd/dce6/sink.c changed (mode: 100644) (index fea839a..9a812ac)
... ... long sink_mode_set(struct dce6 *dce, u8 i, struct sink_db_fb *db_fb)
190 190 r = -DCE6_ERR; r = -DCE6_ERR;
191 191 goto unlock_atb; goto unlock_atb;
192 192 } }
193 msleep(300);/* follow timing specs from AMD code */
193 usleep_range(1000, 2000); /* dp specs 1.1 */
194 194 } }
195 195
196 196 r = atb_enc_crtc_src(atb, i); r = atb_enc_crtc_src(atb, i);
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/sylware/linux-gpu-amd-si

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/sylware/linux-gpu-amd-si

Clone this repository using git:
git clone git://git.rocketgit.com/user/sylware/linux-gpu-amd-si

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main