@@ -14,11 +14,20 @@ static const struct resource spi_resources[] = {
DEFINE_RES_MEM_NAMED(GEN12_GUNIT_SPI_BASE, 0x80, "i915-spi-mmio"),
};
+static const struct i915_spi_region regions[I915_SPI_REGIONS] = {
+ [0] = { .name = "DESCRIPTOR", },
+ [2] = { .name = "GSC", },
+ [11] = { .name = "OptionROM", },
+ [12] = { .name = "DAM", },
+};
+
static const struct mfd_cell intel_spi_cell = {
.id = 2,
.name = "i915-spi",
.num_resources = ARRAY_SIZE(spi_resources),
.resources = spi_resources,
+ .platform_data = (void *)regions,
+ .pdata_size = sizeof(regions),
};
void intel_spi_init(struct intel_spi *spi, struct drm_i915_private *dev_priv)
@@ -8,6 +8,11 @@
struct drm_i915_private;
+#define I915_SPI_REGIONS 13
+struct i915_spi_region {
+ const char *name;
+};
+
struct intel_spi {
struct drm_i915_private *i915;
};
Add the dGFX spi region map and convey it via mfd cell platform data to the spi child device. Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Cc: Lucas De Marchi <lucas.demarchi@intel.com> Signed-off-by: Tomas Winkler <tomas.winkler@intel.com> --- V2: Rebase drivers/gpu/drm/i915/spi/intel_spi.c | 9 +++++++++ drivers/gpu/drm/i915/spi/intel_spi.h | 5 +++++ 2 files changed, 14 insertions(+)