sound/hda/controllers/cix-ipbloq.c:223:50: sparse: sparse: cast truncates bits from constant value (ffffffff70000000 becomes 70000000)

kernel test robot <[email protected]>
Newsgroups org.kernel.vger.linux-kernel,dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   0d839570765118029aa8bf4a95444c6a11aacf85
commit: d91e9bd10125a9b0427420453b11f56228a6d6d0 ALSA: hda: add CIX IPBLOQ HDA controller support
date:   8 months ago
config: openrisc-randconfig-r112-20260806 (https://download.01.org/0day-ci/archive/20260806/[email protected]/config)
compiler: or1k-linux-gcc (GCC) 10.5.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260806/[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
| Fixes: d91e9bd10125 ("ALSA: hda: add CIX IPBLOQ HDA controller support")
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

sparse warnings: (new ones prefixed by >>)
>> sound/hda/controllers/cix-ipbloq.c:223:50: sparse: sparse: cast truncates bits from constant value (ffffffff70000000 becomes 70000000)

vim +223 sound/hda/controllers/cix-ipbloq.c

   179	
   180	static int cix_ipbloq_hda_create(struct cix_ipbloq_hda *hda,
   181					 struct snd_card *card,
   182					 unsigned int driver_caps)
   183	{
   184		static const struct snd_device_ops ops = {
   185			.dev_disconnect = cix_ipbloq_hda_dev_disconnect,
   186			.dev_free = cix_ipbloq_hda_dev_free,
   187		};
   188		struct azx *chip;
   189		int err;
   190	
   191		chip = &hda->chip;
   192		chip->card = card;
   193		chip->ops = &cix_ipbloq_hda_ops;
   194		chip->driver_caps = driver_caps;
   195		chip->driver_type = driver_caps & 0xff;
   196		chip->dev_index = 0;
   197		chip->single_cmd = 0;
   198		chip->codec_probe_mask = -1;
   199		chip->align_buffer_size = 1;
   200		chip->jackpoll_interval = msecs_to_jiffies(CIX_IPBLOQ_JACKPOLL_DEFAULT_TIME_MS);
   201		mutex_init(&chip->open_mutex);
   202		INIT_LIST_HEAD(&chip->pcm_list);
   203	
   204		/*
   205		 * HD-audio controllers appear pretty inaccurate about the update-IRQ timing.
   206		 * The IRQ is issued before actually the data is processed. So use stream
   207		 * link position by default instead of dma position buffer.
   208		 */
   209		chip->get_position[0] = chip->get_position[1] = azx_get_pos_lpib;
   210	
   211		err = azx_bus_init(chip, NULL);
   212		if (err < 0) {
   213			dev_err(hda->dev, "failed to init bus, err = %d\n", err);
   214			return err;
   215		}
   216	
   217		/* RIRBSTS.RINTFL cannot be cleared, cause interrupt storm */
   218		chip->bus.core.polling_mode = 1;
   219		chip->bus.core.not_use_interrupts = 1;
   220	
   221		chip->bus.core.aligned_mmio = 1;
   222		chip->bus.core.dma_stop_delay = 100;
 > 223		chip->bus.core.addr_offset = (dma_addr_t)CIX_IPBLOQ_SKY1_ADDR_HOST_TO_HDAC_OFFSET;
   224	
   225		chip->bus.jackpoll_in_suspend = 1;
   226	
   227		err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops);
   228		if (err < 0) {
   229			dev_err(card->dev, "failed to create device, err = %d\n", err);
   230			return err;
   231		}
   232	
   233		return 0;
   234	}
   235	

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.