Rev 6084 | Rev 6103 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6084 | Rev 6088 | ||
---|---|---|---|
Line 21... | Line 21... | ||
21 | */ |
21 | */ |
Line 22... | Line 22... | ||
22 | 22 | ||
23 | #include |
23 | #include |
24 | #include |
24 | #include |
25 | //#include |
25 | //#include |
26 | //#include |
26 | #include |
27 | #include |
27 | #include |
28 | #include |
28 | #include |
29 | #include |
29 | #include |
30 | #include |
30 | #include |
Line 213... | Line 213... | ||
213 | 213 | ||
214 | case DP_AUX_NATIVE_REPLY_NACK: |
214 | case DP_AUX_NATIVE_REPLY_NACK: |
Line 215... | Line 215... | ||
215 | return -EIO; |
215 | return -EIO; |
216 | 216 | ||
217 | case DP_AUX_NATIVE_REPLY_DEFER: |
217 | case DP_AUX_NATIVE_REPLY_DEFER: |
218 | usleep(500); |
218 | usleep_range(AUX_RETRY_INTERVAL, AUX_RETRY_INTERVAL + 100); |
219 | break; |
219 | break; |
Line 220... | Line 220... | ||
220 | } |
220 | } |
Line 347... | Line 347... | ||
347 | /* |
347 | /* |
348 | * According to the DP 1.1 specification, a "Sink Device must exit the |
348 | * According to the DP 1.1 specification, a "Sink Device must exit the |
349 | * power saving state within 1 ms" (Section 2.5.3.1, Table 5-52, "Sink |
349 | * power saving state within 1 ms" (Section 2.5.3.1, Table 5-52, "Sink |
350 | * Control Field" (register 0x600). |
350 | * Control Field" (register 0x600). |
351 | */ |
351 | */ |
352 | usleep(2000); |
352 | usleep_range(1000, 2000); |
Line 353... | Line 353... | ||
353 | 353 | ||
354 | return 0; |
354 | return 0; |
355 | } |
355 | } |
Line 576... | Line 576... | ||
576 | * long legacy cable may force very low I2C bit rates. |
576 | * long legacy cable may force very low I2C bit rates. |
577 | * |
577 | * |
578 | * For now just defer for long enough to hopefully be |
578 | * For now just defer for long enough to hopefully be |
579 | * safe for all use-cases. |
579 | * safe for all use-cases. |
580 | */ |
580 | */ |
581 | usleep_range(500, 600); |
581 | usleep_range(AUX_RETRY_INTERVAL, AUX_RETRY_INTERVAL + 100); |
582 | continue; |
582 | continue; |
Line 583... | Line 583... | ||
583 | 583 | ||
584 | default: |
584 | default: |
585 | DRM_ERROR("invalid native reply %#04x\n", msg->reply); |
585 | DRM_ERROR("invalid native reply %#04x\n", msg->reply); |
Line 608... | Line 608... | ||
608 | * transaction to pass this test |
608 | * transaction to pass this test |
609 | */ |
609 | */ |
610 | aux->i2c_defer_count++; |
610 | aux->i2c_defer_count++; |
611 | if (defer_i2c < 7) |
611 | if (defer_i2c < 7) |
612 | defer_i2c++; |
612 | defer_i2c++; |
613 | usleep_range(400, 500); |
613 | usleep_range(AUX_RETRY_INTERVAL, AUX_RETRY_INTERVAL + 100); |
614 | drm_dp_i2c_msg_write_status_update(msg); |
614 | drm_dp_i2c_msg_write_status_update(msg); |
Line 615... | Line 615... | ||
615 | 615 | ||
Line 616... | Line 616... | ||
616 | continue; |
616 | continue; |