Re: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info debugfs

2023-06-06 Thread kernel test robot
Hi Daniele,

kernel test robot noticed the following build errors:

[auto build test ERROR on drm-tip/drm-tip]

url:
https://github.com/intel-lab-lkp/linux/commits/Daniele-Ceraolo-Spurio/drm-i915-gsc-fixes-and-updates-for-GSC-memory-allocation/20230606-102510
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
patch link:
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospurio%40intel.com
patch subject: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info 
debugfs
config: i386-defconfig 
(https://download.01.org/0day-ci/archive/20230606/202306061637.gectqnqd-...@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build):
git remote add drm-tip git://anongit.freedesktop.org/drm/drm-tip
git fetch drm-tip drm-tip
git checkout drm-tip/drm-tip
b4 shazam 
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospu...@intel.com
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=i386 olddefconfig
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot 
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202306061637.gectqnqd-...@intel.com/

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:6: error: no previous 
>> prototype for 'intel_gsc_uc_debugfs_register' [-Werror=missing-prototypes]
  28 | void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, 
struct dentry *root)
 |  ^
   cc1: all warnings being treated as errors


vim +/intel_gsc_uc_debugfs_register +28 
drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c

27  
  > 28  void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


Re: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info debugfs

2023-06-06 Thread kernel test robot
Hi Daniele,

kernel test robot noticed the following build errors:

[auto build test ERROR on drm-tip/drm-tip]

url:
https://github.com/intel-lab-lkp/linux/commits/Daniele-Ceraolo-Spurio/drm-i915-gsc-fixes-and-updates-for-GSC-memory-allocation/20230606-102510
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
patch link:
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospurio%40intel.com
patch subject: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info 
debugfs
config: x86_64-randconfig-a014-20230606 
(https://download.01.org/0day-ci/archive/20230606/202306061545.focggcsf-...@intel.com/config)
compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project.git 
8dfdcc7b7bf66834a761bd8de445840ef68e4d1a)
reproduce (this is a W=1 build):
mkdir -p ~/bin
wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add drm-tip git://anongit.freedesktop.org/drm/drm-tip
git fetch drm-tip drm-tip
git checkout drm-tip/drm-tip
b4 shazam 
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospu...@intel.com
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=x86_64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot 
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202306061545.focggcsf-...@intel.com/

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:6: error: no previous 
>> prototype for function 'intel_gsc_uc_debugfs_register' 
>> [-Werror,-Wmissing-prototypes]
   void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)
^
   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:1: note: declare 
'static' if the function is not intended to be used outside of this translation 
unit
   void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)
   ^
   static 
   1 error generated.


vim +/intel_gsc_uc_debugfs_register +28 
drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c

27  
  > 28  void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


Re: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info debugfs

2023-06-06 Thread kernel test robot
Hi Daniele,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm-tip/drm-tip]

url:
https://github.com/intel-lab-lkp/linux/commits/Daniele-Ceraolo-Spurio/drm-i915-gsc-fixes-and-updates-for-GSC-memory-allocation/20230606-102510
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
patch link:
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospurio%40intel.com
patch subject: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info 
debugfs
config: i386-randconfig-i015-20230606 
(https://download.01.org/0day-ci/archive/20230606/202306061505.rzhdexyj-...@intel.com/config)
compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project.git 
8dfdcc7b7bf66834a761bd8de445840ef68e4d1a)
reproduce (this is a W=1 build):
mkdir -p ~/bin
wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
chmod +x ~/bin/make.cross
git remote add drm-tip git://anongit.freedesktop.org/drm/drm-tip
git fetch drm-tip drm-tip
git checkout drm-tip/drm-tip
b4 shazam 
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospu...@intel.com
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=i386 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang ~/bin/make.cross W=1 
O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot 
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202306061505.rzhdexyj-...@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:6: warning: no previous 
>> prototype for function 'intel_gsc_uc_debugfs_register' [-Wmissing-prototypes]
   void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)
^
   drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:1: note: declare 
'static' if the function is not intended to be used outside of this translation 
unit
   void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)
   ^
   static 
   1 warning generated.


vim +/intel_gsc_uc_debugfs_register +28 
drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c

27  
  > 28  void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


Re: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info debugfs

2023-06-06 Thread kernel test robot
Hi Daniele,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm-tip/drm-tip]

url:
https://github.com/intel-lab-lkp/linux/commits/Daniele-Ceraolo-Spurio/drm-i915-gsc-fixes-and-updates-for-GSC-memory-allocation/20230606-102510
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
patch link:
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospurio%40intel.com
patch subject: [Intel-gfx] [PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info 
debugfs
config: x86_64-rhel-8.3 
(https://download.01.org/0day-ci/archive/20230606/202306061441.hlzhqi07-...@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build):
git remote add drm-tip git://anongit.freedesktop.org/drm/drm-tip
git fetch drm-tip drm-tip
git checkout drm-tip/drm-tip
b4 shazam 
https://lore.kernel.org/r/20230606022402.2048235-5-daniele.ceraolospu...@intel.com
# save the config file
mkdir build_dir && cp config build_dir/.config
make W=1 O=build_dir ARCH=x86_64 olddefconfig
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/drm/i915/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot 
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202306061441.hlzhqi07-...@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c:28:6: warning: no previous 
>> prototype for 'intel_gsc_uc_debugfs_register' [-Wmissing-prototypes]
  28 | void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, 
struct dentry *root)
 |  ^


vim +/intel_gsc_uc_debugfs_register +28 
drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c

27  
  > 28  void intel_gsc_uc_debugfs_register(struct intel_gsc_uc *gsc_uc, struct 
dentry *root)

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


[PATCH v2 4/5] drm/i915/mtl/gsc: Add a gsc_info debugfs

2023-06-05 Thread Daniele Ceraolo Spurio
Add a new debugfs to dump information about the GSC. This includes:

- the FW path and SW tracking status;
- the release, security and compatibility versions;
- the HECI1 status registers.

Note that those are the same registers that the mei driver dumps in
their own status sysfs on DG2 (where mei owns the GSC).

To make it simpler to loop through the status register, the code has
been update to use a PICK macro and the existing code using the regs had
been adapted to match.

v2: fix includes and copyright dates (Alan)

Signed-off-by: Daniele Ceraolo Spurio 
Cc: Alan Previn 
Cc: John Harrison 
---
 drivers/gpu/drm/i915/Makefile |  3 +-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c | 29 +--
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c | 48 ++-
 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.h |  2 +
 .../gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c | 38 +++
 .../gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h | 14 ++
 drivers/gpu/drm/i915/gt/uc/intel_huc.c|  6 +--
 drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.c |  2 +
 drivers/gpu/drm/i915/i915_reg.h   | 26 +-
 9 files changed, 143 insertions(+), 25 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.c
 create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.h

diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
index 1c9ed4c52760..b6c54fb0b4cc 100644
--- a/drivers/gpu/drm/i915/Makefile
+++ b/drivers/gpu/drm/i915/Makefile
@@ -192,7 +192,8 @@ i915-y += \
  gt/uc/intel_gsc_fw.o \
  gt/uc/intel_gsc_proxy.o \
  gt/uc/intel_gsc_uc.o \
- gt/uc/intel_gsc_uc_heci_cmd_submit.o\
+ gt/uc/intel_gsc_uc_debugfs.o \
+ gt/uc/intel_gsc_uc_heci_cmd_submit.o \
  gt/uc/intel_guc.o \
  gt/uc/intel_guc_ads.o \
  gt/uc/intel_guc_capture.o \
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
index 7d48d59011c8..b069459e2596 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.c
@@ -12,36 +12,31 @@
 #include "intel_gsc_binary_headers.h"
 #include "intel_gsc_fw.h"
 #include "intel_gsc_uc_heci_cmd_submit.h"
-
-#define GSC_FW_STATUS_REG  _MMIO(0x116C40)
-#define GSC_FW_CURRENT_STATE   REG_GENMASK(3, 0)
-#define   GSC_FW_CURRENT_STATE_RESET   0
-#define   GSC_FW_PROXY_STATE_NORMAL5
-#define GSC_FW_INIT_COMPLETE_BIT   REG_BIT(9)
+#include "i915_reg.h"
 
 static bool gsc_is_in_reset(struct intel_uncore *uncore)
 {
-   u32 fw_status = intel_uncore_read(uncore, GSC_FW_STATUS_REG);
+   u32 fw_status = intel_uncore_read(uncore, 
HECI_FWSTS(MTL_GSC_HECI1_BASE, 1));
 
-   return REG_FIELD_GET(GSC_FW_CURRENT_STATE, fw_status) ==
-  GSC_FW_CURRENT_STATE_RESET;
+   return REG_FIELD_GET(HECI1_FWSTS1_CURRENT_STATE, fw_status) ==
+   HECI1_FWSTS1_CURRENT_STATE_RESET;
 }
 
 bool intel_gsc_uc_fw_proxy_init_done(struct intel_gsc_uc *gsc)
 {
struct intel_uncore *uncore = gsc_uc_to_gt(gsc)->uncore;
-   u32 fw_status = intel_uncore_read(uncore, GSC_FW_STATUS_REG);
+   u32 fw_status = intel_uncore_read(uncore, 
HECI_FWSTS(MTL_GSC_HECI1_BASE, 1));
 
-   return REG_FIELD_GET(GSC_FW_CURRENT_STATE, fw_status) ==
-  GSC_FW_PROXY_STATE_NORMAL;
+   return REG_FIELD_GET(HECI1_FWSTS1_CURRENT_STATE, fw_status) ==
+  HECI1_FWSTS1_PROXY_STATE_NORMAL;
 }
 
 bool intel_gsc_uc_fw_init_done(struct intel_gsc_uc *gsc)
 {
struct intel_uncore *uncore = gsc_uc_to_gt(gsc)->uncore;
-   u32 fw_status = intel_uncore_read(uncore, GSC_FW_STATUS_REG);
+   u32 fw_status = intel_uncore_read(uncore, 
HECI_FWSTS(MTL_GSC_HECI1_BASE, 1));
 
-   return fw_status & GSC_FW_INIT_COMPLETE_BIT;
+   return fw_status & HECI1_FWSTS1_INIT_COMPLETE;
 }
 
 static inline u32 cpd_entry_offset(const struct intel_gsc_cpd_entry *entry)
@@ -293,9 +288,9 @@ static int gsc_fw_load_prepare(struct intel_gsc_uc *gsc)
 static int gsc_fw_wait(struct intel_gt *gt)
 {
return intel_wait_for_register(gt->uncore,
-  GSC_FW_STATUS_REG,
-  GSC_FW_INIT_COMPLETE_BIT,
-  GSC_FW_INIT_COMPLETE_BIT,
+  HECI_FWSTS(MTL_GSC_HECI1_BASE, 1),
+  HECI1_FWSTS1_INIT_COMPLETE,
+  HECI1_FWSTS1_INIT_COMPLETE,
   500);
 }
 
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c 
b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
index 4fe639a80564..6826aa5d6985 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.c
@@ -7,10 +7,11 @@
 
 #include "gt/intel_gt.h"
 #include "gt/intel_gt_print.h"
-#include