| .. | .. |
|---|
| 408 | 408 | if (gpu->identity.model == chipModel_GC700) |
|---|
| 409 | 409 | gpu->identity.features &= ~chipFeatures_FAST_CLEAR; |
|---|
| 410 | 410 | |
|---|
| 411 | + /* These models/revisions don't have the 2D pipe bit */ |
|---|
| 412 | + if ((gpu->identity.model == chipModel_GC500 && |
|---|
| 413 | + gpu->identity.revision <= 2) || |
|---|
| 414 | + gpu->identity.model == chipModel_GC300) |
|---|
| 415 | + gpu->identity.features |= chipFeatures_PIPE_2D; |
|---|
| 416 | + |
|---|
| 411 | 417 | if ((gpu->identity.model == chipModel_GC500 && |
|---|
| 412 | 418 | gpu->identity.revision < 2) || |
|---|
| 413 | 419 | (gpu->identity.model == chipModel_GC300 && |
|---|
| .. | .. |
|---|
| 441 | 447 | gpu_read(gpu, VIVS_HI_CHIP_MINOR_FEATURE_5); |
|---|
| 442 | 448 | } |
|---|
| 443 | 449 | |
|---|
| 444 | | - /* GC600 idle register reports zero bits where modules aren't present */ |
|---|
| 445 | | - if (gpu->identity.model == chipModel_GC600) |
|---|
| 450 | + /* GC600/300 idle register reports zero bits where modules aren't present */ |
|---|
| 451 | + if (gpu->identity.model == chipModel_GC600 || |
|---|
| 452 | + gpu->identity.model == chipModel_GC300) |
|---|
| 446 | 453 | gpu->idle_mask = VIVS_HI_IDLE_STATE_TX | |
|---|
| 447 | 454 | VIVS_HI_IDLE_STATE_RA | |
|---|
| 448 | 455 | VIVS_HI_IDLE_STATE_SE | |
|---|