[bug report] gma500: initial medfield merge

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

 



Hello Kirill A. Shutemov,

The patch 026abc333205: "gma500: initial medfield merge" from Mar 8,
2012, leads to the following static checker warning:

	drivers/gpu/drm/gma500/mdfld_intel_display.c:102 mdfldWaitForPipeEnable()
	warn: masked condition '(temp & (1 << 30)) == 1' is always false.

drivers/gpu/drm/gma500/mdfld_intel_display.c
    79  void mdfldWaitForPipeEnable(struct drm_device *dev, int pipe)
    80  {
    81          struct drm_psb_private *dev_priv = dev->dev_private;
    82          const struct psb_offset *map = &dev_priv->regmap[pipe];
    83          int count, temp;
    84  
    85          switch (pipe) {
    86          case 0:
    87          case 1:
    88          case 2:
    89                  break;
    90          default:
    91                  DRM_ERROR("Illegal Pipe Number.\n");
    92                  return;
    93          }
    94  
    95          /* FIXME JLIU7_PO */
    96          gma_wait_for_vblank(dev);
    97          return;
                ^^^^^^
It occurs to me that this early return might be a work around for the
minute long hang that follows.  But there is an early return in Disable
as well, and I can't test this.

    98  
    99          /* Wait for for the pipe enable to take effect. */
   100          for (count = 0; count < COUNT_MAX; count++) {
   101                  temp = REG_READ(map->conf);
   102                  if ((temp & PIPEACONF_PIPE_STATE) == 1)
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This will never be true.  It should just be:
			if (temp & PIPEACONF_PIPE_STATE) {
So this loop will just go until we reach COUNT_MAX.

   103                          break;
   104          }
   105  }

regards,
dan carpenter
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux