<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/mpi3mr, branch releng/14.4</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F14.4</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F14.4'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2025-04-30T17:05:54Z</updated>
<entry>
<title>mpi3mr: modified the log messages to be on a single line</title>
<updated>2025-04-30T17:05:54Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:41:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b794f3126c823850f4a13ffa73ea4885013f4fd4'/>
<id>urn:sha1:b794f3126c823850f4a13ffa73ea4885013f4fd4</id>
<content type='text'>
qThis change was made after feedback from upstream, aiming to align with
the style guide for consistent log formatting. No functional changes
were made to the driver, only the formatting of the log messages.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49799

(cherry picked from commit 4494ea5406f79a6cb2d3631a723eb286ca96a9b9)
</content>
</entry>
<entry>
<title>mpi3mr: Update Driver Version to 8.14.0.2.0</title>
<updated>2025-04-30T17:05:54Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:40:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e6d4b221ba7c58d4f86335bc57ed429d84d95258'/>
<id>urn:sha1:e6d4b221ba7c58d4f86335bc57ed429d84d95258</id>
<content type='text'>
The driver version has been updated to 8.14.0.2.0 to reflect the
latest release. This is a version-only update with no functional
code changes.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49753

(cherry picked from commit f4d51d3e1a90dabbed26aacf1b58e20e23a19342)
</content>
</entry>
<entry>
<title>mpi3mr: Update Copyright Year to 2025</title>
<updated>2025-04-30T17:05:54Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:40:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f76b6e1c075b2c5f96361e6f0aaab12aea58a92b'/>
<id>urn:sha1:f76b6e1c075b2c5f96361e6f0aaab12aea58a92b</id>
<content type='text'>
All driver source files have been updated to reflect the year 2025.
This change is cosmetic and does not affect functionality.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49752

(cherry picked from commit 69be9a247b845b35146fed4575dacb565c9c18ba)
</content>
</entry>
<entry>
<title>mpi3mr: Process LOG Data Events in Interrupt Top Half for Early Notification</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:40:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=07070742fa7159368621baae6d547656e4b4752f'/>
<id>urn:sha1:07070742fa7159368621baae6d547656e4b4752f</id>
<content type='text'>
The driver now processes LOG Data events in the interrupt top
half instead of the bottom half. This allows LOG events to be
handled immediately upon receipt, reducing latency and enabling
early notification to the Library or applications.

This change ensures LOG event handling occurs closer to the
firmware's generation point, improving alignment with event-driven
diagnostic and monitoring mechanisms.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49751

(cherry picked from commit df8a74fca036a0ba8026f3ae3da830dffb922faa)
</content>
</entry>
<entry>
<title>mpi3mr: Enable Diag Save for All Diagnostic Fault Cases</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:40:04Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ec6fea480da5570534a4d9e8af7af56de411df79'/>
<id>urn:sha1:ec6fea480da5570534a4d9e8af7af56de411df79</id>
<content type='text'>
This patch ensures the driver sets the Diag Save bit for all
diagnostic fault conditions before issuing a Diagnostic Fault Reset.

The firmware now incorporates logic to manage snapdump saving
and requires the driver to always set the Diag Save bit to enable
this feature. This change supports improved diagnostic data
collection and fault handling.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49750

(cherry picked from commit b854677d970a11e87929fa95d0e4067f911faa62)
</content>
</entry>
<entry>
<title>mpi3mr: Block I/Os While Task Management is in Progress</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:39:43Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9980fb4d87ae68a48554444b8c4048dd73194c70'/>
<id>urn:sha1:9980fb4d87ae68a48554444b8c4048dd73194c70</id>
<content type='text'>
The driver previously blocked I/Os only for OS-initiated task
management commands. This patch extends the behavior to also
block I/Os during application-initiated task management
operations (excluding Task Abort).

Before submitting such commands to the firmware, I/O
submissions are paused for the respective device. Once the
command completes, I/O operations are resumed.

This ensures safe and consistent task management handling.

[[ Note: Warner landed this with the pending suggestion
since this change is good enough for 14.3, but chs' suggestion
for better atomics needs to be implemented soon ]]

Discussed with: imp, chs
Differential Revision:	https://reviews.freebsd.org/D49749

(cherry picked from commit 49445b54638f7b2d45942edd61c70fe0baa28f37)
</content>
</entry>
<entry>
<title>mpi3mr: Add NVData Parameter for Host Timestamp Synchronization</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:39:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=19981894d1330a1a3c655bfad82923bceebdf7d5'/>
<id>urn:sha1:19981894d1330a1a3c655bfad82923bceebdf7d5</id>
<content type='text'>
The driver now retrieves the Time Stamp value from Driver Page 1
during load and after controller reset. If the value is valid, it
is used to enable periodic host timestamp synchronization.

This adds a tunable NVData parameter to control the behavior of
host time sync, enhancing flexibility and platform-specific control.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49748

(cherry picked from commit e80317babdb9044962dcbf16c69633579cd90b00)
</content>
</entry>
<entry>
<title>mpi3mr: Handle Insufficient Power Fault Code</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:35:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=05cf85775b2a120211ce5530acffd3b335543593'/>
<id>urn:sha1:05cf85775b2a120211ce5530acffd3b335543593</id>
<content type='text'>
The driver now checks for insufficient power faults during the load
phase and immediately fails initialization instead of retrying.

Additionally, if an insufficient power fault is detected by the watchdog
after the controller is up, the controller is marked as unrecoverable
instead of triggering a reset.

This improves fault handling and avoids unnecessary recovery attempts
in low-power conditions.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49747

(cherry picked from commit 116c8b18a2b5278df0d1982a683193c3dba6f30c)
</content>
</entry>
<entry>
<title>mpi3mr: Enhance Controller Enable Retry Logic in Host Drivers</title>
<updated>2025-04-30T17:05:53Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:34:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=94ede6230de240b4a733ceb55f3557674b41c8b4'/>
<id>urn:sha1:94ede6230de240b4a733ceb55f3557674b41c8b4</id>
<content type='text'>
This patch improves the retry logic during the IOC enable process.
If a controller faults or if the reset history bit is detected during
the ready status check, the driver will retry initialization up to three
times or until 510 seconds have passed.

A soft reset will also be issued if the controller is detected while
waiting for the ready status.

This enhances reliability during controller initialization.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49746

(cherry picked from commit e977ed50bb2b9fce5e285756673286c5fcfb1f31)
</content>
</entry>
<entry>
<title>mpi3mr: Set Driver Capability for OS Exposure in IOCInit</title>
<updated>2025-04-30T17:05:52Z</updated>
<author>
<name>Chandrakanth patil</name>
<email>chandrakanth.patil@broadcom.com</email>
</author>
<published>2025-04-27T23:34:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=22b4023cba4e40520090eefff5bdf8b841f754a8'/>
<id>urn:sha1:22b4023cba4e40520090eefff5bdf8b841f754a8</id>
<content type='text'>
This patch updates the driver to set the OSExposure field in DriverCapability
during IOCInit to MPI3_IOCINIT_DRIVERCAP_OSEXPOSURE_NO_SPECIAL(0x1), aligning
with the latest MPI specification version 36.

Reviewed by:	ssaxena, imp
Differential Revision:	https://reviews.freebsd.org/D49745

(cherry picked from commit d14c4ea0caebb9d0ddb613e348cb8c1a19e8d8fc)
</content>
</entry>
</feed>
