diff options
author | Uwe Stuehler <uwe@cvs.openbsd.org> | 2007-06-19 07:58:06 +0000 |
---|---|---|
committer | Uwe Stuehler <uwe@cvs.openbsd.org> | 2007-06-19 07:58:06 +0000 |
commit | c0b983d64b1402b9380d16a37c9e8860f590a19b (patch) | |
tree | 8ba1a8738e9e0558d53b34f90e0cce101fb70266 | |
parent | 8913ceec0c7ee6036f62cc2b1561e848b94546a7 (diff) |
better debug output
-rw-r--r-- | sys/dev/sdmmc/sbt.c | 45 |
1 files changed, 30 insertions, 15 deletions
diff --git a/sys/dev/sdmmc/sbt.c b/sys/dev/sdmmc/sbt.c index 90416dff090..aa8a63ba62c 100644 --- a/sys/dev/sdmmc/sbt.c +++ b/sys/dev/sdmmc/sbt.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sbt.c,v 1.7 2007/06/06 23:18:06 uwe Exp $ */ +/* $OpenBSD: sbt.c,v 1.8 2007/06/19 07:58:05 uwe Exp $ */ /* * Copyright (c) 2007 Uwe Stuehler <uwe@openbsd.org> @@ -79,10 +79,14 @@ void sbt_start_acl(struct hci_unit *); void sbt_start_sco(struct hci_unit *); #undef DPRINTF +#define SBT_DEBUG #ifdef SBT_DEBUG +int sbt_debug = 1; #define DPRINTF(s) printf s +#define DNPRINTF(n, s) do { if ((n) <= sbt_debug) printf s; } while (0) #else #define DPRINTF(s) do {} while (0) +#define DNPRINTF(n, s) do {} while (0) #endif #define DEVNAME(sc) ((sc)->sc_dev.dv_xname) @@ -215,7 +219,7 @@ sbt_write_packet(struct sbt_softc *sc, u_char *buf, size_t len) again: if (retry-- == 0) { - printf("sbt_write_cmd: giving up :-(\n"); + DPRINTF(("%s: sbt_write_cmd: giving up\n", DEVNAME(sc))); return error; } @@ -229,13 +233,15 @@ again: hdr[2] = (pktlen >> 16) & 0xff; error = sdmmc_io_write_multi_1(sc->sc_sf, SBT_REG_DAT, hdr, 3); if (error) { - DPRINTF(("sbt_write_packet: failed to send length\n")); + DPRINTF(("%s: sbt_write_packet: failed to send length\n", + DEVNAME(sc))); goto again; } error = sdmmc_io_write_multi_1(sc->sc_sf, SBT_REG_DAT, buf, len); if (error) { - DPRINTF(("sbt_write_packet: failed to send packet data\n")); + DPRINTF(("%s: sbt_write_packet: failed to send packet data\n", + DEVNAME(sc))); goto again; } return 0; @@ -250,20 +256,24 @@ sbt_read_packet(struct sbt_softc *sc, u_char *buf, size_t *lenp) error = sdmmc_io_read_multi_1(sc->sc_sf, SBT_REG_DAT, hdr, 3); if (error) { - DPRINTF(("sbt_read_packet: failed to read length\n")); + DPRINTF(("%s: sbt_read_packet: failed to read length\n", + DEVNAME(sc))); goto out; } len = (hdr[0] | (hdr[1] << 8) | (hdr[2] << 16)) - 3; if (len > *lenp) { - DPRINTF(("sbt_read_packet: len %u > %u\n", len, *lenp)); + DPRINTF(("%s: sbt_read_packet: len %u > %u\n", + DEVNAME(sc), len, *lenp)); error = ENOBUFS; goto out; } - DPRINTF(("sbt_read_packet: reading len %u bytes\n", len)); + DNPRINTF(2,("%s: sbt_read_packet: reading len %u bytes\n", + DEVNAME(sc), len)); error = sdmmc_io_read_multi_1(sc->sc_sf, SBT_REG_DAT, buf, len); if (error) { - DPRINTF(("sbt_read_packet: failed to read packet data\n")); + DPRINTF(("%s: sbt_read_packet: failed to read packet data\n", + DEVNAME(sc))); goto out; } @@ -311,13 +321,13 @@ sbt_intr(void *arg) len = SBT_PKT_BUFSIZ; if (sbt_read_packet(sc, sc->sc_buf, &len) != 0 || len == 0) { - printf("sbt_intr: read failed\n"); + DPRINTF(("%s: sbt_intr: read failed\n", DEVNAME(sc))); goto eoi; } MGETHDR(m, M_DONTWAIT, MT_DATA); if (m == NULL) { - printf("sbt_intr: MGETHDR failed\n"); + DPRINTF(("%s: sbt_intr: MGETHDR failed\n", DEVNAME(sc))); goto eoi; } @@ -327,7 +337,7 @@ sbt_intr(void *arg) m->m_pkthdr.len = len; m->m_len = MIN(MHLEN, m->m_pkthdr.len); } else { - printf("sbt_intr: m_copyback failed\n"); + DPRINTF(("%s: sbt_intr: m_copyback failed\n", DEVNAME(sc))); m_free(m); m = NULL; } @@ -336,12 +346,18 @@ eoi: if (m != NULL) { switch (sc->sc_buf[0]) { case HCI_ACL_DATA_PKT: + DNPRINTF(1,("%s: recv ACL packet (%d bytes)\n", + DEVNAME(sc), m->m_pkthdr.len)); hci_input_acl(&sc->sc_unit, m); break; case HCI_SCO_DATA_PKT: + DNPRINTF(1,("%s: recv SCO packet (%d bytes)\n", + DEVNAME(sc), m->m_pkthdr.len)); hci_input_sco(&sc->sc_unit, m); break; case HCI_EVENT_PKT: + DNPRINTF(1,("%s: recv EVENT packet (%d bytes)\n", + DEVNAME(sc), m->m_pkthdr.len)); hci_input_event(&sc->sc_unit, m); break; default: @@ -424,8 +440,8 @@ sbt_start(struct hci_unit *unit, struct ifqueue *q, int xmit) what = "SCO"; break; } - printf("%s: xmit %s packet (%d bytes)\n", - unit->hci_devname, what, m->m_pkthdr.len); + DNPRINTF(1,("%s: xmit %s packet (%d bytes)\n", DEVNAME(sc), + what, m->m_pkthdr.len)); #endif unit->hci_flags |= xmit; @@ -435,8 +451,7 @@ sbt_start(struct hci_unit *unit, struct ifqueue *q, int xmit) m_freem(m); if (sbt_write_packet(sc, sc->sc_buf, len)) - printf("%s: sbt_write_packet failed\n", - unit->hci_devname); + DPRINTF(("%s: sbt_write_packet failed\n", DEVNAME(sc))); unit->hci_flags &= ~xmit; } |