All of lore.kernel.org
 help / color / mirror / Atom feed
From: lkp@intel.com (kbuild test robot)
To: linux-arm-kernel@lists.infradead.org
Subject: [stericsson:ux500-mcde 4/5] drivers/gpu//drm/mcde/mcde_dsi.c:495:4: warning: format '%d' expects argument of type 'int', but argument 4 has type 'size_t {aka long unsigned int}'
Date: Tue, 17 Jul 2018 09:06:50 +0800	[thread overview]
Message-ID: <20180717010650.GJ10593@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson.git ux500-mcde
head:   0aa285c8ac0871db70d37e6f658cd3327ae06a84
commit: dfc457803b349a0c0e0625070db87dbdfa7d452c [4/5] MCDE hack
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout dfc457803b349a0c0e0625070db87dbdfa7d452c
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=arm64 
:::::: branch date: 18 hours ago
:::::: commit date: 3 days ago

All warnings (new ones prefixed by >>):

   In file included from include/linux/platform_device.h:14:0,
                    from drivers/gpu//drm/mcde/mcde_dsi.c:2:
   drivers/gpu//drm/mcde/mcde_dsi.c: In function 'mcde_dsi_host_transfer':
>> drivers/gpu//drm/mcde/mcde_dsi.c:495:4: warning: format '%d' expects argument of type 'int', but argument 4 has type 'size_t {aka long unsigned int}' [-Wformat=]
       "message to channel %d, %d bytes: ",
       ^
   include/linux/device.h:1395:51: note: in definition of macro 'dev_info'
    #define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
                                                      ^~~
   At top level:
   drivers/gpu//drm/mcde/mcde_dsi.c:609:13: warning: 'mcde_dsi_te_request' defined but not used [-Wunused-function]
    static void mcde_dsi_te_request(struct mcde_dsi *d)
                ^~~~~~~~~~~~~~~~~~~

# https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson.git/commit/?id=dfc457803b349a0c0e0625070db87dbdfa7d452c
git remote add stericsson https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson.git
git remote update stericsson
git checkout dfc457803b349a0c0e0625070db87dbdfa7d452c
vim +495 drivers/gpu//drm/mcde/mcde_dsi.c

dfc45780 Linus Walleij 2018-05-29  468  
dfc45780 Linus Walleij 2018-05-29  469  #define MCDE_DSI_HOST_IS_READ(type)			    \
dfc45780 Linus Walleij 2018-05-29  470          ((type == MIPI_DSI_GENERIC_READ_REQUEST_0_PARAM) || \
dfc45780 Linus Walleij 2018-05-29  471  	 (type == MIPI_DSI_GENERIC_READ_REQUEST_1_PARAM) || \
dfc45780 Linus Walleij 2018-05-29  472  	 (type == MIPI_DSI_GENERIC_READ_REQUEST_2_PARAM) || \
dfc45780 Linus Walleij 2018-05-29  473  	 (type == MIPI_DSI_DCS_READ))
dfc45780 Linus Walleij 2018-05-29  474  
dfc45780 Linus Walleij 2018-05-29  475  static ssize_t mcde_dsi_host_transfer(struct mipi_dsi_host *host,
dfc45780 Linus Walleij 2018-05-29  476  				      const struct mipi_dsi_msg *msg)
dfc45780 Linus Walleij 2018-05-29  477  {
dfc45780 Linus Walleij 2018-05-29  478  	struct mcde_dsi *d = host_to_mcde_dsi(host);
dfc45780 Linus Walleij 2018-05-29  479  	const u32 loop_delay_us = 10; /* us */
dfc45780 Linus Walleij 2018-05-29  480  	const u8 *tx = msg->tx_buf;
dfc45780 Linus Walleij 2018-05-29  481  	u32 loop_counter;
dfc45780 Linus Walleij 2018-05-29  482  	size_t txlen;
dfc45780 Linus Walleij 2018-05-29  483  	u32 val;
dfc45780 Linus Walleij 2018-05-29  484  	int ret;
dfc45780 Linus Walleij 2018-05-29  485  	int i;
dfc45780 Linus Walleij 2018-05-29  486  
dfc45780 Linus Walleij 2018-05-29  487  	txlen = msg->tx_len;
dfc45780 Linus Walleij 2018-05-29  488  	if (txlen > 12) {
dfc45780 Linus Walleij 2018-05-29  489  		dev_err(d->dev,
dfc45780 Linus Walleij 2018-05-29  490  			"dunno how to write more than 12 bytes yet\n");
dfc45780 Linus Walleij 2018-05-29  491  		return -EIO;
dfc45780 Linus Walleij 2018-05-29  492  	}
dfc45780 Linus Walleij 2018-05-29  493  
dfc45780 Linus Walleij 2018-05-29  494  	dev_info(d->dev,
dfc45780 Linus Walleij 2018-05-29 @495  		 "message to channel %d, %d bytes: ",
dfc45780 Linus Walleij 2018-05-29  496  		 msg->channel,
dfc45780 Linus Walleij 2018-05-29  497  		 txlen);
dfc45780 Linus Walleij 2018-05-29  498  	for (i = 0; i < txlen; i++)
dfc45780 Linus Walleij 2018-05-29  499  		pr_cont(" %02x", tx[i]);
dfc45780 Linus Walleij 2018-05-29  500  	pr_cont("\n");
dfc45780 Linus Walleij 2018-05-29  501  
dfc45780 Linus Walleij 2018-05-29  502  	/* Command "nature" */
dfc45780 Linus Walleij 2018-05-29  503  	if (MCDE_DSI_HOST_IS_READ(msg->type))
dfc45780 Linus Walleij 2018-05-29  504  		/* MCTL_MAIN_DATA_CTL already set up */
dfc45780 Linus Walleij 2018-05-29  505  		val = DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_NAT_READ;
dfc45780 Linus Walleij 2018-05-29  506  	else
dfc45780 Linus Walleij 2018-05-29  507  		val = DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_NAT_WRITE;
dfc45780 Linus Walleij 2018-05-29  508  	/*
dfc45780 Linus Walleij 2018-05-29  509  	 * More than 2 bytes will not fit in a single packet, so it's
dfc45780 Linus Walleij 2018-05-29  510  	 * time to set the "long not short" bit. One byte is used by
dfc45780 Linus Walleij 2018-05-29  511  	 * the MIPI DCS command leaving just one byte for the payload
dfc45780 Linus Walleij 2018-05-29  512  	 * in a short package.
dfc45780 Linus Walleij 2018-05-29  513  	 */
dfc45780 Linus Walleij 2018-05-29  514  	if (mipi_dsi_packet_format_is_long(msg->type))
dfc45780 Linus Walleij 2018-05-29  515  		val |= DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_LONGNOTSHORT;
dfc45780 Linus Walleij 2018-05-29  516  	val |= 0 << DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_ID_SHIFT;
dfc45780 Linus Walleij 2018-05-29  517  	/* Add one to the length for the MIPI DCS command */
dfc45780 Linus Walleij 2018-05-29  518  	val |= txlen
dfc45780 Linus Walleij 2018-05-29  519  		<< DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_SIZE_SHIFT;
dfc45780 Linus Walleij 2018-05-29  520  	val |= DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_LP_EN;
dfc45780 Linus Walleij 2018-05-29  521          val |= msg->type << DSI_DIRECT_CMD_MAIN_SETTINGS_CMD_HEAD_SHIFT;
dfc45780 Linus Walleij 2018-05-29  522  	writel(val, d->regs + DSI_DIRECT_CMD_MAIN_SETTINGS);
dfc45780 Linus Walleij 2018-05-29  523  
dfc45780 Linus Walleij 2018-05-29  524  	/* MIPI DCS command is part of the data */
dfc45780 Linus Walleij 2018-05-29  525  	if (txlen > 0) {
dfc45780 Linus Walleij 2018-05-29  526  		val = 0;
dfc45780 Linus Walleij 2018-05-29  527  		for (i = 0; i < 4 && i < txlen; i++)
dfc45780 Linus Walleij 2018-05-29  528  			val |= tx[i] << (i & 3) * 8;
dfc45780 Linus Walleij 2018-05-29  529  	}
dfc45780 Linus Walleij 2018-05-29  530  	writel(val, d->regs + DSI_DIRECT_CMD_WRDAT0);
dfc45780 Linus Walleij 2018-05-29  531  	if (txlen > 4) {
dfc45780 Linus Walleij 2018-05-29  532  		val = 0;
dfc45780 Linus Walleij 2018-05-29  533  		for (i = 0; i < 4 && (i + 4) < txlen; i++)
dfc45780 Linus Walleij 2018-05-29  534  			val |= tx[i + 4] << (i & 3) * 8;
dfc45780 Linus Walleij 2018-05-29  535  		writel(val, d->regs + DSI_DIRECT_CMD_WRDAT1);
dfc45780 Linus Walleij 2018-05-29  536  	}
dfc45780 Linus Walleij 2018-05-29  537  	if (txlen > 8) {
dfc45780 Linus Walleij 2018-05-29  538  		val = 0;
dfc45780 Linus Walleij 2018-05-29  539  		for (i = 0; i < 4 && (i + 8) < txlen; i++)
dfc45780 Linus Walleij 2018-05-29  540  			val |= tx[i + 8] << (i & 3) * 8;
dfc45780 Linus Walleij 2018-05-29  541  		writel(val, d->regs + DSI_DIRECT_CMD_WRDAT2);
dfc45780 Linus Walleij 2018-05-29  542  	}
dfc45780 Linus Walleij 2018-05-29  543  	if (txlen > 12) {
dfc45780 Linus Walleij 2018-05-29  544  		val = 0;
dfc45780 Linus Walleij 2018-05-29  545  		for (i = 0; i < 4 && (i + 12) < txlen; i++)
dfc45780 Linus Walleij 2018-05-29  546  			val |= tx[i + 12] << (i & 3) * 8;
dfc45780 Linus Walleij 2018-05-29  547  		writel(val, d->regs + DSI_DIRECT_CMD_WRDAT3);
dfc45780 Linus Walleij 2018-05-29  548  	}
dfc45780 Linus Walleij 2018-05-29  549  
dfc45780 Linus Walleij 2018-05-29  550  	writel(~0, d->regs + DSI_DIRECT_CMD_STS_CLR);
dfc45780 Linus Walleij 2018-05-29  551  	writel(~0, d->regs + DSI_CMD_MODE_STS_CLR);
dfc45780 Linus Walleij 2018-05-29  552  	/* Send command */
dfc45780 Linus Walleij 2018-05-29  553  	writel(1, d->regs + DSI_DIRECT_CMD_SEND);
dfc45780 Linus Walleij 2018-05-29  554  
dfc45780 Linus Walleij 2018-05-29  555  	loop_counter = 1000 * 1000 / loop_delay_us;
dfc45780 Linus Walleij 2018-05-29  556  	while (!(readl(d->regs + DSI_DIRECT_CMD_STS) &
dfc45780 Linus Walleij 2018-05-29  557  		 DSI_DIRECT_CMD_STS_WRITE_COMPLETED)
dfc45780 Linus Walleij 2018-05-29  558  	       && --loop_counter)
dfc45780 Linus Walleij 2018-05-29  559  		usleep_range(loop_delay_us, (loop_delay_us * 3) / 2);
dfc45780 Linus Walleij 2018-05-29  560  
dfc45780 Linus Walleij 2018-05-29  561  	if (!loop_counter) {
dfc45780 Linus Walleij 2018-05-29  562                  dev_err(d->dev, "DSI write timeout!\n");
dfc45780 Linus Walleij 2018-05-29  563                  return -ETIME;
dfc45780 Linus Walleij 2018-05-29  564          } else {
dfc45780 Linus Walleij 2018-05-29  565                  dev_info(d->dev, "DSI Write OK\n");
dfc45780 Linus Walleij 2018-05-29  566          }
dfc45780 Linus Walleij 2018-05-29  567  
dfc45780 Linus Walleij 2018-05-29  568  	val = readl(d->regs + DSI_DIRECT_CMD_STS);
dfc45780 Linus Walleij 2018-05-29  569  	if (val & DSI_DIRECT_CMD_STS_ACKNOWLEDGE_WITH_ERR_RECEIVED) {
dfc45780 Linus Walleij 2018-05-29  570  		val >>= DSI_DIRECT_CMD_STS_ACK_VAL_SHIFT;
dfc45780 Linus Walleij 2018-05-29  571  		dev_err(d->dev, "error during transmission: %04x\n",
dfc45780 Linus Walleij 2018-05-29  572  			val);
dfc45780 Linus Walleij 2018-05-29  573  		return -EIO;
dfc45780 Linus Walleij 2018-05-29  574  	}
dfc45780 Linus Walleij 2018-05-29  575  
dfc45780 Linus Walleij 2018-05-29  576  	if (!MCDE_DSI_HOST_IS_READ(msg->type)) {
dfc45780 Linus Walleij 2018-05-29  577  		/* Return number of bytes written */
dfc45780 Linus Walleij 2018-05-29  578  		if (mipi_dsi_packet_format_is_long(msg->type))
dfc45780 Linus Walleij 2018-05-29  579  			ret = 4 + txlen;
dfc45780 Linus Walleij 2018-05-29  580  		else
dfc45780 Linus Walleij 2018-05-29  581  			ret = 4;
dfc45780 Linus Walleij 2018-05-29  582  	} else {
dfc45780 Linus Walleij 2018-05-29  583  		/* OK this is a read command, get the response */
dfc45780 Linus Walleij 2018-05-29  584  		u32 rdsz;
dfc45780 Linus Walleij 2018-05-29  585  		u32 rddat;
dfc45780 Linus Walleij 2018-05-29  586  		u8 *rx = msg->rx_buf;
dfc45780 Linus Walleij 2018-05-29  587  
dfc45780 Linus Walleij 2018-05-29  588  		rdsz = readl(d->regs + DSI_DIRECT_CMD_RD_PROPERTY);
dfc45780 Linus Walleij 2018-05-29  589  		rdsz &= DSI_DIRECT_CMD_RD_PROPERTY_RD_SIZE_MASK;
dfc45780 Linus Walleij 2018-05-29  590  		rddat = readl(d->regs + DSI_DIRECT_CMD_RDDAT);
dfc45780 Linus Walleij 2018-05-29  591  		for (i = 0; i < 4 && i < rdsz; i++)
dfc45780 Linus Walleij 2018-05-29  592  			rx[i] = (rddat >> (i * 8)) & 0xff;
dfc45780 Linus Walleij 2018-05-29  593  		ret = rdsz;
dfc45780 Linus Walleij 2018-05-29  594  	}
dfc45780 Linus Walleij 2018-05-29  595  
dfc45780 Linus Walleij 2018-05-29  596  	writel(~0, d->regs + DSI_DIRECT_CMD_STS_CLR);
dfc45780 Linus Walleij 2018-05-29  597  	writel(~0, d->regs + DSI_CMD_MODE_STS_CLR);
dfc45780 Linus Walleij 2018-05-29  598  
dfc45780 Linus Walleij 2018-05-29  599  	return ret;
dfc45780 Linus Walleij 2018-05-29  600  }
dfc45780 Linus Walleij 2018-05-29  601  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 60458 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20180717/18804e78/attachment-0001.gz>

                 reply	other threads:[~2018-07-17  1:06 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180717010650.GJ10593@intel.com \
    --to=lkp@intel.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.