Module Name: src
Committed By: thorpej
Date: Fri May 7 16:55:58 UTC 2021
Modified Files:
src/sys/dev/tc: ioasic_subr.c ioasicvar.h tc.c tcvar.h
Log Message:
A small bit of const poisoning.
To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/tc/ioasic_subr.c
cvs rdiff -u -r1.22 -r1.23 src/sys/dev/tc/ioasicvar.h
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/tc/tc.c
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/tc/tcvar.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/tc/ioasic_subr.c
diff -u src/sys/dev/tc/ioasic_subr.c:1.14 src/sys/dev/tc/ioasic_subr.c:1.15
--- src/sys/dev/tc/ioasic_subr.c:1.14 Sat Apr 24 23:36:59 2021
+++ src/sys/dev/tc/ioasic_subr.c Fri May 7 16:55:58 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: ioasic_subr.c,v 1.14 2021/04/24 23:36:59 thorpej Exp $ */
+/* $NetBSD: ioasic_subr.c,v 1.15 2021/05/07 16:55:58 thorpej Exp $ */
/*
* Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University.
@@ -29,7 +29,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ioasic_subr.c,v 1.14 2021/04/24 23:36:59 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ioasic_subr.c,v 1.15 2021/05/07 16:55:58 thorpej Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -53,8 +53,8 @@ ioasicprint(void *aux, const char *pnp)
}
void
-ioasic_attach_devs(struct ioasic_softc *sc, struct ioasic_dev *ioasic_devs,
- int ioasic_ndevs)
+ioasic_attach_devs(struct ioasic_softc *sc,
+ const struct ioasic_dev *ioasic_devs, int ioasic_ndevs)
{
struct ioasicdev_attach_args idev;
int i;
Index: src/sys/dev/tc/ioasicvar.h
diff -u src/sys/dev/tc/ioasicvar.h:1.22 src/sys/dev/tc/ioasicvar.h:1.23
--- src/sys/dev/tc/ioasicvar.h:1.22 Sat Jun 4 01:49:44 2011
+++ src/sys/dev/tc/ioasicvar.h Fri May 7 16:55:58 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: ioasicvar.h,v 1.22 2011/06/04 01:49:44 tsutsui Exp $ */
+/* $NetBSD: ioasicvar.h,v 1.23 2021/05/07 16:55:58 thorpej Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
@@ -67,6 +67,6 @@ void ioasic_intr_establish(device_t,
int, int (*)(void *), void *);
void ioasic_intr_disestablish(device_t, void *);
void ioasic_attach_devs(struct ioasic_softc *,
- struct ioasic_dev *, int);
+ const struct ioasic_dev *, int);
#endif /* _DEV_TC_IOASICVAR_ */
Index: src/sys/dev/tc/tc.c
diff -u src/sys/dev/tc/tc.c:1.57 src/sys/dev/tc/tc.c:1.58
--- src/sys/dev/tc/tc.c:1.57 Sat Apr 24 23:36:59 2021
+++ src/sys/dev/tc/tc.c Fri May 7 16:55:58 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: tc.c,v 1.57 2021/04/24 23:36:59 thorpej Exp $ */
+/* $NetBSD: tc.c,v 1.58 2021/05/07 16:55:58 thorpej Exp $ */
/*
* Copyright (c) 1994, 1995 Carnegie-Mellon University.
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tc.c,v 1.57 2021/04/24 23:36:59 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tc.c,v 1.58 2021/05/07 16:55:58 thorpej Exp $");
#include "opt_tcverbose.h"
@@ -73,7 +73,7 @@ tcattach(device_t parent, device_t self,
struct tcbus_attach_args *tba = aux;
struct tc_attach_args ta;
const struct tc_builtin *builtin;
- struct tc_slotdesc *slot;
+ const struct tc_slotdesc *slot;
tc_addr_t tcaddr;
int i;
int locs[TCCF_NLOCS];
@@ -129,7 +129,8 @@ tcattach(device_t parent, device_t self,
/*
* Mark the slot as used, so we don't check it later.
*/
- sc->sc_slots[builtin->tcb_slot].tcs_used = 1;
+ KASSERT(builtin->tcb_slot >=0 && builtin->tcb_slot <= 31);
+ sc->sc_slots_used |= __BIT(builtin->tcb_slot);
locs[TCCF_SLOT] = builtin->tcb_slot;
locs[TCCF_OFFSET] = builtin->tcb_offset;
@@ -149,7 +150,7 @@ tcattach(device_t parent, device_t self,
slot = &sc->sc_slots[i];
/* If already checked above, don't look again now. */
- if (slot->tcs_used)
+ if (sc->sc_slots_used & __BIT(i))
continue;
/*
@@ -175,7 +176,7 @@ tcattach(device_t parent, device_t self,
/*
* Mark the slot as used.
*/
- slot->tcs_used = 1;
+ sc->sc_slots_used |= __BIT(i);
locs[TCCF_SLOT] = i;
locs[TCCF_OFFSET] = 0;
Index: src/sys/dev/tc/tcvar.h
diff -u src/sys/dev/tc/tcvar.h:1.27 src/sys/dev/tc/tcvar.h:1.28
--- src/sys/dev/tc/tcvar.h:1.27 Fri Jun 9 17:55:18 2017
+++ src/sys/dev/tc/tcvar.h Fri May 7 16:55:58 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: tcvar.h,v 1.27 2017/06/09 17:55:18 flxd Exp $ */
+/* $NetBSD: tcvar.h,v 1.28 2021/05/07 16:55:58 thorpej Exp $ */
/*
* Copyright (c) 1995 Carnegie-Mellon University.
@@ -68,7 +68,8 @@ struct tc_softc {
int sc_speed;
int sc_nslots;
- struct tc_slotdesc *sc_slots;
+ const struct tc_slotdesc *sc_slots;
+ uint32_t sc_slots_used;
const struct evcnt *(*sc_intr_evcnt)(device_t, void *);
void (*sc_intr_establish)(device_t, void *,
@@ -87,7 +88,7 @@ struct tcbus_attach_args {
/* Bus information */
u_int tba_speed; /* see TC_SPEED_* below */
u_int tba_nslots;
- struct tc_slotdesc *tba_slots;
+ const struct tc_slotdesc *tba_slots;
u_int tba_nbuiltins;
const struct tc_builtin *tba_builtins;
@@ -122,7 +123,6 @@ struct tc_attach_args {
struct tc_slotdesc {
tc_addr_t tcs_addr;
void *tcs_cookie;
- int tcs_used;
};
/*