sys/dev/drm/i915/i915_drv.c
/**
 * i915_driver_init_mmio - setup device MMIO
 * @dev_priv: device private
 *
 * Setup minimal device state necessary for MMIO accesses later in the
 * initialization sequence. The setup here should avoid any other device-wide
 * side effects or exposing the driver via kernel internal or user space
 * interfaces.
 */
setup device MMIO
@dev_priv: device private

Setup minimal device state necessary for MMIO accesses later in the
initialization sequence. The setup here should avoid any other device-wide
side effects or exposing the driver via kernel internal or user space
interfaces.
setup device MMIO @dev_priv : device private Setup minimal device state necessary for MMIO accesses later in the initialization sequence . The setup here should avoid any other device - wide side effects or exposing the driver via kernel internal or user space interfaces .
static int i915_driver_init_mmio(struct drm_i915_private *dev_priv)
{
	struct drm_device *dev = dev_priv->dev;
	int ret;
	if (i915_inject_load_failure())
		return -ENODEV;
	if (i915_get_bridge_dev(dev))
		return -EIO;
	ret = i915_mmio_setup(dev);
	if (ret < 0)
		goto put_bridge;
	intel_uncore_init(dev_priv);
	return 0;
put_bridge:
	pci_dev_put(dev_priv->bridge_dev);
	return ret;
}
static int i915_driver_init_mmio ( struct drm_i915_private * dev_priv ) { struct drm_device * dev = dev_priv -> dev ; int ret ; if ( i915_inject_load_failure ( ) ) return - ENODEV ; if ( i915_get_bridge_dev ( dev ) ) return - EIO ; ret = i915_mmio_setup ( dev ) ; if ( ret < 0 ) goto put_bridge ; intel_uncore_init ( dev_priv ) ; return 0 ; put_bridge : pci_dev_put ( dev_priv -> bridge_dev ) ; return ret ; }
i915_driver_init_mmio - setup device MMIO
 @dev_priv: device private
i915_driver_init_mmio - setup device MMIO @dev_priv : device private