Unverified Commit f5c5d295 authored by Riana Tauro's avatar Riana Tauro Committed by Rodrigo Vivi
Browse files

drm/xe/xe_i2c: Add support for i2c in survivability mode



Initialize i2c in survivability mode to allow firmware
update of Add-In Management Controller (AMC) in
survivability mode.

Signed-off-by: default avatarRiana Tauro <riana.tauro@intel.com>
Signed-off-by: default avatarHeikki Krogerus <heikki.krogerus@linux.intel.com>
Reviewed-by: default avatarRaag Jadav <raag.jadav@intel.com>
Reviewed-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Link: https://lore.kernel.org/r/20250701122252.2590230-6-heikki.krogerus@linux.intel.com


Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
parent 0ea07b69
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
#include "xe_device.h"
#include "xe_gt.h"
#include "xe_heci_gsc.h"
#include "xe_i2c.h"
#include "xe_mmio.h"
#include "xe_pcode_api.h"
#include "xe_vsec.h"
@@ -173,20 +174,22 @@ static int enable_survivability_mode(struct pci_dev *pdev)
	survivability->mode = true;

	ret = xe_heci_gsc_init(xe);
	if (ret) {
		/*
		 * But if it fails, device can't enter survivability
		 * so move it back for correct error handling
		 */
		survivability->mode = false;
		return ret;
	}
	if (ret)
		goto err;

	xe_vsec_init(xe);

	ret = xe_i2c_probe(xe);
	if (ret)
		goto err;

	dev_err(dev, "In Survivability Mode\n");

	return 0;

err:
	survivability->mode = false;
	return ret;
}

/**