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

Commit 516e7797 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

Pull drm fixes from Dave Airlie:
 "gma500 build fix + some regression fixes for nouveau/radeon"

* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
  drm/radeon: Only warn if the intra-domain offset actually exceeds the limit.
  drm/radeon/kms: add htile support to the cs checker v3
  drm/radeon/kms/atom: force bpc to 8 for now
  drm/nouveau/i2c: fix thinko/regression on really old chipsets
  drm/nouveau: default to 8bpc for non-LVDS panels if EDID isn't useful
  drm/nouveau: fix thinko causing init to fail on cards without accel
  gma500: medfield: fix build without CONFIG_BACKLIGHT_CLASS_DEVICE
parents 735e941c d936622c
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -244,7 +244,6 @@ static int mdfld_dsi_connector_set_property(struct drm_connector *connector,
				uint64_t value)
{
	struct drm_encoder *encoder = connector->encoder;
	struct backlight_device *psb_bd;

	if (!strcmp(property->name, "scaling mode") && encoder) {
		struct psb_intel_crtc *psb_crtc =
@@ -301,11 +300,15 @@ static int mdfld_dsi_connector_set_property(struct drm_connector *connector,
									value))
			goto set_prop_error;
		else {
#ifdef CONFIG_BACKLIGHT_CLASS_DEVICE
			struct backlight_device *psb_bd;

			psb_bd = mdfld_get_backlight_device();
			if (psb_bd) {
				psb_bd->props.brightness = value;
				mdfld_set_brightness(psb_bd);
			}
#endif
		}
	}
set_prop_done:
+6 −3
Original line number Diff line number Diff line
@@ -654,10 +654,13 @@ nouveau_connector_detect_depth(struct drm_connector *connector)
	if (nv_connector->edid && connector->display_info.bpc)
		return;

	/* if not, we're out of options unless we're LVDS, default to 6bpc */
	connector->display_info.bpc = 6;
	if (nv_encoder->dcb->type != OUTPUT_LVDS)
	/* if not, we're out of options unless we're LVDS, default to 8bpc */
	if (nv_encoder->dcb->type != OUTPUT_LVDS) {
		connector->display_info.bpc = 8;
		return;
	}

	connector->display_info.bpc = 6;

	/* LVDS: panel straps */
	if (bios->fp_no_ddc) {
+3 −3
Original line number Diff line number Diff line
@@ -315,8 +315,8 @@ nouveau_i2c_init(struct drm_device *dev)
	struct drm_nouveau_private *dev_priv = dev->dev_private;
	struct nvbios *bios = &dev_priv->vbios;
	struct nouveau_i2c_chan *port;
	u8 version = 0x00, entries, recordlen;
	u8 *i2c, *entry, legacy[2][4] = {};
	u8 version, entries, recordlen;
	int ret, i;

	INIT_LIST_HEAD(&dev_priv->i2c_ports);
@@ -346,12 +346,12 @@ nouveau_i2c_init(struct drm_device *dev)
		if (i2c[7]) legacy[1][1] = i2c[7];
	}

	if (i2c && version >= 0x30) {
	if (version >= 0x30) {
		entry     = i2c[1] + i2c;
		entries   = i2c[2];
		recordlen = i2c[3];
	} else
	if (i2c) {
	if (version) {
		entry     = i2c;
		entries   = 16;
		recordlen = 4;
+1 −1
Original line number Diff line number Diff line
@@ -852,7 +852,7 @@ nouveau_card_init(struct drm_device *dev)
	if (ret)
		goto out_pm;

	if (!dev_priv->noaccel) {
	if (dev_priv->eng[NVOBJ_ENGINE_GR]) {
		ret = nouveau_card_channel_init(dev);
		if (ret)
			goto out_fence;
+5 −3
Original line number Diff line number Diff line
@@ -588,8 +588,8 @@ static u32 atombios_adjust_pll(struct drm_crtc *crtc,
		if (encoder->crtc == crtc) {
			radeon_encoder = to_radeon_encoder(encoder);
			connector = radeon_get_connector_for_encoder(encoder);
			if (connector && connector->display_info.bpc)
				bpc = connector->display_info.bpc;
			/* if (connector && connector->display_info.bpc)
				bpc = connector->display_info.bpc; */
			encoder_mode = atombios_get_encoder_mode(encoder);
			is_duallink = radeon_dig_monitor_is_duallink(encoder, mode->clock);
			if ((radeon_encoder->devices & (ATOM_DEVICE_LCD_SUPPORT | ATOM_DEVICE_DFP_SUPPORT)) ||
@@ -965,7 +965,9 @@ static void atombios_crtc_set_pll(struct drm_crtc *crtc, struct drm_display_mode
		struct radeon_connector_atom_dig *dig_connector =
			radeon_connector->con_priv;
		int dp_clock;
		bpc = connector->display_info.bpc;

		/* if (connector->display_info.bpc)
			bpc = connector->display_info.bpc; */

		switch (encoder_mode) {
		case ATOM_ENCODER_MODE_DP_MST:
Loading