From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 14F9CC369D5 for ; Thu, 24 Apr 2025 13:55:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=13O+mK4vnEfkGb9no9XJD4DZj7fi9rWWEqL+ekJ/9fU=; b=Y9KOprGEWWGJQx pGMEb0+WmiohayniUXKjYcsKNiTtqm532O7AnxvMEgAqhFveMMUZ0W98w7umEa0LwSpUMBP65kEdQ 5q8MWHRR3yGtjTgnruTVQJTiCH1pN8XkSS4afi3BUisZeNrvhdxs03OdL3KqJRbPnkOdAFaRLyq2C NoituI6ztbtpcCxlq5WXaZnb1b+byiGJggJSoTHetJSTIL3bbNxwPZZ2GwYsXtZ8TGWkm58bBsopw 1KOViaUw7pxeNPerPzunYRR4dmbUxPFdmlkPlI7qYoErUBBlRgTWUGziussE/8t54VMQ79Blc+SW8 hURU8Mcy553d4b0Lbiyg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1u7x2c-0000000EHYe-3oxY; Thu, 24 Apr 2025 13:55:02 +0000 Received: from mgamail.intel.com ([192.198.163.18]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1u7wlm-0000000ECPE-2VXQ for linux-mtd@lists.infradead.org; Thu, 24 Apr 2025 13:37:39 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1745501859; x=1777037859; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=2++/lXygc+Gi+mqHHiClRtQMQOuMp3w9mVmGF9jD1P0=; b=lGGwAldof1QKV7vAhHci5gsP5nJEJ2ENElhfjPL/dqQ7jzgFnQbVkdjM 1f8OpXZCaNgljkB3FQX9KqUmlF6MvOypLZXj47X6UwkwcQ+MfAVdbdtS3 3e4LBVugeJxtyiWQ7A6d9tnzaLAmd9eGfL5aDH2R7ue1lDZSSmhILGu4X usIIwr4L2uEyK6GqWGg52bJHUqkcKchKu86dGiCpj3WjbFgxdKGGOfijY 2YunsL5pkk6hMgbMGDxUp4EY3Ltt7m654XAmZpeVc/CaIEfybCKEFs/OZ MAYBF4BfXfTmd5zq7tgBYRjEqdhwFOwtcSYpQggl2kdrLTB3rBNjna0Tz w==; X-CSE-ConnectionGUID: GrPcJnogRT+9Are0hi9n6A== X-CSE-MsgGUID: YNOAw4aQQpKfsW+SxJGJ6w== X-IronPort-AV: E=McAfee;i="6700,10204,11413"; a="46368009" X-IronPort-AV: E=Sophos;i="6.15,236,1739865600"; d="scan'208";a="46368009" Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Apr 2025 06:37:34 -0700 X-CSE-ConnectionGUID: H6ZJ50y7ReKXfWgZX5QHKA== X-CSE-MsgGUID: 72MlHOZEQ5+R0iN9yeQSpg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.15,236,1739865600"; d="scan'208";a="136701344" Received: from sannilnx-dsk.jer.intel.com ([10.12.231.107]) by fmviesa003-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Apr 2025 06:37:29 -0700 From: Alexander Usyskin To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Lucas De Marchi , =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , Rodrigo Vivi , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Jani Nikula , Joonas Lahtinen , Tvrtko Ursulin , Karthik Poosa Cc: Reuven Abliyev , Oren Weil , linux-mtd@lists.infradead.org, intel-xe@lists.freedesktop.org, dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Alexander Usyskin Subject: [PATCH v9 00/12] mtd: add driver for Intel discrete graphics Date: Thu, 24 Apr 2025 16:25:24 +0300 Message-ID: <20250424132536.3043825-1-alexander.usyskin@intel.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250424_063738_641583_0375F424 X-CRM114-Status: GOOD ( 14.38 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org Add driver for access to Intel discrete graphics card internal NVM device. Expose device on auxiliary bus by i915 and Xe drivers and provide mtd driver to register this device with MTD framework. This is a rewrite of "drm/i915/spi: spi access for discrete graphics" and "spi: add driver for Intel discrete graphics" series with connection to the Xe driver and splitting the spi driver part to separate module in mtd subsystem. This series intended to be pushed through drm-xe-next. V2: Replace dev_* prints with drm_* prints in drm (xe and i915) patches. Enable NVM device on Battlemage HW (xe driver patch) Fix overwrite register address (xe driver patch) Add Rodrigo's r-b V3: Use devm_pm_runtime_enable to simplify flow. Drop print in i915 unload that was accidentally set as error. Drop HAS_GSC_NVM macro in line with latest Xe changes. Add more Rodrigo's r-b and Miquel's ack. V4: Add patch that always creates mtd master device and adjust mtd-intel-dg power management to use this device. V5: Fix master device creation to accomodate for devices without partitions (create partitoned master in this case) Rebase over latest drm-xe-next Add ack's V6: Fix master device release (use rigth idr in release) Rebase over latest drm-xe-next Grammar and style fixes V7: Add patch with non-posted erase support (fix hang on BMG) Rebase over latest drm-xe-next V8: Create separate partition device under master device, if requested and configure parent of usual partitions to this partition. Rebase over drm-tip. V9: Fix checkpatch warning on non-posted erase patch. Add Rodrigo's review and ack. Alexander Usyskin (11): mtd: core: always create master device mtd: add driver for intel graphics non-volatile memory device mtd: intel-dg: implement region enumeration mtd: intel-dg: implement access functions mtd: intel-dg: register with mtd mtd: intel-dg: align 64bit read and write mtd: intel-dg: wake card on operations drm/i915/nvm: add nvm device for discrete graphics drm/i915/nvm: add support for access mode drm/xe/nvm: add on-die non-volatile memory device drm/xe/nvm: add support for access mode Reuven Abliyev (1): drm/xe/nvm: add support for non-posted erase MAINTAINERS | 7 + drivers/gpu/drm/i915/Makefile | 4 + drivers/gpu/drm/i915/i915_driver.c | 6 + drivers/gpu/drm/i915/i915_drv.h | 3 + drivers/gpu/drm/i915/i915_reg.h | 1 + drivers/gpu/drm/i915/intel_nvm.c | 115 ++++ drivers/gpu/drm/i915/intel_nvm.h | 15 + drivers/gpu/drm/xe/Makefile | 1 + drivers/gpu/drm/xe/regs/xe_gsc_regs.h | 4 + drivers/gpu/drm/xe/xe_device.c | 5 + drivers/gpu/drm/xe/xe_device_types.h | 6 + drivers/gpu/drm/xe/xe_heci_gsc.c | 5 +- drivers/gpu/drm/xe/xe_nvm.c | 161 +++++ drivers/gpu/drm/xe/xe_nvm.h | 15 + drivers/gpu/drm/xe/xe_pci.c | 6 + drivers/mtd/devices/Kconfig | 11 + drivers/mtd/devices/Makefile | 1 + drivers/mtd/devices/mtd_intel_dg.c | 884 ++++++++++++++++++++++++++ drivers/mtd/mtdchar.c | 2 +- drivers/mtd/mtdcore.c | 152 +++-- drivers/mtd/mtdcore.h | 2 +- drivers/mtd/mtdpart.c | 16 +- include/linux/intel_dg_nvm_aux.h | 29 + include/linux/mtd/partitions.h | 2 +- 24 files changed, 1398 insertions(+), 55 deletions(-) create mode 100644 drivers/gpu/drm/i915/intel_nvm.c create mode 100644 drivers/gpu/drm/i915/intel_nvm.h create mode 100644 drivers/gpu/drm/xe/xe_nvm.c create mode 100644 drivers/gpu/drm/xe/xe_nvm.h create mode 100644 drivers/mtd/devices/mtd_intel_dg.c create mode 100644 include/linux/intel_dg_nvm_aux.h -- 2.43.0 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/