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