I guess I mean: unless you plan to get this working, maybe it should
be deleted to create a vaccum (which some historical can fill at some
later point with working code)

I vaguely remember newer Adaptec controllers becoming quite different
from previous ones in little ways, all undocumented, and causing much
frustration.  This event described happened during our push for greater
vendor documentation.  Many vendors provided documentation to the
open source community, and flourished.  Others, not so much on either
count.  I don't know if there was a relationship between the two but
I can hope.

> 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;
> > 
> 

Reply via email to