35#include "ddb/db_sym.h"
36#include "ddb/db_lex.h"
38#ifdef BXE_REG_NO_INLINE
140 snprintf(buf,
sizeof(buf),
"ELINK: %s", fmt);
141 device_printf(sc->
dev,
"%s", buf);
150 char tmp[128], buf[128];
152 snprintf(tmp,
sizeof(tmp),
"ELINK: %s", fmt);
153 snprintf(buf,
sizeof(buf), tmp, arg1);
154 device_printf(sc->
dev,
"%s", buf);
164 char tmp[128], buf[128];
166 snprintf(tmp,
sizeof(tmp),
"ELINK: %s", fmt);
167 snprintf(buf,
sizeof(buf), tmp, arg1, arg2);
168 device_printf(sc->
dev,
"%s", buf);
179 char tmp[128], buf[128];
181 snprintf(tmp,
sizeof(tmp),
"ELINK: %s", fmt);
182 snprintf(buf,
sizeof(buf), tmp, arg1, arg2, arg3);
183 device_printf(sc->
dev,
"%s", buf);
203 BLOGI(sc,
"++++++++++++ %s\n", tag);
204 strcpy(buf,
"** 000: ");
206 for (xx = 0; xx < len; xx++)
208 if ((xx != 0) && (xx % 16 == 0))
210 BLOGI(sc,
"%s\n", buf);
212 snprintf(c,
sizeof(c),
"%03x", xx);
217 snprintf(c,
sizeof(c),
"%02x ", *mem);
223 BLOGI(sc,
"%s\n", buf);
224 BLOGI(sc,
"------------ %s\n", tag);
242 BLOGI(sc,
"++++++++++++ %s\n", tag);
247 strcpy(buf,
"** > ");
248 snprintf(c,
sizeof(c),
"%03x", xx);
254 for (i = 0; i < m->m_len; i++)
256 if ((xx != 0) && (xx % 16 == 0))
258 BLOGI(sc,
"%s\n", buf);
260 snprintf(c,
sizeof(c),
"%03x", xx);
265 snprintf(c,
sizeof(c),
"%02x ", *memp);
274 snprintf(c,
sizeof(c),
"%d", m->m_len);
279 BLOGI(sc,
"%s\n", buf);
283 BLOGI(sc,
"------------ %s\n", tag);
290static void bxe_ddb_usage()
292 db_printf(
"Usage: bxe[/hpv] <instance> [<address>]\n");
295static db_cmdfcn_t bxe_ddb;
296_DB_SET(_cmd, bxe, bxe_ddb, db_cmd_table, CS_OWN, NULL);
298static void bxe_ddb(db_expr_t blah1,
303 char if_xname[IFNAMSIZ];
309 int mod_phys_addr = FALSE;
310 int mod_virt_addr = FALSE;
313 tok = db_read_token();
315 tok = db_read_token();
317 db_printf(
"ERROR: bad modifier\n");
321 if (strcmp(db_tok_string,
"h") == 0) {
324 }
else if (strcmp(db_tok_string,
"p") == 0) {
325 mod_phys_addr = TRUE;
326 }
else if (strcmp(db_tok_string,
"v") == 0) {
327 mod_virt_addr = TRUE;
330 db_unread_token(tok);
333 if (!db_expression((db_expr_t *)&index)) {
334 db_printf(
"ERROR: bxe index missing\n");
339 snprintf(if_xname,
sizeof(if_xname),
"bxe%d", index);
340 if ((
ifp = ifunit_ref(if_xname)) == NULL)
342 db_printf(
"ERROR: Invalid interface %s\n", if_xname);
347 db_printf(
"ifnet=%p (%s)\n",
ifp, if_xname);
348 db_printf(
"softc=%p\n", sc);
349 db_printf(
" dev=%p\n", sc->
dev);
350 db_printf(
" BDF=%d:%d:%d\n",
353 if (mod_phys_addr || mod_virt_addr) {
354 if (!db_expression((db_addr_t *)&
addr)) {
355 db_printf(
"ERROR: Invalid address\n");
360 db_printf(
"addr=%p",
addr);
#define BLOGI(sc, format, args...)
#define BLOGD(sc, codepath, format, args...)
void elink_cb_dbg(struct bxe_softc *sc, char *fmt)
void elink_cb_dbg1(struct bxe_softc *sc, char *fmt, uint32_t arg1)
void bxe_dump_mbuf_data(struct bxe_softc *sc, char *tag, struct mbuf *m, uint8_t contents)
void elink_cb_dbg2(struct bxe_softc *sc, char *fmt, uint32_t arg1, uint32_t arg2)
void bxe_dump_mem(struct bxe_softc *sc, char *tag, uint8_t *mem, uint32_t len)
void elink_cb_dbg3(struct bxe_softc *sc, char *fmt, uint32_t arg1, uint32_t arg2, uint32_t arg3)
bus_space_handle_t handle
struct bxe_bar bar[MAX_BARS]