mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 07:28:11 +02:00
nvc0: fixup gk110 and up not being listed in various switch statements
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
26f3ff8a91
commit
92ceb327ba
7 changed files with 27 additions and 13 deletions
|
|
@ -851,6 +851,8 @@ GCRA::coalesce(ArrayList& insns)
|
|||
case 0xc0:
|
||||
case 0xd0:
|
||||
case 0xe0:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
ret = doCoalesce(insns, JOIN_MASK_UNION);
|
||||
break;
|
||||
default:
|
||||
|
|
@ -1952,7 +1954,8 @@ RegAlloc::InsertConstraintsPass::visit(BasicBlock *bb)
|
|||
texConstraintNVC0(tex);
|
||||
break;
|
||||
case 0xe0:
|
||||
case NVISA_GK110_CHIPSET:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
texConstraintNVE0(tex);
|
||||
break;
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -134,11 +134,12 @@ extern Target *getTargetNV50(unsigned int chipset);
|
|||
|
||||
Target *Target::create(unsigned int chipset)
|
||||
{
|
||||
switch (chipset & 0xf0) {
|
||||
switch (chipset & ~0xf) {
|
||||
case 0xc0:
|
||||
case 0xd0:
|
||||
case 0xe0:
|
||||
case NVISA_GK110_CHIPSET:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
return getTargetNVC0(chipset);
|
||||
case 0x50:
|
||||
case 0x80:
|
||||
|
|
|
|||
|
|
@ -46,12 +46,13 @@ TargetNVC0::TargetNVC0(unsigned int card) : Target(false, card >= 0xe4)
|
|||
void
|
||||
TargetNVC0::getBuiltinCode(const uint32_t **code, uint32_t *size) const
|
||||
{
|
||||
switch (chipset & 0xf0) {
|
||||
switch (chipset & ~0xf) {
|
||||
case 0xe0:
|
||||
*code = (const uint32_t *)&nve4_builtin_code[0];
|
||||
*size = sizeof(nve4_builtin_code);
|
||||
break;
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
*code = (const uint32_t *)&nvf0_builtin_code[0];
|
||||
*size = sizeof(nvf0_builtin_code);
|
||||
break;
|
||||
|
|
@ -67,9 +68,12 @@ TargetNVC0::getBuiltinOffset(int builtin) const
|
|||
{
|
||||
assert(builtin < NVC0_BUILTIN_COUNT);
|
||||
|
||||
switch (chipset & 0xf0) {
|
||||
case 0xe0: return nve4_builtin_offsets[builtin];
|
||||
case 0xf0: return nvf0_builtin_offsets[builtin];
|
||||
switch (chipset & ~0xf) {
|
||||
case 0xe0:
|
||||
return nve4_builtin_offsets[builtin];
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
return nvf0_builtin_offsets[builtin];
|
||||
default:
|
||||
return nvc0_builtin_offsets[builtin];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ nvc0_screen_compute_setup(struct nvc0_screen *screen,
|
|||
int ret;
|
||||
int i;
|
||||
|
||||
switch (dev->chipset & 0xf0) {
|
||||
switch (dev->chipset & ~0xf) {
|
||||
case 0xc0:
|
||||
if (dev->chipset == 0xc8)
|
||||
obj_class = NVC8_COMPUTE_CLASS;
|
||||
|
|
|
|||
|
|
@ -478,7 +478,7 @@ nvc0_screen_init_compute(struct nvc0_screen *screen)
|
|||
{
|
||||
screen->base.base.get_compute_param = nvc0_screen_get_compute_param;
|
||||
|
||||
switch (screen->base.device->chipset & 0xf0) {
|
||||
switch (screen->base.device->chipset & ~0xf) {
|
||||
case 0xc0:
|
||||
case 0xd0:
|
||||
/* Using COMPUTE has weird effects on 3D state, we need to
|
||||
|
|
@ -489,6 +489,7 @@ nvc0_screen_init_compute(struct nvc0_screen *screen)
|
|||
return 0;
|
||||
case 0xe0:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
return nve4_screen_compute_setup(screen, screen->base.pushbuf);
|
||||
default:
|
||||
return -1;
|
||||
|
|
@ -550,6 +551,7 @@ nvc0_screen_create(struct nouveau_device *dev)
|
|||
case 0xd0:
|
||||
case 0xe0:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
break;
|
||||
default:
|
||||
return NULL;
|
||||
|
|
@ -597,7 +599,8 @@ nvc0_screen_create(struct nouveau_device *dev)
|
|||
screen->base.fence.emit = nvc0_screen_fence_emit;
|
||||
screen->base.fence.update = nvc0_screen_fence_update;
|
||||
|
||||
switch (dev->chipset & 0xf0) {
|
||||
switch (dev->chipset & ~0xf) {
|
||||
case 0x100:
|
||||
case 0xf0:
|
||||
obj_class = NVF0_P2MF_CLASS;
|
||||
break;
|
||||
|
|
@ -644,7 +647,8 @@ nvc0_screen_create(struct nouveau_device *dev)
|
|||
PUSH_DATAh(push, screen->fence.bo->offset + 16);
|
||||
PUSH_DATA (push, screen->fence.bo->offset + 16);
|
||||
|
||||
switch (dev->chipset & 0xf0) {
|
||||
switch (dev->chipset & ~0xf) {
|
||||
case 0x100:
|
||||
case 0xf0:
|
||||
obj_class = NVF0_3D_CLASS;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -43,7 +43,8 @@ nve4_screen_compute_setup(struct nvc0_screen *screen,
|
|||
int ret;
|
||||
uint32_t obj_class;
|
||||
|
||||
switch (dev->chipset & 0xf0) {
|
||||
switch (dev->chipset & ~0xf) {
|
||||
case 0x100:
|
||||
case 0xf0:
|
||||
obj_class = NVF0_COMPUTE_CLASS; /* GK110 */
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ nouveau_drm_screen_create(int fd)
|
|||
if (ret)
|
||||
return NULL;
|
||||
|
||||
switch (dev->chipset & 0xf0) {
|
||||
switch (dev->chipset & ~0xf) {
|
||||
case 0x30:
|
||||
case 0x40:
|
||||
case 0x60:
|
||||
|
|
@ -36,6 +36,7 @@ nouveau_drm_screen_create(int fd)
|
|||
case 0xd0:
|
||||
case 0xe0:
|
||||
case 0xf0:
|
||||
case 0x100:
|
||||
init = nvc0_screen_create;
|
||||
break;
|
||||
default:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue