Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c210f37 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nouveau/core: remove NV_D0 family



The one place where it mattered has been replaced with a class check,
which is more appropriate anyway.

Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent d01c3092
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -116,8 +116,7 @@ nouveau_devobj_info(struct nouveau_object *object, void *data, u32 size)
	case NV_30: args->v0.family = NV_DEVICE_INFO_V0_RANKINE; break;
	case NV_40: args->v0.family = NV_DEVICE_INFO_V0_CURIE; break;
	case NV_50: args->v0.family = NV_DEVICE_INFO_V0_TESLA; break;
	case NV_C0:
	case NV_D0: args->v0.family = NV_DEVICE_INFO_V0_FERMI; break;
	case NV_C0: args->v0.family = NV_DEVICE_INFO_V0_FERMI; break;
	case NV_E0: args->v0.family = NV_DEVICE_INFO_V0_KEPLER; break;
	case GM100: args->v0.family = NV_DEVICE_INFO_V0_MAXWELL; break;
	default:
@@ -305,8 +304,8 @@ nouveau_devobj_ctor(struct nouveau_object *parent,
			case 0x080:
			case 0x090:
			case 0x0a0: device->card_type = NV_50; break;
			case 0x0c0: device->card_type = NV_C0; break;
			case 0x0d0: device->card_type = NV_D0; break;
			case 0x0c0:
			case 0x0d0: device->card_type = NV_C0; break;
			case 0x0e0:
			case 0x0f0:
			case 0x100: device->card_type = NV_E0; break;
@@ -331,8 +330,7 @@ nouveau_devobj_ctor(struct nouveau_object *parent,
		case NV_30: ret = nv30_identify(device); break;
		case NV_40: ret = nv40_identify(device); break;
		case NV_50: ret = nv50_identify(device); break;
		case NV_C0:
		case NV_D0: ret = nvc0_identify(device); break;
		case NV_C0: ret = nvc0_identify(device); break;
		case NV_E0: ret = nve0_identify(device); break;
		case GM100: ret = gm100_identify(device); break;
		default:
+0 −1
Original line number Diff line number Diff line
@@ -87,7 +87,6 @@ struct nouveau_device {
		NV_40    = 0x40,
		NV_50    = 0x50,
		NV_C0    = 0xc0,
		NV_D0    = 0xd0,
		NV_E0    = 0xe0,
		GM100    = 0x110,
	} card_type;
+0 −1
Original line number Diff line number Diff line
@@ -95,7 +95,6 @@ nouveau_abi16_swclass(struct nouveau_drm *drm)
	case NV_50:
		return 0x506e;
	case NV_C0:
	case NV_D0:
	case NV_E0:
	case GM100:
		return 0x906e;
+0 −1
Original line number Diff line number Diff line
@@ -231,7 +231,6 @@ nouveau_backlight_init(struct drm_device *dev)
			return nv40_backlight_init(connector);
		case NV_50:
		case NV_C0:
		case NV_D0:
		case NV_E0:
			return nv50_backlight_init(connector);
		default:
+33 −24
Original line number Diff line number Diff line
@@ -393,26 +393,16 @@ nouveau_display_fini(struct drm_device *dev)
	disp->fini(dev);
}

int
nouveau_display_create(struct drm_device *dev)
static void
nouveau_display_create_properties(struct drm_device *dev)
{
	struct nouveau_drm *drm = nouveau_drm(dev);
	struct nouveau_device *device = nouveau_dev(dev);
	struct nouveau_display *disp;
	int ret, gen;

	disp = drm->display = kzalloc(sizeof(*disp), GFP_KERNEL);
	if (!disp)
		return -ENOMEM;

	drm_mode_config_init(dev);
	drm_mode_create_scaling_mode_property(dev);
	drm_mode_create_dvi_i_properties(dev);
	struct nouveau_display *disp = nouveau_display(dev);
	int gen;

	if (nv_device(drm->device)->card_type < NV_50)
	if (nv_mclass(disp->core) < NV50_DISP_CLASS)
		gen = 0;
	else
	if (nv_device(drm->device)->card_type < NV_D0)
	if (nv_mclass(disp->core) < NVD0_DISP_CLASS)
		gen = 1;
	else
		gen = 2;
@@ -427,7 +417,9 @@ nouveau_display_create(struct drm_device *dev)
	disp->underscan_vborder_property =
		drm_property_create_range(dev, 0, "underscan vborder", 0, 128);

	if (gen >= 1) {
	if (gen < 1)
		return;

	/* -90..+90 */
	disp->vibrant_hue_property =
		drm_property_create_range(dev, 0, "vibrant hue", 0, 180);
@@ -437,6 +429,22 @@ nouveau_display_create(struct drm_device *dev)
		drm_property_create_range(dev, 0, "color vibrance", 0, 200);
}

int
nouveau_display_create(struct drm_device *dev)
{
	struct nouveau_drm *drm = nouveau_drm(dev);
	struct nouveau_device *device = nouveau_dev(dev);
	struct nouveau_display *disp;
	int ret;

	disp = drm->display = kzalloc(sizeof(*disp), GFP_KERNEL);
	if (!disp)
		return -ENOMEM;

	drm_mode_config_init(dev);
	drm_mode_create_scaling_mode_property(dev);
	drm_mode_create_dvi_i_properties(dev);

	dev->mode_config.funcs = &nouveau_mode_config_funcs;
	dev->mode_config.fb_base = nv_device_resource_start(device, 1);

@@ -487,6 +495,7 @@ nouveau_display_create(struct drm_device *dev)
		}

		if (ret == 0) {
			nouveau_display_create_properties(dev);
			if (nv_mclass(disp->core) < NV50_DISP_CLASS)
				ret = nv04_display_create(dev);
			else
Loading