History log of /openbsd/sys/dev/ic/mfireg.h (Results 1 – 25 of 52)
Revision Date Author Comments
# 45495268 16-Sep-2022 stsp <stsp@openbsd.org>

Make mfii(4) recover from firmware FAULT state on startup.

In case firmware initially comes up in FAULT state, reset the device and
give it one more chance to attach successfully. The Linux megaraid

Make mfii(4) recover from firmware FAULT state on startup.

In case firmware initially comes up in FAULT state, reset the device and
give it one more chance to attach successfully. The Linux megaraid_sas
driver applies the same workaround in this case. There seems to be a bug
in some firmware versions which can trigger this behaviour; see mainline
Linux commit 6431f5d7c6025f8b007af06ea090de308f7e6881

Problem observed by me with mfii(4) attached via KVM PCI-passthrough:
mfii0 at pci0 dev 2 function 0 "Symbios Logic MegaRAID SAS2208" rev 0x05: msi
mfii0: firmware fault

With this workaround in place, attachment succeeds and the device works:
mfii0 at pci0 dev 2 function 0 "Symbios Logic MegaRAID SAS2208" rev 0x05: msi
mfii0: firmware fault; attempting full device reset, this can take some time
mfii0: "RAID Ctrl SAS 6G 1GB (D3116C)", firmware 23.29.0-0019, 1024MB cache

Tested for regressions on bare metal by Hrvoje with two different adapters:
mfii0 at pci1 dev 0 function 0 "Symbios Logic MegaRAID SAS3508" rev 0x01: msi
mfii0: "PERC H740P Mini ", firmware 51.16.0-4076, 8192MB cache
mfii0 at pci4 dev 0 function 0 "Symbios Logic MegaRAID SAS2208" rev 0x05: msi
mfii0: "ServeRAID M5110", firmware 23.34.0-0023, 512MB cache

ok jmatthew@

show more ...


# 4b1a56af 09-Jan-2022 jsg <jsg@openbsd.org>

spelling
feedback and ok tb@ jmc@ ok ratchov@


# f4b58f5a 13-Feb-2020 krw <krw@openbsd.org>

Nuke *_minphys() functions that either simply apply MAXPHYS or do
nothing at all. MAXPHYS will be applied in minphys() and nothing at
all, well, doesn't do anything.

Also remove any '#define <blah>

Nuke *_minphys() functions that either simply apply MAXPHYS or do
nothing at all. MAXPHYS will be applied in minphys() and nothing at
all, well, doesn't do anything.

Also remove any '#define <blah> MAXPHYS' statements used solely to
disguise MAXPHYS in said functions.

show more ...


# 4a46fe5a 18-May-2018 jmatthew <jmatthew@openbsd.org>

Add bio(4) and sensors for mfii(4), based on code from mfi(4). Most of the
work was done by Naoki Fukaumi, some tweaks and adjustment to match the
preceding changes by me. Tested on SAS2208, SAS300

Add bio(4) and sensors for mfii(4), based on code from mfi(4). Most of the
work was done by Naoki Fukaumi, some tweaks and adjustment to match the
preceding changes by me. Tested on SAS2208, SAS3008, SAS3108, SAS3508.

ok dlg@

show more ...


# 4b9ed48f 07-Feb-2017 dlg <dlg@openbsd.org>

pull struct mfi_evtarg_pd_state out of struct mfi_evt_detail.

this lets me pass the specific argument to an aen handler in mfii.
it also unbreaks the tree.

found by jmatthew@


# ffb13b43 23-Jan-2017 dlg <dlg@openbsd.org>

massage some event related details.

turn the enum of event argument types into a series of #defines so
when you printf the arg type you can search for the number and get
an answer without having to

massage some event related details.

turn the enum of event argument types into a series of #defines so
when you printf the arg type you can search for the number and get
an answer without having to count lines.

add a struct for extended physical address arguments in event
messages.

add a list of event types.

show more ...


# 520e821e 23-Jan-2017 dlg <dlg@openbsd.org>

represent the mbox layout with union instead of an array of bytes.

memcpying uint16_ts into inconsistently addressed offsets is hard
to read, and this makes future work easier to implement.

tested

represent the mbox layout with union instead of an array of bytes.

memcpying uint16_ts into inconsistently addressed offsets is hard
to read, and this makes future work easier to implement.

tested on mfi(4) and mfii(4)

show more ...


# 62f7c8fb 14-Aug-2016 dlg <dlg@openbsd.org>

change some types in bio from u_quad_t to uint64_t, and fix casts in
drivers that fill that field in too.

quad types are going away.


# 6102fee9 14-Aug-2016 dlg <dlg@openbsd.org>

replace u_quad_t with uint64_t.

guenther is proposing the removal of u_quad_t. uint64_t is more portable.

tested on a perc5 and perc6, no functional change.


# d865b7d2 29-May-2015 uebayasi <uebayasi@openbsd.org>

Initial addition of ``Patrol Read'' support in bio(4), biocto(8), and
mfi(4). Based on FreeBSD, but done without mfiutil(8).

OK deraadt@


# 89a05e1c 09-Jan-2015 yasuoka <yasuoka@openbsd.org>

Add support DIOC{G,S}CACHE to mfi(4). Cache of disk on mfi(4) will
be enabled by default. Also if the controller doesn't have any RAM,
the cache on the physical disk will be enabled.

discuss with

Add support DIOC{G,S}CACHE to mfi(4). Cache of disk on mfi(4) will
be enabled by default. Also if the controller doesn't have any RAM,
the cache on the physical disk will be enabled.

discuss with jsg tsubai
ok dlg

show more ...


# 5b92aaac 15-Aug-2014 yasuoka <yasuoka@openbsd.org>

Create a function which loads sgd in the mfi_iop_ops struct so that skinny
adapters can use "IEEE sgl".

tested dlg yasuoka
ok dlg jsg


# 0704c0ab 03-May-2013 dlg <dlg@openbsd.org>

break out the battery status into excruciating detail. makes it harder for
$VENDOR to complain about a lack of diagnostic material from their crappy
mgmt tools if you're not running an operating syst

break out the battery status into excruciating detail. makes it harder for
$VENDOR to complain about a lack of diagnostic material from their crappy
mgmt tools if you're not running an operating system they support.

show more ...


# 2ee2f048 01-May-2013 dlg <dlg@openbsd.org>

provide a sensor for the battery backup unit (bbu) on mfi boards that
support it.

now i can tell (a bit better) why io might be slow on some of my boxes.


# 4fab0ec3 01-May-2013 dlg <dlg@openbsd.org>

there's some extra bits for the bbu status that freebsd dont have. provide
a %b thing for them too.

now i just have to figure out how to represent this nicely:

mfi0: fw_status 0xc00<REPLACE_PACK,CA

there's some extra bits for the bbu status that freebsd dont have. provide
a %b thing for them too.

now i just have to figure out how to represent this nicely:

mfi0: fw_status 0xc00<REPLACE_PACK,CAPACITY_LOW>

:(

show more ...


# eb997c0e 01-May-2013 dlg <dlg@openbsd.org>

provide a couple of %b things for mfi_hw_present and mfi_adapter_ops cos
im somehow too lazy to read a %x and look for a couple of bits set, but not
lazy enough to not write a %b thing.


# 1bd3771e 30-Apr-2013 dlg <dlg@openbsd.org>

white space fixes


# be8a0323 30-Apr-2013 dlg <dlg@openbsd.org>

use MR_DCMD consistently. some MD_DCMD was in there somehow.


# 71023bd1 30-Apr-2013 dlg <dlg@openbsd.org>

pull in BBU bits from freebsd


# 57e26195 17-Aug-2012 dlg <dlg@openbsd.org>

add support for "physical devices" on skinny controllers.

these controllers let you specify disks that should be accessed directly
rather than be part of logical volumes. apparently you can plug in

add support for "physical devices" on skinny controllers.

these controllers let you specify disks that should be accessed directly
rather than be part of logical volumes. apparently you can plug in things
like tape drives too.

anyway, physical devices are exposed via a separate scsibus attached to
mfi.

ok mikeb@

show more ...


# 05c385e3 13-Aug-2012 dlg <dlg@openbsd.org>

get rid of the last foo_lo and foo_hi bits i could find in the hardware
structures and use htole64 instead of htole32(addr >> 32); htole32(addr);

gets rid of "handy" stack variables to get the dva t

get rid of the last foo_lo and foo_hi bits i could find in the hardware
structures and use htole64 instead of htole32(addr >> 32); htole32(addr);

gets rid of "handy" stack variables to get the dva to 64bits.

sprinkle some more byte swaps for things that should have it.

tested on a perc5 (xscale)

show more ...


# 27090ca1 13-Aug-2012 dlg <dlg@openbsd.org>

replace uint32_ts for hi and lo addresses in the mfi_init_ hardware
descriptors with single uint64_ts. theyre not some weird middle
endian thing. this makes the code more readable.

add some missing

replace uint32_ts for hi and lo addresses in the mfi_init_ hardware
descriptors with single uint64_ts. theyre not some weird middle
endian thing. this makes the code more readable.

add some missing htole32s to the code while here.

tested on a perc5 (xscale).

show more ...


# 712259f5 12-Jan-2012 dlg <dlg@openbsd.org>

add support for skinny variants.

from Alexey Suslikov
reviewed by marco


# a4367147 08-Apr-2011 marco <marco@openbsd.org>

more spaces


# 654b243f 28-Jan-2009 marco <marco@openbsd.org>

Add support for next generation megaraid sas raid controllers.
From Jim Giannoules <gortag@gmail.com>


123