I believe aac hasn't worked in a long time. Was never enabled on amd64. On i386, it was disabled by
revision 1.406 date: 2005/03/18 22:39:59; author: deraadt; state: Exp; lines: +3 -3; shut off aac(4) unless Adaptec stops behaving like assholes Adaptec wouldn't give us documentation. FreeBSD people had docs, because employees were there. Wikipedia page uses the past-tense verb "was" in referring to them. Not sure this is worth it. > aac(4) doesn't build in the current status. The following diff fixes > compile errors. Also, with the AAC_DEBUG option. I removed the > prototypes of the inline functions in aacvar.h because of a K&R style > compile error and that the prototypes are directly followed by their > implementation. > > ok? > > Bye, > Jan > > Index: dev/ic/aac.c > =================================================================== > RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aac.c,v > retrieving revision 1.70 > diff -u -p -r1.70 aac.c > --- dev/ic/aac.c 11 Apr 2017 14:43:49 -0000 1.70 > +++ dev/ic/aac.c 5 Oct 2019 11:06:18 -0000 > @@ -2129,7 +2129,7 @@ aac_internal_cache_cmd(struct scsi_xfer > struct scsi_read_cap_data rcd; > u_int8_t target = link->target; > > - AAC_DPRINTF(AAC_D_CMD, ("aac_internal_cache_cmd: ", > + AAC_DPRINTF(AAC_D_CMD, ("%s: aac_internal_cache_cmd: ", > sc->aac_dev.dv_xname)); > > switch (xs->cmd->opcode) { > @@ -2277,7 +2277,7 @@ aac_scsi_cmd(struct scsi_xfer *xs) > blockcnt = _2btol(rwb->length); > } > > - AAC_DPRINTF(AAC_D_CMD, ("blkno=%d bcount=%d ", > + AAC_DPRINTF(AAC_D_CMD, ("opcode=%d blkno=%d bcount=%d ", > xs->cmd->opcode, blockno, blockcnt)); > > if (blockno >= sc->aac_hdr[target].hd_size || > Index: dev/ic/aacvar.h > =================================================================== > RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aacvar.h,v > retrieving revision 1.13 > diff -u -p -r1.13 aacvar.h > --- dev/ic/aacvar.h 1 Apr 2016 04:16:27 -0000 1.13 > +++ dev/ic/aacvar.h 5 Oct 2019 15:01:12 -0000 > @@ -429,11 +429,6 @@ int aac_attach(struct aac_softc *); > int aac_intr(void *); > > /* These all require correctly aligned buffers */ > -static __inline__ void aac_enc16(u_int8_t *, u_int16_t); > -static __inline__ void aac_enc32(u_int8_t *, u_int32_t); > -static __inline__ u_int16_t aac_dec16(u_int8_t *); > -static __inline__ u_int32_t aac_dec32(u_int8_t *); > - > static __inline__ void > aac_enc16(addr, value) > u_int8_t *addr; >