All of lore.kernel.org
 help / color / mirror / Atom feed
* [plbossart-sound:sdw/merge-master-add-APIs 1/2] drivers/soundwire/qcom.c:866:41: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2020-04-23  0:57 kbuild test robot
  0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-04-23  0:57 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 12416 bytes --]

tree:   https://github.com/plbossart/sound sdw/merge-master-add-APIs
head:   31599fa4e830d092723dcb7719c51126d46dc9da
commit: 44eb92f8ff3575ab9f940c10d63c81d6e92abe2d [1/2] soundwire: move sdw_master_device as part of the context
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.1-191-gc51a0382-dirty
        git checkout 44eb92f8ff3575ab9f940c10d63c81d6e92abe2d
        make ARCH=x86_64 allmodconfig
        make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)

>> drivers/soundwire/qcom.c:866:41: sparse: sparse: incorrect type in argument 1 (different base types) @@    expected struct sdw_master_device *md @@    got truct sdw_master_device *md @@
   drivers/soundwire/qcom.c:866:41: sparse:    expected struct sdw_master_device *md
>> drivers/soundwire/qcom.c:866:41: sparse:    got struct sdw_master_device md
   drivers/soundwire/qcom.c:881:41: sparse: sparse: incorrect type in argument 1 (different base types) @@    expected struct sdw_master_device *md @@    got truct sdw_master_device *md @@
   drivers/soundwire/qcom.c:881:41: sparse:    expected struct sdw_master_device *md
   drivers/soundwire/qcom.c:881:41: sparse:    got struct sdw_master_device md

vim +866 drivers/soundwire/qcom.c

02efb49aa805cee Srinivas Kandagatla  2020-01-13  743  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  744  static int qcom_swrm_probe(struct platform_device *pdev)
02efb49aa805cee Srinivas Kandagatla  2020-01-13  745  {
02efb49aa805cee Srinivas Kandagatla  2020-01-13  746  	struct device *dev = &pdev->dev;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  747  	struct sdw_master_prop *prop;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  748  	struct sdw_bus_params *params;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  749  	struct qcom_swrm_ctrl *ctrl;
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  750  	int ret, err;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  751  	u32 val;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  752  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  753  	ctrl = devm_kzalloc(dev, sizeof(*ctrl), GFP_KERNEL);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  754  	if (!ctrl)
02efb49aa805cee Srinivas Kandagatla  2020-01-13  755  		return -ENOMEM;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  756  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  757  	if (dev->parent->bus == &slimbus_bus) {
02efb49aa805cee Srinivas Kandagatla  2020-01-13  758  		ctrl->reg_read = qcom_swrm_abh_reg_read;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  759  		ctrl->reg_write = qcom_swrm_ahb_reg_write;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  760  		ctrl->regmap = dev_get_regmap(dev->parent, NULL);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  761  		if (!ctrl->regmap)
02efb49aa805cee Srinivas Kandagatla  2020-01-13  762  			return -EINVAL;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  763  	} else {
02efb49aa805cee Srinivas Kandagatla  2020-01-13  764  		/* Only WCD based SoundWire controller is supported */
02efb49aa805cee Srinivas Kandagatla  2020-01-13  765  		return -ENOTSUPP;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  766  	}
02efb49aa805cee Srinivas Kandagatla  2020-01-13  767  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  768  	ctrl->irq = of_irq_get(dev->of_node, 0);
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  769  	if (ctrl->irq < 0) {
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  770  		ret = ctrl->irq;
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  771  		goto err_init;
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  772  	}
02efb49aa805cee Srinivas Kandagatla  2020-01-13  773  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  774  	ctrl->hclk = devm_clk_get(dev, "iface");
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  775  	if (IS_ERR(ctrl->hclk)) {
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  776  		ret = PTR_ERR(ctrl->hclk);
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  777  		goto err_init;
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  778  	}
02efb49aa805cee Srinivas Kandagatla  2020-01-13  779  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  780  	clk_prepare_enable(ctrl->hclk);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  781  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  782  	ctrl->dev = dev;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  783  	dev_set_drvdata(&pdev->dev, ctrl);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  784  	spin_lock_init(&ctrl->comp_lock);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  785  	mutex_init(&ctrl->port_lock);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  786  	INIT_WORK(&ctrl->slave_work, qcom_swrm_slave_wq);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  787  
3a4d863b21f4e30 Pierre-Louis Bossart 2020-04-09  788  	/* add bus handle */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  789  	ctrl->md.bus = &ctrl->bus;
3a4d863b21f4e30 Pierre-Louis Bossart 2020-04-09  790  
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  791  	/* the bus uses the sdw_master_device, not the platform device */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  792  	ctrl->bus.dev = &ctrl->md.dev;
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  793  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  794  	ctrl->bus.ops = &qcom_swrm_ops;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  795  	ctrl->bus.port_ops = &qcom_swrm_port_ops;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  796  	ctrl->bus.compute_params = &qcom_swrm_compute_params;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  797  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  798  	ret = qcom_swrm_get_port_config(ctrl);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  799  	if (ret)
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  800  		goto err_clk;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  801  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  802  	params = &ctrl->bus.params;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  803  	params->max_dr_freq = DEFAULT_CLK_FREQ;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  804  	params->curr_dr_freq = DEFAULT_CLK_FREQ;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  805  	params->col = SWRM_DEFAULT_COL;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  806  	params->row = SWRM_DEFAULT_ROWS;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  807  	ctrl->reg_read(ctrl, SWRM_MCP_STATUS, &val);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  808  	params->curr_bank = val & SWRM_MCP_STATUS_BANK_NUM_MASK;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  809  	params->next_bank = !params->curr_bank;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  810  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  811  	prop = &ctrl->bus.prop;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  812  	prop->max_clk_freq = DEFAULT_CLK_FREQ;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  813  	prop->num_clk_gears = 0;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  814  	prop->num_clk_freq = MAX_FREQ_NUM;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  815  	prop->clk_freq = &qcom_swrm_freq_tbl[0];
02efb49aa805cee Srinivas Kandagatla  2020-01-13  816  	prop->default_col = SWRM_DEFAULT_COL;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  817  	prop->default_row = SWRM_DEFAULT_ROWS;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  818  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  819  	ctrl->reg_read(ctrl, SWRM_COMP_HW_VERSION, &ctrl->version);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  820  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  821  	ret = devm_request_threaded_irq(dev, ctrl->irq, NULL,
02efb49aa805cee Srinivas Kandagatla  2020-01-13  822  					qcom_swrm_irq_handler,
02efb49aa805cee Srinivas Kandagatla  2020-01-13  823  					IRQF_TRIGGER_RISING,
02efb49aa805cee Srinivas Kandagatla  2020-01-13  824  					"soundwire", ctrl);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  825  	if (ret) {
02efb49aa805cee Srinivas Kandagatla  2020-01-13  826  		dev_err(dev, "Failed to request soundwire irq\n");
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  827  		goto err_clk;
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  828  	}
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  829  
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  830  	/*
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  831  	 * add sdw_master_device.
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  832  	 * For the Qualcomm implementation there is no driver.
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  833  	 */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  834  	ret = sdw_master_device_add(&ctrl->md,
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  835  				    dev,	/* platform device is parent */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  836  				    dev->fwnode,
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  837  				    NULL,	/* no link ops */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  838  				    0,		/* only one link supported */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  839  				    NULL);	/* no context */
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  840  	if (ret < 0) {
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  841  		dev_err(dev, "Could not create sdw_master_device\n");
44eb92f8ff3575a Pierre-Louis Bossart 2020-04-20  842  		goto err_clk;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  843  	}
02efb49aa805cee Srinivas Kandagatla  2020-01-13  844  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  845  	ret = sdw_add_bus_master(&ctrl->bus);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  846  	if (ret) {
02efb49aa805cee Srinivas Kandagatla  2020-01-13  847  		dev_err(dev, "Failed to register Soundwire controller (%d)\n",
02efb49aa805cee Srinivas Kandagatla  2020-01-13  848  			ret);
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  849  		goto err_md;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  850  	}
02efb49aa805cee Srinivas Kandagatla  2020-01-13  851  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  852  	qcom_swrm_init(ctrl);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  853  	ret = qcom_swrm_register_dais(ctrl);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  854  	if (ret)
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  855  		goto err_master_add;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  856  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  857  	dev_info(dev, "Qualcomm Soundwire controller v%x.%x.%x Registered\n",
02efb49aa805cee Srinivas Kandagatla  2020-01-13  858  		 (ctrl->version >> 24) & 0xff, (ctrl->version >> 16) & 0xff,
02efb49aa805cee Srinivas Kandagatla  2020-01-13  859  		 ctrl->version & 0xffff);
02efb49aa805cee Srinivas Kandagatla  2020-01-13  860  
02efb49aa805cee Srinivas Kandagatla  2020-01-13  861  	return 0;
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  862  
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  863  err_master_add:
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  864  	sdw_delete_bus_master(&ctrl->bus);
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  865  err_md:
5156c376c827fdc Pierre-Louis Bossart 2020-03-17 @866  	err = sdw_master_device_del(ctrl->md);
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  867  	if (err < 0) /* log but return initial status */
5156c376c827fdc Pierre-Louis Bossart 2020-03-17  868  		dev_err(dev, "master device del failed %d\n", err);
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  869  err_clk:
02efb49aa805cee Srinivas Kandagatla  2020-01-13  870  	clk_disable_unprepare(ctrl->hclk);
0edb6d574e13a08 Pierre-Louis Bossart 2020-03-20  871  err_init:
02efb49aa805cee Srinivas Kandagatla  2020-01-13  872  	return ret;
02efb49aa805cee Srinivas Kandagatla  2020-01-13  873  }
02efb49aa805cee Srinivas Kandagatla  2020-01-13  874  

:::::: The code at line 866 was first introduced by commit
:::::: 5156c376c827fdcb7526d5eec54616f3612e2423 soundwire: qcom: add sdw_master_device support

:::::: TO: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
:::::: CC: Pierre Bossart <pierre-louis.bossart@linux.intel.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-04-23  0:57 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-23  0:57 [plbossart-sound:sdw/merge-master-add-APIs 1/2] drivers/soundwire/qcom.c:866:41: sparse: sparse: incorrect type in argument 1 (different base types) kbuild test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.