[chenxing:mstar_v6_5_reorder 383/700] drivers/soc/mstar/mstar-msc313-cmdq.c:157:13: warning: unused variable 'i'

kernel test robot <[email protected]> Sun, 02 Aug 2026 17:54:18 +0800
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://github.com/linux-chenxing/linux.git mstar_v6_5_reorder
head:   1a5c60e65ea399670a5384b869c4958338af2799
commit: ac59ae9915c2ea650a0bb8b7b64a4f716d40ab15 [383/700] soc: mstar: MSC313 CMDQ driver
config: nios2-allmodconfig (https://download.01.org/0day-ci/archive/20260802/[email protected]/config)
compiler: nios2-linux-gcc (GCC) 11.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260802/[email protected]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All warnings (new ones prefixed by >>):

   drivers/soc/mstar/mstar-msc313-cmdq.c: In function 'msc313_cmdq_probe':
>> drivers/soc/mstar/mstar-msc313-cmdq.c:157:13: warning: unused variable 'i' [-Wunused-variable]
     157 |         int i, ret;
         |             ^
>> drivers/soc/mstar/mstar-msc313-cmdq.c:155:34: warning: unused variable 'chan' [-Wunused-variable]
     155 |         struct msc313_cmdq_chan *chan;
         |                                  ^~~~
   At top level:
>> drivers/soc/mstar/mstar-msc313-cmdq.c:114:33: warning: 'soft_inter_field' defined but not used [-Wunused-variable]
     114 | static struct reg_field         soft_inter_field = REG_FIELD(REG_RAW_IRQ_FINAL_IRQ, 4, 7);
         |                                 ^~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:113:33: warning: 'cmdq_done_field' defined but not used [-Wunused-variable]
     113 | static struct reg_field         cmdq_done_field = REG_FIELD(REG_RAW_IRQ_FINAL_IRQ, 3, 3);
         |                                 ^~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:104:33: warning: 'skip_wait_mask_field' defined but not used [-Wunused-variable]
     104 | static struct reg_field         skip_wait_mask_field = REG_FIELD(REG_SKIPFORCE, 5, 5);
         |                                 ^~~~~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:103:33: warning: 'skip_wr_mask_field' defined but not used [-Wunused-variable]
     103 | static struct reg_field         skip_wr_mask_field = REG_FIELD(REG_SKIPFORCE, 4, 4);
         |                                 ^~~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:102:33: warning: 'skip_pollneq_field' defined but not used [-Wunused-variable]
     102 | static struct reg_field         skip_pollneq_field = REG_FIELD(REG_SKIPFORCE, 3, 3);
         |                                 ^~~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:101:33: warning: 'skip_polleq_field' defined but not used [-Wunused-variable]
     101 | static struct reg_field         skip_polleq_field = REG_FIELD(REG_SKIPFORCE, 2, 2);
         |                                 ^~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:100:33: warning: 'skip_wait_field' defined but not used [-Wunused-variable]
     100 | static struct reg_field         skip_wait_field = REG_FIELD(REG_SKIPFORCE, 1, 1);
         |                                 ^~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:99:33: warning: 'skip_wr_field' defined but not used [-Wunused-variable]
      99 | static struct reg_field         skip_wr_field = REG_FIELD(REG_SKIPFORCE, 0, 0);
         |                                 ^~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:90:33: warning: 'rst_cmd_st_ptr_trig_field' defined but not used [-Wunused-variable]
      90 | static struct reg_field         rst_cmd_st_ptr_trig_field = REG_FIELD(REG_TRIG1, 3, 3);
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:89:33: warning: 'mov_cmd_ptr_field' defined but not used [-Wunused-variable]
      89 | static struct reg_field         mov_cmd_ptr_field = REG_FIELD(REG_TRIG1, 1, 1);
         |                                 ^~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:88:33: warning: 'dma_trig_field' defined but not used [-Wunused-variable]
      88 | static struct reg_field         dma_trig_field = REG_FIELD(REG_TRIG1, 0, 0);
         |                                 ^~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:85:33: warning: 'buff_mode_field' defined but not used [-Wunused-variable]
      85 | static struct reg_field         buff_mode_field = REG_FIELD(REG_TRIG0, 1, 2);
         |                                 ^~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:84:33: warning: 'dma_trig_en_field' defined but not used [-Wunused-variable]
      84 | static struct reg_field         dma_trig_en_field = REG_FIELD(REG_TRIG0, 0, 0);
         |                                 ^~~~~~~~~~~~~~~~~
>> drivers/soc/mstar/mstar-msc313-cmdq.c:81:43: warning: 'enable_en_field' defined but not used [-Wunused-variable]
      81 | static struct                   reg_field enable_en_field = REG_FIELD(REG_ENABLE, 0, 0);
         |                                           ^~~~~~~~~~~~~~~


vim +/i +157 drivers/soc/mstar/mstar-msc313-cmdq.c

    79	
    80	#define REG_ENABLE		0x4
  > 81	static struct			reg_field enable_en_field = REG_FIELD(REG_ENABLE, 0, 0);
    82	
    83	#define REG_TRIG0		0x8
  > 84	static struct reg_field		dma_trig_en_field = REG_FIELD(REG_TRIG0, 0, 0);
  > 85	static struct reg_field		buff_mode_field = REG_FIELD(REG_TRIG0, 1, 2);
    86	
    87	#define REG_TRIG1		0xc
  > 88	static struct reg_field		dma_trig_field = REG_FIELD(REG_TRIG1, 0, 0);
  > 89	static struct reg_field		mov_cmd_ptr_field = REG_FIELD(REG_TRIG1, 1, 1);
  > 90	static struct reg_field		rst_cmd_st_ptr_trig_field = REG_FIELD(REG_TRIG1, 3, 3);
    91	
    92	#define REG_CMD_ST_PTR0		0x10
    93	#define REG_CMD_ST_PTR1		0x14
    94	#define REG_CMD_END_PTR0	0x18
    95	#define REG_CMD_END_PTR1	0x1c
    96	
    97	
    98	#define REG_SKIPFORCE		0x90
  > 99	static struct reg_field		skip_wr_field = REG_FIELD(REG_SKIPFORCE, 0, 0);
 > 100	static struct reg_field		skip_wait_field = REG_FIELD(REG_SKIPFORCE, 1, 1);
 > 101	static struct reg_field		skip_polleq_field = REG_FIELD(REG_SKIPFORCE, 2, 2);
 > 102	static struct reg_field		skip_pollneq_field = REG_FIELD(REG_SKIPFORCE, 3, 3);
 > 103	static struct reg_field		skip_wr_mask_field = REG_FIELD(REG_SKIPFORCE, 4, 4);
 > 104	static struct reg_field		skip_wait_mask_field = REG_FIELD(REG_SKIPFORCE, 5, 5);
   105	
   106	#define REG_RESET		0x0c4
   107	static struct reg_field		rst_nrst_field = REG_FIELD(REG_RESET, 0, 0);
   108	
   109	#define REQ_CRASH0		0x108
   110	#define REQ_CRASH1		0x10c
   111	
   112	#define REG_RAW_IRQ_FINAL_IRQ	0x110
 > 113	static struct reg_field		cmdq_done_field = REG_FIELD(REG_RAW_IRQ_FINAL_IRQ, 3, 3);
 > 114	static struct reg_field		soft_inter_field = REG_FIELD(REG_RAW_IRQ_FINAL_IRQ, 4, 7);
   115	
   116	#define REG_IRQ_FORCE		0x118
   117	#define REG_IRQ_MASK		0x11c
   118	#define REG_IRQ_CLEAR		0x120
   119	
   120	static const struct regmap_config msc313_cmdq_regmap_config = {
   121		.name = DRIVER_NAME,
   122		.reg_bits = 16,
   123		.val_bits = 16,
   124		.reg_stride = 4,
   125	};
   126	
   127	struct msc313_cmdq {
   128		struct clk *clk;
   129		struct regmap *regmap;
   130		struct regmap_field *nrst;
   131	};
   132	
   133	static const struct of_device_id msc313_cmdq_of_match[] = {
   134		{ .compatible = "mstar,msc313-cmdq", },
   135		{},
   136	};
   137	MODULE_DEVICE_TABLE(of, msc313_cmdq_of_match);
   138	
   139	static irqreturn_t msc313_cmdq_irq(int irq, void *data)
   140	{
   141		struct msc313_cmdq *cmdq = data;
   142	
   143		printk("%s:%d\n", __func__, __LINE__);
   144	
   145		regmap_write(cmdq->regmap, REG_IRQ_FORCE, 0);
   146		regmap_write(cmdq->regmap, REG_IRQ_CLEAR, ~0);
   147	
   148		return IRQ_HANDLED;
   149	}
   150	
   151	static int msc313_cmdq_probe(struct platform_device *pdev)
   152	{
   153		struct msc313_cmdq *cmdq;
   154		struct device *dev = &pdev->dev;
 > 155		struct msc313_cmdq_chan *chan;
   156		void __iomem *base;
 > 157		int i, ret;
   158		int irq;
   159	
   160		printk("cmdq probe\n");
   161	
   162		cmdq = devm_kzalloc(&pdev->dev, sizeof(*cmdq), GFP_KERNEL);
   163		if (!cmdq)
   164			return -ENOMEM;
   165	
   166		base = devm_platform_ioremap_resource(pdev, 0);
   167		if (IS_ERR(base))
   168			return PTR_ERR(base);
   169	
   170		cmdq->regmap = devm_regmap_init_mmio(dev, base,
   171				&msc313_cmdq_regmap_config);
   172		if (IS_ERR(cmdq->regmap))
   173			return PTR_ERR(cmdq->regmap);
   174	
   175		cmdq->clk = devm_clk_get(dev, NULL);
   176		if (IS_ERR(cmdq->clk)) {
   177			return PTR_ERR(cmdq->clk);
   178		}
   179	
   180		irq = irq_of_parse_and_map(pdev->dev.of_node, 0);
   181		if (!irq)
   182			return -EINVAL;
   183		ret = devm_request_irq(dev, irq, msc313_cmdq_irq,
   184				IRQF_SHARED, dev_name(dev), cmdq);
   185	
   186		cmdq->nrst = devm_regmap_field_alloc(dev, cmdq->regmap, rst_nrst_field);
   187	
   188		ret = clk_prepare_enable(cmdq->clk);
   189		if (ret)
   190			goto out;
   191	
   192	out:
   193		return ret;
   194	}
   195	

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