old bug in au88x0_core.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi ALSA devs,

The patch 1da177e4c3f4: "Linux-2.6.12-rc2" from Apr 16, 2005, leads
to the following static checker warning:

	sound/pci/au88x0/au88x0_core.c:1449 vortex_wtdma_bufshift()
	warn: mask and shift to zero

sound/pci/au88x0/au88x0_core.c
  1441  static int vortex_wtdma_bufshift(vortex_t * vortex, int wtdma)
  1442  {
  1443          stream_t *dma = &vortex->dma_wt[wtdma];
  1444          int page, p, pp, delta, i;
  1445  
  1446          page =
  1447              (hwread(vortex->mmio, VORTEX_WTDMA_STAT + (wtdma << 2)) &
  1448               WT_SUBBUF_MASK)
  1449              >> WT_SUBBUF_SHIFT;

This is always zero because:

#define WT_SUBBUF_MASK 0x3
#define WT_SUBBUF_SHIFT 0x15

  1450          if (dma->nr_periods >= 4)
  1451                  delta = (page - dma->period_real) & 3;
  1452          else {
  1453                  delta = (page - dma->period_real);
  1454                  if (delta < 0)
  1455                          delta += dma->nr_periods;
  1456          }
  1457          if (delta == 0)
  1458                  return 0;


  1493  #if 0
  1494  static void
  1495  vortex_wtdma_getposition(vortex_t * vortex, int wtdma, int *subbuf, int *pos)
  1496  {
  1497          int temp;
  1498          temp = hwread(vortex->mmio, VORTEX_WTDMA_STAT + (wtdma << 2));
  1499          *subbuf = (temp >> WT_SUBBUF_SHIFT) & WT_SUBBUF_MASK;

>From this ifdef zero code, it looks like we should shift first then do
the mask.

  1500          *pos = temp & POS_MASK;
  1501  }
  1502  
  1503  static int vortex_wtdma_getcursubuffer(vortex_t * vortex, int wtdma)
  1504  {
  1505          return ((hwread(vortex->mmio, VORTEX_WTDMA_STAT + (wtdma << 2)) >>
  1506                   POS_SHIFT) & POS_MASK);
  1507  }
  1508  #endif


regards,
dan carpenter
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux