On Fri, 05 Jan 2007 07:10:09 -0800 Sumant Patro wrote:

Hi,

> ---
> 
>  Documentation/scsi/ChangeLog.megaraid |   16 ++
>  drivers/scsi/megaraid/megaraid_mbox.c |  140 +++++++++++++++++++-----
>  drivers/scsi/megaraid/megaraid_mbox.h |    4
>  3 files changed, 130 insertions(+), 30 deletions(-)
> 
> diff -uprN linux-2.6.orig/drivers/scsi/megaraid/megaraid_mbox.c 
> linux-2.6.new/drivers/scsi/megaraid/megaraid_mbox.c
> --- linux-2.6.orig/drivers/scsi/megaraid/megaraid_mbox.c      2006-12-28 
> 09:56:04.000000000 -0800
> +++ linux-2.6.new/drivers/scsi/megaraid/megaraid_mbox.c       2007-01-04 
> 11:22:21.000000000 -0800
> @@ -3380,6 +3386,84 @@ megaraid_mbox_flush_cache(adapter_t *ada
>  
>  
>  /**
> + * megaraid_mbox_fire_sync_cmd - fire the sync cmd
> + * @param adapter    : soft state for the controller

That (above) should just be:
 * @adapter:  (plus its description; the description there
   doesn't seem to agree with its parameter name).


> + *
> + * Clears the pending cmds in FW and reinits its RAID structs
> + */
> +static int
> +megaraid_mbox_fire_sync_cmd(adapter_t *adapter)
> +{
> +     mbox_t  *mbox;
> +     uint8_t raw_mbox[sizeof(mbox_t)];
> +     mraid_device_t  *raid_dev = ADAP2RAIDDEV(adapter);
> +     mbox64_t *mbox64;
> +     int     status = 0;
> +     int i;
> +     uint32_t dword;
> +
> +     mbox = (mbox_t *)raw_mbox;
> +
> +     memset((caddr_t)raw_mbox, 0, sizeof(mbox_t));
> +
> +     raw_mbox[0] = 0xFF;
> +
> +     mbox64  = raid_dev->mbox64;
> +     mbox    = raid_dev->mbox;
> +
> +     /* Wait until mailbox is free */
> +     if (megaraid_busywait_mbox(raid_dev) != 0) {
> +             status = 1;
> +             goto blocked_mailbox;
> +     }
> +
> +     /* Copy mailbox data into host structure */
> +     memcpy((caddr_t)mbox, (caddr_t)raw_mbox, 16);
> +     mbox->cmdid             = 0xFE;
> +     mbox->busy              = 1;
> +     mbox->poll              = 0;
> +     mbox->ack               = 0;
> +     mbox->numstatus         = 0;
> +     mbox->status            = 0;
> +
> +     wmb();
> +     WRINDOOR(raid_dev, raid_dev->mbox_dma | 0x1);
> +
> +     /* Wait for maximum 1 min for status to post.
> +      * If the Firmware SUPPORTS the ABOVE COMMAND,
> +      * mbox->cmd will be set to 0
> +      * else
> +      * the firmware will reject the command with
> +      * mbox->numstatus set to 1
> +      */
> +
> +     i = 0;
> +     status = 0;
> +     while (!mbox->numstatus && mbox->cmd == 0xFF) {
> +             rmb();
> +             msleep(1);
> +             i++;
> +             if (i > 1000 * 60) {
> +                     status = 1;
> +                     break;
> +             }
> +     }
> +     if (mbox->numstatus == 1)
> +             status = 1; /*cmd not supported*/
> +
> +     /* Check for interrupt line */
> +     dword = RDOUTDOOR(raid_dev);
> +     WROUTDOOR(raid_dev, dword);
> +     WRINDOOR(raid_dev,2);
> +
> +     return status;
> +
> +blocked_mailbox:
> +     con_log(CL_ANN, (KERN_WARNING "megaraid: blocked mailbox\n"));
> +     return status;
> +}
> +
> +/**
>   * megaraid_mbox_display_scb - display SCB information, mostly debug purposes
>   * @param adapter    : controllers' soft state
>   * @param scb  : SCB to be displayed

I haven't looked at the entire source file, but these extra
"param" words should not be there.  kernel-doc syntax is just
  @name: description


---
~Randy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to