drm/i915/gmbus: reduce gmbus pin lookups in gmbus setup
authorJani Nikula <jani.nikula@intel.com>
Thu, 3 Mar 2022 18:19:28 +0000 (20:19 +0200)
committerJani Nikula <jani.nikula@intel.com>
Fri, 4 Mar 2022 09:15:13 +0000 (11:15 +0200)
Avoid separate pin lookups for validity and name.

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220303181931.1661767-2-jani.nikula@intel.com
drivers/gpu/drm/i915/display/intel_gmbus.c

index 9cbf7f9a1e2e3c27455673bd1b8c4176ac3b4137..9dc66447d30826b2009d9a8cda0cd78456a855f5 100644 (file)
@@ -876,7 +876,10 @@ int intel_gmbus_setup(struct drm_i915_private *dev_priv)
        init_waitqueue_head(&dev_priv->gmbus_wait_queue);
 
        for (pin = 0; pin < ARRAY_SIZE(dev_priv->gmbus); pin++) {
-               if (!intel_gmbus_is_valid_pin(dev_priv, pin))
+               const struct gmbus_pin *gmbus_pin;
+
+               gmbus_pin = get_gmbus_pin(dev_priv, pin);
+               if (!gmbus_pin)
                        continue;
 
                bus = &dev_priv->gmbus[pin];
@@ -885,8 +888,7 @@ int intel_gmbus_setup(struct drm_i915_private *dev_priv)
                bus->adapter.class = I2C_CLASS_DDC;
                snprintf(bus->adapter.name,
                         sizeof(bus->adapter.name),
-                        "i915 gmbus %s",
-                        get_gmbus_pin(dev_priv, pin)->name);
+                        "i915 gmbus %s", gmbus_pin->name);
 
                bus->adapter.dev.parent = &pdev->dev;
                bus->dev_priv = dev_priv;