History log of /netbsd-src/sys/dev/ic/isp_netbsd.c (Results 1 – 25 of 99)
Revision Date Author Comments
# 100a3398 09-Feb-2024 andvar <andvar@NetBSD.org>

fix spelling mistakes, mainly in comments and log messages.


# c7fb772b 07-Aug-2021 thorpej <thorpej@NetBSD.org>

Merge thorpej-cfargs2.


# 2685996b 24-Apr-2021 thorpej <thorpej@NetBSD.org>

Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass a

Merge thorpej-cfargs branch:

Simplify and make extensible the config_search() / config_found() /
config_attach() interfaces: rather than having different variants for
which arguments you want pass along, just have a single call that
takes a variadic list of tag-value arguments.

Adjust all call sites:
- Simplify wherever possible; don't pass along arguments that aren't
actually needed.
- Don't be explicit about what interface attribute is attaching if
the device only has one. (More simplification.)
- Add a config_probe() function to be used in indirect configuiration
situations, making is visibly easier to see when indirect config is
in play, and allowing for future change in semantics. (As of now,
this is just a wrapper around config_match(), but that is an
implementation detail.)

Remove unnecessary or redundant interface attributes where they're not
needed.

There are currently 5 "cfargs" defined:
- CFARG_SUBMATCH (submatch function for direct config)
- CFARG_SEARCH (search function for indirect config)
- CFARG_IATTR (interface attribte)
- CFARG_LOCATORS (locators array)
- CFARG_DEVHANDLE (devhandle_t - wraps OFW, ACPI, etc. handles)

...and a sentinel value CFARG_EOL.

Add some extra sanity checking to ensure that interface attributes
aren't ambiguous.

Use CFARG_DEVHANDLE in MI FDT, OFW, and ACPI code, and macppc and shark
ports to associate those device handles with device_t instance. This
will trickle trough to more places over time (need back-end for pre-OFW
Sun OBP; any others?).

show more ...


# 33e6765f 05-Dec-2020 thorpej <thorpej@NetBSD.org>

Remove unnecessary inclusion of <sys/timevar.h>.


# 6b30f2aa 25-Sep-2019 maya <maya@NetBSD.org>

Make clang -Wformat-security happier by not passing a (constant) variable
as the format string,
const string msg; printf(msg)
-> printf("%s", msg);

the strings are all known and don't curr

Make clang -Wformat-security happier by not passing a (constant) variable
as the format string,
const string msg; printf(msg)
-> printf("%s", msg);

the strings are all known and don't currently contain format variables.

show more ...


# f97d527f 21-Sep-2019 maxv <maxv@NetBSD.org>

Remove unused function prototype. Reported by the lgtm bot.


# 0cbecf03 20-Sep-2019 christos <christos@NetBSD.org>

declare printflike functions and fix another printf format.
also change 0x%x -> %#x.


# 57c391ee 20-Sep-2019 maxv <maxv@NetBSD.org>

Fix argument.

Found by the lgtm bot.


# fbffadb9 03-Feb-2019 mrg <mrg@NetBSD.org>

- add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
this case, and thus can't be marked __dead easily


# d1579b2d 03-Sep-2018 riastradh <riastradh@NetBSD.org>

Rename min/max -> uimin/uimax for better honesty.

These functions are defined on unsigned int. The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a n

Rename min/max -> uimin/uimax for better honesty.

These functions are defined on unsigned int. The generic name
min/max should not silently truncate to 32 bits on 64-bit systems.
This is purely a name change -- no functional change intended.

HOWEVER! Some subsystems have

#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) > (b) ? (a) : (b))

even though our standard name for that is MIN/MAX. Although these
may invite multiple evaluation bugs, these do _not_ cause integer
truncation.

To avoid `fixing' these cases, I first changed the name in libkern,
and then compile-tested every file where min/max occurred in order to
confirm that it failed -- and thus confirm that nothing shadowed
min/max -- before changing it.

I have left a handful of bootloaders that are too annoying to
compile-test, and some dead code:

cobalt ews4800mips hp300 hppa ia64 luna68k vax
acorn32/if_ie.c (not included in any kernels)
macppc/if_gm.c (superseded by gem(4))

It should be easy to fix the fallout once identified -- this way of
doing things fails safe, and the goal here, after all, is to _avoid_
silent integer truncations, not introduce them.

Maybe one day we can reintroduce min/max as type-generic things that
never silently truncate. But we should avoid doing that for a while,
so that existing code has a chance to be detected by the compiler for
conversion to uimin/uimax without changing the semantics until we can
properly audit it all. (Who knows, maybe in some cases integer
truncation is actually intended!)

show more ...


# 930eafe8 28-Jul-2017 riastradh <riastradh@NetBSD.org>

Reject out-of-bounds channel index.

From Ilja Van Sprundel.


# a0f2bf7e 31-Dec-2014 christos <christos@NetBSD.org>

We can't sleep if we are called from the watchdog timeout.


# f0a7346d 18-Oct-2014 snj <snj@NetBSD.org>

src is too big these days to tolerate superfluous apostrophes. It's
"its", people!


# 0c3a48a0 21-Aug-2012 bouyer <bouyer@NetBSD.org>

Properly fill the struct timeval before using it: a timeout in microseconds has
to be converted to seconds and microseconds.
Fix KASSERT("usec >= 0 && usec < 1000000") in tvtohz().
While there, simpl

Properly fill the struct timeval before using it: a timeout in microseconds has
to be converted to seconds and microseconds.
Fix KASSERT("usec >= 0 && usec < 1000000") in tvtohz().
While there, simplify computation of to (avoids a timersub() in tvhzto()
and directly call tvtohz() with the interval).

show more ...


# 0ed4e661 12-Dec-2011 jdc <jdc@NetBSD.org>

Fix:
panic: kernel diagnostic assertion "usec >= 0 && usec < 1000000" failed: file "/usr/src/sys/kern/subr_time.c", line 92
by using timeradd(), rather than our own code, in the timeout calculating

Fix:
panic: kernel diagnostic assertion "usec >= 0 && usec < 1000000" failed: file "/usr/src/sys/kern/subr_time.c", line 92
by using timeradd(), rather than our own code, in the timeout calculating
loop. Idea from joerg@.

show more ...


# 60f1aed4 20-Sep-2010 mjacob <mjacob@NetBSD.org>

Multiple channel devices *should* be working. Remove the debug code
that was avoiding finding out.


# 06aa1abd 26-Mar-2010 mjacob <mjacob@NetBSD.org>

Synchronize with other platforms:

Strongly architect handles so we can more easily detect bogus
handles. This switches us to a full 32 bits for all handles.

Handle the case of FC disks disappear

Synchronize with other platforms:

Strongly architect handles so we can more easily detect bogus
handles. This switches us to a full 32 bits for all handles.

Handle the case of FC disks disappearing and then reappearing-
at least at the FC transport level.

Some better and finer control of debug and non-debug printouts.

show more ...


# 4176aa90 11-Jan-2010 mjacob <mjacob@NetBSD.org>

Keep track of what appear to be live Fibre Channel disks and store up the
Port WWNs for them as well as attaching them as a "port-wwn" property to
the device node in question. This allows MD code to

Keep track of what appear to be live Fibre Channel disks and store up the
Port WWNs for them as well as attaching them as a "port-wwn" property to
the device node in question. This allows MD code to find the boot device
on some platforms.

This is less clean than it should be. A better solution would be to make
some changes to the scsi infrastructure so that periphs can query and
use and store their own "native" transport addresses. However, that's
a much more invasive change and it is not clear how many ports or devices
really want or need that information (yet).

show more ...


# 91bbbb9e 07-Sep-2009 tsutsui <tsutsui@NetBSD.org>

Split device_t/softc.
Tested QLogic 1020 Fast Wide SCSI HBA at PCI.
Sbus attachment is untested, but not so much quirks in it.


# ad7d727f 25-Jun-2009 mjacob <mjacob@NetBSD.org>

Update ISP driver to latest and greatest. Includes support for the 8Gb part.


# 529e91fc 12-May-2009 cegger <cegger@NetBSD.org>

struct device * -> device_t, no functional changes intended.


# aa389c69 15-Jul-2008 christos <christos@NetBSD.org>

Use more timespecs internally. From Alexander Shishkin and me.
Welcome to 4.99.70, 30 more to go for 100.


# 70885129 08-Apr-2008 cegger <cegger@NetBSD.org>

use aprint_*_dev and device_xname


# 0e65dd74 11-Mar-2008 mjacob <mjacob@NetBSD.org>

Checkpoint of some fairly major isp(4) rototilling.

Reintroduce more of a 'channel' concept in preparation for NP-IV support.
This gets rid of the chanA/chanB concept as the 2400 can have up to 128

Checkpoint of some fairly major isp(4) rototilling.

Reintroduce more of a 'channel' concept in preparation for NP-IV support.
This gets rid of the chanA/chanB concept as the 2400 can have up to 128
virtual channels. Actually, with MID firmware you can also have the 2200
and 2300 support 'channels, but they do it with an FL-Port topology.
Because FC cards can now have 'channels', just about every support
function for fibre channel had to be redone to have a channel index
as well. Rototill isp_ioctl.h for channel stuff as well.

Pick up a lot of work about fabric management (hopefully better) and keep
work in place that will allow for dynamic attachment/detachment of devices
(if I can figure out how to make the midlayer support it).

Merge the target code with external trees. Eventually it might even
be sorted out on NetBSD.

Update some firmware stuff.

show more ...


# 88ab7da9 09-Jul-2007 ad <ad@NetBSD.org>

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements


1234