[RFC PATCH 0/9] drm/i915/spi: discrete graphics internal spi
Jani Nikula
jani.nikula at linux.intel.com
Wed Feb 17 06:02:16 EST 2021
On Tue, 16 Feb 2021, Tomas Winkler <tomas.winkler at intel.com> wrote:
> Intel discrete graphic devices have internal spi storage, that holds
> firmware and oprom images. The spi device is exposed to the user space
> via mtd framework to be accessed during manufacturing.
> The device is hardware locked after manufacturing and only read access
> is provided.
>
> The i915 plays role of a multi function device (mfd) and spi device
> is exposed as its child device. i915_spi platform driver binds to
> this device.
>
> Because the graphic card may undergo reset at any time and basically hot
> unplug all its child devices, this series also provides a fix to the mtd
> framework to make the reset graceful.
>
> Tomas Winkler (9):
> drm/i915/spi: add spi device for discrete graphics
> drm/i915/spi: intel_spi_region map
> drm/i915/spi: add driver for on-die spi device
> drm/i915/spi: implement region enumeration
> drm/i915/spi: implement spi access functions
> drm/i915/spi: spi register with mtd
> drm/i915/spi: mtd: implement access handlers
> drm/i915/spi: serialize spi access
> mtd: use refcount to prevent corruption
>
> drivers/gpu/drm/i915/Kconfig | 3 +
> drivers/gpu/drm/i915/Makefile | 6 +
> drivers/gpu/drm/i915/i915_drv.c | 9 +
> drivers/gpu/drm/i915/i915_drv.h | 4 +
> drivers/gpu/drm/i915/i915_reg.h | 1 +
> drivers/gpu/drm/i915/spi/intel_spi.c | 62 +++
> drivers/gpu/drm/i915/spi/intel_spi.h | 24 +
I'm open to discussion, but after glancing through the series I've got a
gut feeling spi/ subdir should be purely about the separate module, and
the above two files should be in i915/ directory instead.
As it is, I think it's a bit confusing that spi/ is both about the spi
kernel module and a singly .c file that's really part of
i915.ko. Perhaps that messes up the conventional descending to subdirs
in the kernel build too?
BR,
Jani.
> drivers/gpu/drm/i915/spi/intel_spi_drv.c | 675 +++++++++++++++++++++++
> drivers/mtd/mtdcore.c | 63 ++-
> drivers/mtd/mtdcore.h | 1 +
> drivers/mtd/mtdpart.c | 13 +-
> include/linux/mtd/mtd.h | 2 +-
> 12 files changed, 831 insertions(+), 32 deletions(-)
> create mode 100644 drivers/gpu/drm/i915/spi/intel_spi.c
> create mode 100644 drivers/gpu/drm/i915/spi/intel_spi.h
> create mode 100644 drivers/gpu/drm/i915/spi/intel_spi_drv.c
--
Jani Nikula, Intel Open Source Graphics Center
More information about the linux-mtd
mailing list