History log of /openbsd-current/sys/arch/sparc64/dev/cbus.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.17 24-Oct-2021 mpi

Constify struct cfattach.

ok visa@ a long time ago


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.16 20-Dec-2016 jsg

no need to test if an array is non-NULL
ok kettenis@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.15 27-Sep-2015 kettenis

Store the target CPU in "struct intrhand" and use it in intr_barrier().
Also use it wherever we configure the hardware to direct interrupts to the
right CPU.


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.14 25-Jan-2015 kettenis

Rework cbus(4) interrupt support a bit. Instead of merging devhandle and
devino into a pseudo-sysino, directly use the devino as the ihandle. The
devhandle is stored in the cbus softc, and accessed through the bus space
tag. This allows us to have more than 256 interrupts on a single cbus, and
avoids relying on the lower bits of the devhandle being zero.


# 1.13 24-Nov-2014 kettenis

If we use the vintr cookie to point at the interrupt handler struct, we
shouldn't link it into the table.


# 1.12 24-Nov-2014 kettenis

Use the pointer to "struct intrhand" as the vintr cookie.


Revision tags: OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.11 16-Jul-2013 kettenis

Add support for BUS_INTR_ESTABLISH_MPSAFE.


Revision tags: OPENBSD_5_3_BASE
# 1.10 23-Nov-2012 kettenis

Change the way we encode devhandle and devino in the sysino such that we can
handle up to 256 different interrupt vectors on cbus(4). This is enough to
handle 128 channels.


# 1.9 26-Oct-2012 kettenis

Turns out that for devices that attach to cbus(4), it is better to disable
interrupts up-front and explicitly enabling them later than the other way
around.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.8 11-Nov-2010 miod

Replace snprintf(foo, sizeof foo, "%s", ...) with strlcpy. ok deraadt@ krw@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE
# 1.7 14-Dec-2009 kettenis

Add wrapper functions to enable/disable interrupts and manipulate their state.


Revision tags: OPENBSD_4_6_BASE
# 1.6 10-May-2009 kettenis

Handle devices with multiple ports.


# 1.5 12-Apr-2009 kettenis

Move code handling Machine Descriptions out of the cbus(4) driver.


# 1.4 04-Apr-2009 kettenis

Cleanup debug printfs.


Revision tags: OPENBSD_4_5_BASE
# 1.3 04-Jan-2009 kettenis

Make cbus_print() less chatty and use "chan" instead of "id" when printing the
logical domain channel ID.


# 1.2 01-Jan-2009 kettenis

Add code to handle virtual interrupt for channel devices.


# 1.1 30-Dec-2008 kettenis

Add cbus(4), a virtual bus for devices that use logical domain channels as
found on sun4v systems with multiple domains configured.


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.16 20-Dec-2016 jsg

no need to test if an array is non-NULL
ok kettenis@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.15 27-Sep-2015 kettenis

Store the target CPU in "struct intrhand" and use it in intr_barrier().
Also use it wherever we configure the hardware to direct interrupts to the
right CPU.


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.14 25-Jan-2015 kettenis

Rework cbus(4) interrupt support a bit. Instead of merging devhandle and
devino into a pseudo-sysino, directly use the devino as the ihandle. The
devhandle is stored in the cbus softc, and accessed through the bus space
tag. This allows us to have more than 256 interrupts on a single cbus, and
avoids relying on the lower bits of the devhandle being zero.


# 1.13 24-Nov-2014 kettenis

If we use the vintr cookie to point at the interrupt handler struct, we
shouldn't link it into the table.


# 1.12 24-Nov-2014 kettenis

Use the pointer to "struct intrhand" as the vintr cookie.


Revision tags: OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.11 16-Jul-2013 kettenis

Add support for BUS_INTR_ESTABLISH_MPSAFE.


Revision tags: OPENBSD_5_3_BASE
# 1.10 23-Nov-2012 kettenis

Change the way we encode devhandle and devino in the sysino such that we can
handle up to 256 different interrupt vectors on cbus(4). This is enough to
handle 128 channels.


# 1.9 26-Oct-2012 kettenis

Turns out that for devices that attach to cbus(4), it is better to disable
interrupts up-front and explicitly enabling them later than the other way
around.


Revision tags: OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.8 11-Nov-2010 miod

Replace snprintf(foo, sizeof foo, "%s", ...) with strlcpy. ok deraadt@ krw@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE
# 1.7 14-Dec-2009 kettenis

Add wrapper functions to enable/disable interrupts and manipulate their state.


Revision tags: OPENBSD_4_6_BASE
# 1.6 10-May-2009 kettenis

Handle devices with multiple ports.


# 1.5 12-Apr-2009 kettenis

Move code handling Machine Descriptions out of the cbus(4) driver.


# 1.4 04-Apr-2009 kettenis

Cleanup debug printfs.


Revision tags: OPENBSD_4_5_BASE
# 1.3 04-Jan-2009 kettenis

Make cbus_print() less chatty and use "chan" instead of "id" when printing the
logical domain channel ID.


# 1.2 01-Jan-2009 kettenis

Add code to handle virtual interrupt for channel devices.


# 1.1 30-Dec-2008 kettenis

Add cbus(4), a virtual bus for devices that use logical domain channels as
found on sun4v systems with multiple domains configured.