OSDN Git Service

drm/i915/bios: throw away struct old_child_dev_config
authorJani Nikula <jani.nikula@intel.com>
Thu, 24 Aug 2017 18:54:04 +0000 (21:54 +0300)
committerJani Nikula <jani.nikula@intel.com>
Fri, 25 Aug 2017 13:18:28 +0000 (16:18 +0300)
The old_child_dev_config struct is no longer needed except for its size;
replace with a macro. No functional change.

Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/4bfa6e45fecd33af797ec218635504ec8a09f788.1503600621.git.jani.nikula@intel.com
drivers/gpu/drm/i915/intel_bios.c
drivers/gpu/drm/i915/intel_vbt_defs.h

index a0c1a7d..dd732a5 100644 (file)
@@ -479,7 +479,7 @@ parse_sdvo_device_mapping(struct drm_i915_private *dev_priv,
         * device size matches that of the *legacy* child device config
         * struct. Thus, SDVO mapping will be skipped for newer VBT.
         */
-       if (p_defs->child_dev_size != sizeof(struct old_child_dev_config)) {
+       if (p_defs->child_dev_size != LEGACY_CHILD_DEVICE_CONFIG_SIZE) {
                DRM_DEBUG_KMS("Unsupported child device size for SDVO mapping.\n");
                return;
        }
@@ -1267,8 +1267,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
        } else if (bdb->version < 111) {
                expected_size = 27;
        } else if (bdb->version < 195) {
-               BUILD_BUG_ON(sizeof(struct old_child_dev_config) != 33);
-               expected_size = sizeof(struct old_child_dev_config);
+               expected_size = LEGACY_CHILD_DEVICE_CONFIG_SIZE;
        } else if (bdb->version == 195) {
                expected_size = 37;
        } else if (bdb->version <= 197) {
@@ -1286,7 +1285,7 @@ parse_device_mapping(struct drm_i915_private *dev_priv,
                          p_defs->child_dev_size, expected_size, bdb->version);
 
        /* The legacy sized child device config is the minimum we need. */
-       if (p_defs->child_dev_size < sizeof(struct old_child_dev_config)) {
+       if (p_defs->child_dev_size < LEGACY_CHILD_DEVICE_CONFIG_SIZE) {
                DRM_DEBUG_KMS("Child device config size %u is too small.\n",
                              p_defs->child_dev_size);
                return;
index c8c15e5..fc67b2e 100644 (file)
@@ -230,32 +230,7 @@ struct bdb_general_features {
 #define DEVICE_PORT_DVOB       0x01
 #define DEVICE_PORT_DVOC       0x02
 
-/*
- * We used to keep this struct but without any version control. We should avoid
- * using it in the future, but it should be safe to keep using it in the old
- * code. Do not change; we rely on its size.
- */
-struct old_child_dev_config {
-       u16 handle;
-       u16 device_type;
-       u8  device_id[10]; /* ascii string */
-       u16 addin_offset;
-       u8  dvo_port; /* See Device_PORT_* above */
-       u8  i2c_pin;
-       u8  slave_addr;
-       u8  ddc_pin;
-       u16 edid_ptr;
-       u8  dvo_cfg; /* See DEVICE_CFG_* above */
-       u8  dvo2_port;
-       u8  i2c2_pin;
-       u8  slave2_addr;
-       u8  ddc2_pin;
-       u8  capabilities;
-       u8  dvo_wiring;/* See DEVICE_WIRE_* above */
-       u8  dvo2_wiring;
-       u16 extended_type;
-       u8  dvo_function;
-} __packed;
+#define LEGACY_CHILD_DEVICE_CONFIG_SIZE                33
 
 /*
  * The child device config, aka the display device data structure, provides a