diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_state.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_state.c | 116 |
1 files changed, 58 insertions, 58 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_state.c b/drivers/gpu/drm/nouveau/nouveau_state.c index 38ea662568c1..731acea865b5 100644 --- a/drivers/gpu/drm/nouveau/nouveau_state.c +++ b/drivers/gpu/drm/nouveau/nouveau_state.c | |||
@@ -563,68 +563,68 @@ nouveau_card_init(struct drm_device *dev) | |||
563 | if (ret) | 563 | if (ret) |
564 | goto out_timer; | 564 | goto out_timer; |
565 | 565 | ||
566 | switch (dev_priv->card_type) { | 566 | if (!nouveau_noaccel) { |
567 | case NV_04: | 567 | switch (dev_priv->card_type) { |
568 | nv04_graph_create(dev); | 568 | case NV_04: |
569 | break; | 569 | nv04_graph_create(dev); |
570 | case NV_10: | 570 | break; |
571 | nv10_graph_create(dev); | 571 | case NV_10: |
572 | break; | 572 | nv10_graph_create(dev); |
573 | case NV_20: | 573 | break; |
574 | case NV_30: | 574 | case NV_20: |
575 | nv20_graph_create(dev); | 575 | case NV_30: |
576 | break; | 576 | nv20_graph_create(dev); |
577 | case NV_40: | 577 | break; |
578 | nv40_graph_create(dev); | 578 | case NV_40: |
579 | break; | 579 | nv40_graph_create(dev); |
580 | case NV_50: | 580 | break; |
581 | nv50_graph_create(dev); | 581 | case NV_50: |
582 | break; | 582 | nv50_graph_create(dev); |
583 | case NV_C0: | 583 | break; |
584 | nvc0_graph_create(dev); | 584 | case NV_C0: |
585 | break; | 585 | nvc0_graph_create(dev); |
586 | default: | 586 | break; |
587 | break; | 587 | default: |
588 | } | 588 | break; |
589 | 589 | } | |
590 | switch (dev_priv->chipset) { | ||
591 | case 0x84: | ||
592 | case 0x86: | ||
593 | case 0x92: | ||
594 | case 0x94: | ||
595 | case 0x96: | ||
596 | case 0xa0: | ||
597 | nv84_crypt_create(dev); | ||
598 | break; | ||
599 | } | ||
600 | 590 | ||
601 | switch (dev_priv->card_type) { | ||
602 | case NV_50: | ||
603 | switch (dev_priv->chipset) { | 591 | switch (dev_priv->chipset) { |
604 | case 0xa3: | 592 | case 0x84: |
605 | case 0xa5: | 593 | case 0x86: |
606 | case 0xa8: | 594 | case 0x92: |
607 | case 0xaf: | 595 | case 0x94: |
608 | nva3_copy_create(dev); | 596 | case 0x96: |
597 | case 0xa0: | ||
598 | nv84_crypt_create(dev); | ||
609 | break; | 599 | break; |
610 | } | 600 | } |
611 | break; | ||
612 | case NV_C0: | ||
613 | nvc0_copy_create(dev, 0); | ||
614 | nvc0_copy_create(dev, 1); | ||
615 | break; | ||
616 | default: | ||
617 | break; | ||
618 | } | ||
619 | 601 | ||
620 | if (dev_priv->card_type == NV_40) | 602 | switch (dev_priv->card_type) { |
621 | nv40_mpeg_create(dev); | 603 | case NV_50: |
622 | else | 604 | switch (dev_priv->chipset) { |
623 | if (dev_priv->card_type == NV_50 && | 605 | case 0xa3: |
624 | (dev_priv->chipset < 0x98 || dev_priv->chipset == 0xa0)) | 606 | case 0xa5: |
625 | nv50_mpeg_create(dev); | 607 | case 0xa8: |
608 | case 0xaf: | ||
609 | nva3_copy_create(dev); | ||
610 | break; | ||
611 | } | ||
612 | break; | ||
613 | case NV_C0: | ||
614 | nvc0_copy_create(dev, 0); | ||
615 | nvc0_copy_create(dev, 1); | ||
616 | break; | ||
617 | default: | ||
618 | break; | ||
619 | } | ||
620 | |||
621 | if (dev_priv->card_type == NV_40) | ||
622 | nv40_mpeg_create(dev); | ||
623 | else | ||
624 | if (dev_priv->card_type == NV_50 && | ||
625 | (dev_priv->chipset < 0x98 || dev_priv->chipset == 0xa0)) | ||
626 | nv50_mpeg_create(dev); | ||
626 | 627 | ||
627 | if (!nouveau_noaccel) { | ||
628 | for (e = 0; e < NVOBJ_ENGINE_NR; e++) { | 628 | for (e = 0; e < NVOBJ_ENGINE_NR; e++) { |
629 | if (dev_priv->eng[e]) { | 629 | if (dev_priv->eng[e]) { |
630 | ret = dev_priv->eng[e]->init(dev, e); | 630 | ret = dev_priv->eng[e]->init(dev, e); |
@@ -880,8 +880,8 @@ int nouveau_load(struct drm_device *dev, unsigned long flags) | |||
880 | 880 | ||
881 | #ifdef __BIG_ENDIAN | 881 | #ifdef __BIG_ENDIAN |
882 | /* Put the card in BE mode if it's not */ | 882 | /* Put the card in BE mode if it's not */ |
883 | if (nv_rd32(dev, NV03_PMC_BOOT_1)) | 883 | if (nv_rd32(dev, NV03_PMC_BOOT_1) != 0x01000001) |
884 | nv_wr32(dev, NV03_PMC_BOOT_1, 0x00000001); | 884 | nv_wr32(dev, NV03_PMC_BOOT_1, 0x01000001); |
885 | 885 | ||
886 | DRM_MEMORYBARRIER(); | 886 | DRM_MEMORYBARRIER(); |
887 | #endif | 887 | #endif |