Re: [PATCH V2 02/10] pm80xx: IButton feature support for motherboard controllers.

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

 



On 09/26/2013 07:28 AM, Anand wrote:
> From d6b5e5d88f424b334c9b9c241f988b9eec1a70c7 Mon Sep 17 00:00:00 2001
> From: Anand Kumar Santhanam <AnandKumar.Santhanam@xxxxxxxx>
> Date: Tue, 17 Sep 2013 14:32:20 +0530
> Subject: [PATCH V2 02/10] pm80xx: IButton feature support for motherboard controllers.
> 
> IButton security feature support for motherboard controllers.
> 
> Signed-off-by: Anandkumar.Santhanam@xxxxxxxx

Reviewed-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxxx>
> 
> ---
>  drivers/scsi/pm8001/pm80xx_hwi.c |   22 +++++++++++++++++++++-
>  1 files changed, 21 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/scsi/pm8001/pm80xx_hwi.c b/drivers/scsi/pm8001/pm80xx_hwi.c
> index 8efac42..912dfec 100644
> --- a/drivers/scsi/pm8001/pm80xx_hwi.c
> +++ b/drivers/scsi/pm8001/pm80xx_hwi.c
> @@ -967,6 +967,7 @@ pm80xx_chip_soft_rst(struct pm8001_hba_info *pm8001_ha)
>  {
>  	u32 regval;
>  	u32 bootloader_state;
> +	u32 ibutton0, ibutton1;
>  
>  	/* Check if MPI is in ready state to reset */
>  	if (mpi_uninit_check(pm8001_ha) != 0) {
> @@ -1025,7 +1026,26 @@ pm80xx_chip_soft_rst(struct pm8001_hba_info *pm8001_ha)
>  	if (-1 == check_fw_ready(pm8001_ha)) {
>  		PM8001_FAIL_DBG(pm8001_ha,
>  			pm8001_printk("Firmware is not ready!\n"));
> -		return -EBUSY;
> +		/* check iButton feature support for motherboard controller */
> +		if (pm8001_ha->pdev->subsystem_vendor !=
> +			PCI_VENDOR_ID_ADAPTEC2) {
> +			ibutton0 = pm8001_cr32(pm8001_ha, 0,
> +					MSGU_HOST_SCRATCH_PAD_6);
> +			ibutton1 = pm8001_cr32(pm8001_ha, 0,
> +					MSGU_HOST_SCRATCH_PAD_7);
> +			if (!ibutton0 && !ibutton1) {
> +				PM8001_FAIL_DBG(pm8001_ha,
> +					pm8001_printk("iButton Feature is"
> +					" not Available!!!\n"));
> +				return -EBUSY;
> +			}
> +			if (ibutton0 == 0xdeadbeef && ibutton1 == 0xdeadbeef) {
> +				PM8001_FAIL_DBG(pm8001_ha,
> +					pm8001_printk("CRC Check for iButton"
> +					" Feature Failed!!!\n"));
> +				return -EBUSY;
> +			}
> +		}
>  	}
>  	PM8001_INIT_DBG(pm8001_ha,
>  		pm8001_printk("SPCv soft reset Complete\n"));
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux