drm/i915: Fix multiple off-by-one errors in intel_i2c

* the i2c pin numbers are 1 based as per intel spec but
  we used the unit number as pin number, which is 0 based
* the gmbus array is 0 based, but the port number is 1 based
  accesses into the port array are therefore off-by-one and this
  only worked by chance before.
drm/i915: Use intel_gmbus_get_adapter instead of dev_priv->gmbus array
drm/i915: grab the config log on hardware init