-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
scsi: mpi3mr: HDB allocation and posting for hardware and firmware bu…
…ffers To be able to debug controller problems it is beneficial to allocate and configure system/host memory buffers which can be used to capture hardware and firmware diagnostic information. Add functions required to allocate and post firmware and hardware diagnostic buffers to the controller and to set up automatic diagnostic capture triggers. Captures will be triggered under the following circumstances: 1. Firmware is in FAULT state. 2. Admin commands time out. 3. Controller reset caused due to I/O timeout Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-kbuild-all/202405151758.7xrJz6rp-lkp@intel.com/ Co-developed-by: Sathya Prakash <sathya.prakash@broadcom.com> Signed-off-by: Sathya Prakash <sathya.prakash@broadcom.com> Signed-off-by: Ranjan Kumar <ranjan.kumar@broadcom.com> Link: https://lore.kernel.org/r/20240626102646.14298-2-ranjan.kumar@broadcom.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
- Loading branch information
Ranjan Kumar
authored and
Martin K. Petersen
committed
Jun 27, 2024
1 parent
1613e60
commit fc44449
Showing
4 changed files
with
790 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
/* SPDX-License-Identifier: GPL-2.0-or-later */ | ||
/* | ||
* Copyright 2016-2024 Broadcom Inc. All rights reserved. | ||
*/ | ||
#ifndef MPI30_TOOL_H | ||
#define MPI30_TOOL_H 1 | ||
|
||
#define MPI3_DIAG_BUFFER_TYPE_TRACE (0x01) | ||
#define MPI3_DIAG_BUFFER_TYPE_FW (0x02) | ||
#define MPI3_DIAG_BUFFER_ACTION_RELEASE (0x01) | ||
|
||
struct mpi3_diag_buffer_post_request { | ||
__le16 host_tag; | ||
u8 ioc_use_only02; | ||
u8 function; | ||
__le16 ioc_use_only04; | ||
u8 ioc_use_only06; | ||
u8 msg_flags; | ||
__le16 change_count; | ||
__le16 reserved0a; | ||
u8 type; | ||
u8 reserved0d; | ||
__le16 reserved0e; | ||
__le64 address; | ||
__le32 length; | ||
__le32 reserved1c; | ||
}; | ||
|
||
struct mpi3_diag_buffer_manage_request { | ||
__le16 host_tag; | ||
u8 ioc_use_only02; | ||
u8 function; | ||
__le16 ioc_use_only04; | ||
u8 ioc_use_only06; | ||
u8 msg_flags; | ||
__le16 change_count; | ||
__le16 reserved0a; | ||
u8 type; | ||
u8 action; | ||
__le16 reserved0e; | ||
}; | ||
|
||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.