From patchwork Wed Oct 18 06:09:08 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Viswas G X-Patchwork-Id: 10013473 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 0836660215 for ; Wed, 18 Oct 2017 06:09:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id EBC6E27B81 for ; Wed, 18 Oct 2017 06:09:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DF34528138; Wed, 18 Oct 2017 06:09:34 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5887527B81 for ; Wed, 18 Oct 2017 06:09:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933431AbdJRGJd (ORCPT ); Wed, 18 Oct 2017 02:09:33 -0400 Received: from mail-sn1nam02on0059.outbound.protection.outlook.com ([104.47.36.59]:9680 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933199AbdJRGJc (ORCPT ); Wed, 18 Oct 2017 02:09:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mscc365.onmicrosoft.com; s=selector1-microsemi-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=8sBVEOQU0FHmcmSsy9oTIbP/QHytADhe/AFuXQtmxnU=; b=FJY3+EdZBsJB0Lu2PtsM0kh57PuwgLOcMavanjQ4drOsTKM9o2PXZ6Je9t0cESC4FmI3MnuOq6l8kMvphKBomYXN7lJFFcZpwBfPgKBlA61s5J0xh2jy2rwQ4aThHr52O2XZOylGQSyMdPE21743N7jljCqF6++u8icvFhHySaY= Received: from BN6PR02CA0079.namprd02.prod.outlook.com (2603:10b6:405:60::20) by BN1PR02MB135.namprd02.prod.outlook.com (2a01:111:e400:20::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.77.7; Wed, 18 Oct 2017 06:09:29 +0000 Received: from BN1BFFO11FD017.protection.gbl (2a01:111:f400:7c10::1:151) by BN6PR02CA0079.outlook.office365.com (2603:10b6:405:60::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.77.21 via Frontend Transport; Wed, 18 Oct 2017 06:09:29 +0000 Authentication-Results: spf=pass (sender IP is 208.19.100.21) smtp.mailfrom=microsemi.com; oracle.com; dkim=none (message not signed) header.d=none;oracle.com; dmarc=bestguesspass action=none header.from=microsemi.com; Received-SPF: Pass (protection.outlook.com: domain of microsemi.com designates 208.19.100.21 as permitted sender) receiver=protection.outlook.com; client-ip=208.19.100.21; helo=avsrvexchhts1.microsemi.net; Received: from avsrvexchhts1.microsemi.net (208.19.100.21) by BN1BFFO11FD017.mail.protection.outlook.com (10.58.144.80) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.20.77.10 via Frontend Transport; Wed, 18 Oct 2017 06:09:29 +0000 Received: from localhost (10.187.72.81) by avsrvexchhts1.microsemi.net (10.100.34.105) with Microsoft SMTP Server id 14.3.361.1; Tue, 17 Oct 2017 23:09:21 -0700 From: Viswas G To: CC: , , , , , Subject: [PATCH V4 2/9] pm80xx : ILA and inactive firmware version through sysfs Date: Wed, 18 Oct 2017 11:39:08 +0530 Message-ID: <20171018060915.8549-3-Viswas.G@microsemi.com> X-Mailer: git-send-email 2.12.3 In-Reply-To: <20171018060915.8549-1-Viswas.G@microsemi.com> References: <20171018060915.8549-1-Viswas.G@microsemi.com> MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:208.19.100.21; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(346002)(376002)(2980300002)(438002)(199003)(189002)(478600001)(54906003)(6916009)(316002)(2906002)(2950100002)(77096006)(4326008)(106002)(68736007)(8936002)(8676002)(356003)(86362001)(104016004)(5003940100001)(305945005)(81166006)(47776003)(69596002)(81156014)(5660300001)(2351001)(76506005)(16586007)(106466001)(48376002)(57986006)(6666003)(50226002)(189998001)(53936002)(1076002)(36756003)(76176999)(97736004)(50986999)(50466002); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR02MB135; H:avsrvexchhts1.microsemi.net; FPR:; SPF:Pass; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD017; 1:g9mOZBNMMOr9kn7zG9YCyGKZyFvcCUCZGV7lHWZcTvwh9B4eoKr52aeyYiKeyaYqQYWyDOyhxt398eZflneSOL4HwnJ8c29t82EpqQ7F8RouNzVUhxQ16PVPMFDMlBWG X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4f79f3d6-c90e-4415-f5fa-08d515eecb0b X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(2017030254152)(8251501002)(2017052603199)(201703131423075)(201703031133081)(201702281549075); SRVR:BN1PR02MB135; X-Microsoft-Exchange-Diagnostics: 1; BN1PR02MB135; 3:3c62nETILbMd+E3XTQMv2x7pF4LW/FNLx0eYwe8+u4ayi1yP4PAtETqik5J0lIejnpO0cz84GM3GJrsOAofJwNJBGm92tq2nsq2k8uCskj6bMjlgNWxLwc/4DF/IqNL5qfi9Lx+HWv5wRaDmLdPCgh2XoK6k6p8XrDo8gHTdrRRmgmO2tZLQcdzB6y5cmUSqVkhlh4yCw6rm8Pl6hDKkZ4uDhcrkdWCf666Lkj6Xw4+/s/3Q5Du9XXtE2QOIfLHZLZP6f9lenUxVKEDxJBAjK33kEeO8RtzCAsdhTumIvJn/mEPGE4ZvdMDl3/40Lp5L7s5Y+VxOvpfdY9zMIM+pPGN55qPWWgE0yVLP/kOoblQ=; 25:b4Dlohv//4es7aVW6mzBmQs12GC1/9Xur4gqB0BM8c72oSDpYCDMu16NTrnEc/RNsYJsmHFCsg3u73crlxhniy5iOrByk48S7tOZa7gdUgeGDd7f0DYEmZhg5RDkjHFrtR0zPXK14FRmZtYvAY6KFMVyxbiRbnGxWI/heZB9gaZ9WShhUCsO/5jrzymRH/iqmAQEiQmUtProAk4TgHhFVWD7RcdA0s2YlcJ1uJ2fjJcZLGBsifzuXJNx8gS0tBxbLI5OBRdVXenQkEOfvuVM8jpqbgvP+XEu/AJJR7Dl+sstYTINxA6gKve7O97DwWzmVpcd38OSLvwAMqwy/twamnZ48amHbRMiFGYcahKHpFY= X-MS-TrafficTypeDiagnostic: BN1PR02MB135: X-Microsoft-Exchange-Diagnostics: 1; BN1PR02MB135; 31:4Nf8EyoJZUNGWNXizLZtZO3MRUwW1P9dK1tJT8LwClXMUHLEL3mI9xdzws2HcMzN8tD7nQ0MYBO9bH/sFDzJlvPtVmS4tigSk4CR5hn0aBi8qYWyS2BEUDevrgkQ6EnVKQd8lfYbc79WMOPoZrhATaXY0AOuvWCPcPvlm3+nRgxTZeyTPy63PpgqBWIqJcSPmHoeWtlXjkVUm47Gcb/yEEvUfGkfwl7sVkw4dfIop50=; 20:cikSat21mffFfiErFGKgHH9mq67n6bmSLNnXLyON2iTwxLKf2MVFVZBYdbfJkPiZeCv2RuzLYhCubMGpjOjEbd+HnTH/ObZBVG5oeeyXVpylBcCCaEkYMldZ632uAFQYNwPezA78+t0Y1mIxSvTw3izK6lEHf3PUHT6KSosJTcl6X25AU3ZNIzgDtUGuE9Xl+gBKbdnCp+hYWQ0G5hOH7RUOtIop2V3hxpntynt1mN5eVxjScJ/+KWsMmAFz/n82u9JAAcaI3JlM3LzXYrMyeJc+DUQvimxlPtsakwHi9Fzt4r1qfpFOs2MSWS8u71ceJPJaN/K5+/9eFYLpZMZTo82r+TivnhSxwKIXTzMkXumnKtKw54LCC2Kp17n6rne5SjqJLn7XfnUiCZb2bRkpvW2kzG6C3mDQ61/LCBFihk8l+tuNE74YNlpCTHjv9Sagl1q4OaxNA7Jvx6RITNze8rcW8Cvgmnzboxh5W0DeihHRiZijBL+9L3bczTdc9M/f X-Exchange-Antispam-Report-Test: UriScan:(72170198267865); X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(100000703101)(100105400095)(10201501046)(93006095)(93004095)(3002001)(6055026)(6041248)(20161123564025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(20161123560025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN1PR02MB135; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN1PR02MB135; X-Microsoft-Exchange-Diagnostics: 1; BN1PR02MB135; 4:rgkrzifl1YvQis5Wg/ggZO6NZD5VdkrslPDDcZG4+X4SjSA6lkNvwfw+T2mM5m6hdAGzU/SZJUuEOpShi2MjFgVYgFbVyXZTHBfyVz/tH3KImNXh6TkpKDyocytBKrN3KKjJBVkNatf7vUqBj6ZIEfSJQBUWC4jC92KOHLwMI2A8Jweda9+aAVAGVXd5iyzlJS2peS6+dmr6aYkoW4dmMOMRc7B6katz2CBCWxyZvBqFzAlXSpFoeIMaRVoAqE9mGKvUZCFcHhuEY9RLyV5xNQ6MvxHgNMCRQe0FRoPFf7U= X-Forefront-PRVS: 0464DBBBC4 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR02MB135; 23:M0GIeMQN83crZjPQEan/Zd84JucudCgLtio5JVvAru?= =?us-ascii?Q?fAfplJkZIRckpa3G8Z3Y5LAcDoQO+x1VJzw5ftoszXnYMpUcZ/Jt5MSyJxSs?= =?us-ascii?Q?iA7DFzVyTjEn2RjqqsONJC8uLRPkeuheabf0QVfmAq+w27KwjVO11WTrr8FS?= =?us-ascii?Q?EKksqpxRjccR/iUq381+aNM24mNztFgXt1BVKr50KEgYSmW1igisk/VfhqTD?= =?us-ascii?Q?4y87PefSkniC3owXZ/C6QdbVHeYnx4GHxgzA1fDS0vmiexKstcA+QQWqTzGE?= =?us-ascii?Q?BUCXSdrRCG0GjPF6tnZmdgHCARBOV+u2wxUe59pQZ1ZHUEKHH9o+joK3Stv1?= =?us-ascii?Q?EOgBfxXEzF7ttKXjEx5xHogMLnpAKTOdDilCEg3Xj5Li59N9U+lIZvepRtU/?= =?us-ascii?Q?qk2eqxwD5mmscOkP2R7flbW7dv7KAOtcrtnMP1Mgy2oXH3HvvMA8J1CvU84I?= =?us-ascii?Q?tDaesQHMQfZDYsRH3prWUyIUw4pN2z7bHh9vaWJfYQq+N37CQcDiD43SeLqk?= =?us-ascii?Q?0a/h66DfNupgPqnyQvleRnz2JWFDPZR36r5t2HUTbSMj37p+vwjA5iNoRiQu?= =?us-ascii?Q?r8db6bizR1U5JDR5fpOoH9SIXdoBN7V0r3jI+Nsf3ddvKo+Mx53pMLtASAj4?= =?us-ascii?Q?NA67vl28lZm8fJ131qaZj7SAEk/zGD7tbZAOdI2GWazxQToYAhNczC+u9GGL?= =?us-ascii?Q?rbG9CvLuTTY0HAY4XeOMVU+BlX4FiNCUTa1At0mr1Gdx54BSJbrxrZ+dbTsw?= =?us-ascii?Q?6QbtEdPoWXXCM9jc7QSktxN+5HSC3YnjbeX3WAPlSsU2P3PWct2N0M3Dyxwz?= =?us-ascii?Q?PZqSah3C6NvdvDZPrbh1Hh+F8As9sT+69ozuRyBx/r/BETQSuVQ/tYHcqyKq?= =?us-ascii?Q?bShU+0dDQIBr3Hfpt42gxYefrB3/giqQmZTNXVeIA2xHMhfKRUN1vbufX/PH?= =?us-ascii?Q?QHqK5RxpgFaL3i/16YSpC5EmA3U1bRSp3uDM0/jH0JNxk2xppooGkbIXcgQ4?= =?us-ascii?Q?U86dvY2Dc8tYAWdQQwtGcxTbIWHYg2WhqOey4rIx5bNBt3GiYp6a/EvTNr1Z?= =?us-ascii?Q?4QzjM=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN1PR02MB135; 6:NjxKgtEIeWtuxIBIA7gBp1D/HwpLuaTJMnkgemkJ4Bi2dITqdBdHFd6SkJ0f2askS5PcjZzYx3FsiWsrY0ZIr4dQQo5SXV+ArAeyF5cD3VUwQ+cE7m67Xn5+iEswMNT+cE7u2uHWJR9RrU8JL0n44dc+6+3w5wVUIyVfaKXfThsHRIaiIrGOkBBM5KOWtTcWPeHr3bIebGOjyRXxc40H/2hhy3gx8Pvg4Xnh8OY+DRIvVNYGBTiJ95y/e7vwYJIdLdWGw6Lhwmd1w7pnWUSqfc+zqGmVDn0QBvUQ9sNH1CIf0VkT9La2vJ8lvCFzFGgh5+neBHFOksH7+5vIokC1UA==; 5:Pp0RmGG1UMItgVO4zYjHoWI8FRUNb6/CVLttxqJphFi1N8jhaRPF/rNb+K4r1qCMR6r3HcFOyFLzxKNoj3PnDMiKlWLNaz/W+NlQIdhe1GiQ93+ZDpc1XK5LiNArYvtod0orncM962xMDwUCfTI58g==; 24:j4VJcQd2bGBhV65cD9xkqYCeXYuyxZoSK3GbevAQ9JK5r5Bjotpl7grovsbZkHWDtxafXifVbEgMgX+hfSwGGGiwNu4hkOqE40d0W8ddC0o=; 7:uk3q6odttAuTNUZOy75lkqsWBJjrAmhEVVUOG6mPIfrXmccp5KmEmm9XNWQFIeSJ1CoKpo4yMnbD+pXQjcQ/PV2Fwwmyi4fR4P1pvbscd0Z0KTt3lMz0BcM+g8wN4V+Gh/F4oloBILzw7g1pTJaOlk61L9da82qXkEqWhjTEWXvg/I0EeHk8/sK/bFuzYOvedTKG//E2FsV0YpO1eqL+yx6MbiaDfcRL9bUZbKFXvYA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: microsemi.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Oct 2017 06:09:29.2319 (UTC) X-MS-Exchange-CrossTenant-Id: f267a5c8-86d8-4cc9-af71-1fd2c67c8fad X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f267a5c8-86d8-4cc9-af71-1fd2c67c8fad; Ip=[208.19.100.21]; Helo=[avsrvexchhts1.microsemi.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR02MB135 Sender: linux-scsi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-scsi@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Added support to read ILA version and inactive firmware version from MPI configuration table and export through sysfs. Signed-off-by: Deepak Ukey Signed-off-by: Viswas G Acked-by: Jack Wang --- drivers/scsi/pm8001/pm8001_ctl.c | 54 ++++++++++++++++++++++++++++++++++++++++ drivers/scsi/pm8001/pm8001_sas.h | 2 ++ drivers/scsi/pm8001/pm80xx_hwi.c | 5 ++++ drivers/scsi/pm8001/pm80xx_hwi.h | 2 ++ 4 files changed, 63 insertions(+) diff --git a/drivers/scsi/pm8001/pm8001_ctl.c b/drivers/scsi/pm8001/pm8001_ctl.c index be8269c8d127..596f3ff965f5 100644 --- a/drivers/scsi/pm8001/pm8001_ctl.c +++ b/drivers/scsi/pm8001/pm8001_ctl.c @@ -98,6 +98,58 @@ static ssize_t pm8001_ctl_fw_version_show(struct device *cdev, } } static DEVICE_ATTR(fw_version, S_IRUGO, pm8001_ctl_fw_version_show, NULL); + +/** + * pm8001_ctl_ila_version_show - ila version + * @cdev: pointer to embedded class device + * @buf: the buffer returned + * + * A sysfs 'read-only' shost attribute. + */ +static ssize_t pm8001_ctl_ila_version_show(struct device *cdev, + struct device_attribute *attr, char *buf) +{ + struct Scsi_Host *shost = class_to_shost(cdev); + struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); + struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; + + if (pm8001_ha->chip_id != chip_8001) { + return snprintf(buf, PAGE_SIZE, "%02x.%02x.%02x.%02x\n", + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 24), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 16), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version >> 8), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version)); + } + return 0; +} +static DEVICE_ATTR(ila_version, 0444, pm8001_ctl_ila_version_show, NULL); + +/** + * pm8001_ctl_inactive_fw_version_show - Inacative firmware version number + * @cdev: pointer to embedded class device + * @buf: the buffer returned + * + * A sysfs 'read-only' shost attribute. + */ +static ssize_t pm8001_ctl_inactive_fw_version_show(struct device *cdev, + struct device_attribute *attr, char *buf) +{ + struct Scsi_Host *shost = class_to_shost(cdev); + struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost); + struct pm8001_hba_info *pm8001_ha = sha->lldd_ha; + + if (pm8001_ha->chip_id != chip_8001) { + return snprintf(buf, PAGE_SIZE, "%02x.%02x.%02x.%02x\n", + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 24), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 16), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version >> 8), + (u8)(pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version)); + } + return 0; +} +static +DEVICE_ATTR(inc_fw_ver, 0444, pm8001_ctl_inactive_fw_version_show, NULL); + /** * pm8001_ctl_max_out_io_show - max outstanding io supported * @cdev: pointer to embedded class device @@ -748,6 +800,8 @@ struct device_attribute *pm8001_host_attrs[] = { &dev_attr_bios_version, &dev_attr_ib_log, &dev_attr_ob_log, + &dev_attr_ila_version, + &dev_attr_inc_fw_ver, NULL, }; diff --git a/drivers/scsi/pm8001/pm8001_sas.h b/drivers/scsi/pm8001/pm8001_sas.h index e81a8fa7ef1a..c75de413e062 100644 --- a/drivers/scsi/pm8001/pm8001_sas.h +++ b/drivers/scsi/pm8001/pm8001_sas.h @@ -404,6 +404,8 @@ union main_cfg_table { u32 port_recovery_timer; u32 interrupt_reassertion_delay; u32 fatal_n_non_fatal_dump; /* 0x28 */ + u32 ila_version; + u32 inc_fw_version; } pm80xx_tbl; }; diff --git a/drivers/scsi/pm8001/pm80xx_hwi.c b/drivers/scsi/pm8001/pm80xx_hwi.c index eb4fee61df72..8fb5ddf08cc4 100644 --- a/drivers/scsi/pm8001/pm80xx_hwi.c +++ b/drivers/scsi/pm8001/pm80xx_hwi.c @@ -312,6 +312,11 @@ static void read_main_config_table(struct pm8001_hba_info *pm8001_ha) /* read port recover and reset timeout */ pm8001_ha->main_cfg_tbl.pm80xx_tbl.port_recovery_timer = pm8001_mr32(address, MAIN_PORT_RECOVERY_TIMER); + /* read ILA and inactive firmware version */ + pm8001_ha->main_cfg_tbl.pm80xx_tbl.ila_version = + pm8001_mr32(address, MAIN_MPI_ILA_RELEASE_TYPE); + pm8001_ha->main_cfg_tbl.pm80xx_tbl.inc_fw_version = + pm8001_mr32(address, MAIN_MPI_INACTIVE_FW_VERSION); } /** diff --git a/drivers/scsi/pm8001/pm80xx_hwi.h b/drivers/scsi/pm8001/pm80xx_hwi.h index 82b8cf581da9..e36c5176f9a9 100644 --- a/drivers/scsi/pm8001/pm80xx_hwi.h +++ b/drivers/scsi/pm8001/pm80xx_hwi.h @@ -1445,6 +1445,8 @@ typedef struct SASProtocolTimerConfig SASProtocolTimerConfig_t; #define MAIN_SAS_PHY_ATTR_TABLE_OFFSET 0x90 /* DWORD 0x24 */ #define MAIN_PORT_RECOVERY_TIMER 0x94 /* DWORD 0x25 */ #define MAIN_INT_REASSERTION_DELAY 0x98 /* DWORD 0x26 */ +#define MAIN_MPI_ILA_RELEASE_TYPE 0xA4 /* DWORD 0x29 */ +#define MAIN_MPI_INACTIVE_FW_VERSION 0XB0 /* DWORD 0x2C */ /* Gereral Status Table offset - byte offset */ #define GST_GSTLEN_MPIS_OFFSET 0x00