staging: brcmfmac: Consolidate debugging macros

Convert multiple BRCMF_<debug_level> macros to a single
brcmf_dbg(level, fmt, ...) macro.

Remove the now unnecessary double parentheses in the uses
of the old macros when converting to brcmf_dbg.

Delete all uses of "%s: [fmt]", __func__, args... and move
the "%s: ", __func__ to the macro for consistency.

Coalesce long formats.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Joe Perches 2011-08-24 23:16:48 -07:00 committed by Greg Kroah-Hartman
parent 09ebd6f23b
commit 75bf74b90f
7 changed files with 694 additions and 862 deletions

View file

@ -86,8 +86,7 @@ brcmf_sdcard_iovar_op(struct brcmf_sdio_dev *sdiodev, const char *name,
if (!set && !(arg && len))
return -EINVAL;
BRCMF_TRACE(("%s: Enter (%s %s)\n", __func__, (set ? "set" : "get"),
name));
brcmf_dbg(TRACE, "Enter (%s %s)\n", set ? "set" : "get", name);
vi = brcmu_iovar_lookup(sdioh_iovars, name);
if (vi == NULL) {
@ -168,7 +167,7 @@ static void brcmf_sdioh_irqhandler(struct sdio_func *func)
{
struct brcmf_sdio_dev *sdiodev = dev_get_drvdata(&func->card->dev);
BRCMF_TRACE(("brcmf: ***IRQHandler\n"));
brcmf_dbg(TRACE, "***IRQHandler\n");
sdio_release_host(func);
@ -179,7 +178,7 @@ static void brcmf_sdioh_irqhandler(struct sdio_func *func)
int brcmf_sdcard_intr_reg(struct brcmf_sdio_dev *sdiodev)
{
BRCMF_TRACE(("%s: Entering\n", __func__));
brcmf_dbg(TRACE, "Entering\n");
sdio_claim_host(sdiodev->func[1]);
sdio_claim_irq(sdiodev->func[1], brcmf_sdioh_irqhandler);
@ -190,7 +189,7 @@ int brcmf_sdcard_intr_reg(struct brcmf_sdio_dev *sdiodev)
int brcmf_sdcard_intr_dereg(struct brcmf_sdio_dev *sdiodev)
{
BRCMF_TRACE(("%s: Entering\n", __func__));
brcmf_dbg(TRACE, "Entering\n");
sdio_claim_host(sdiodev->func[1]);
sdio_release_irq(sdiodev->func[1]);
@ -216,8 +215,8 @@ u8 brcmf_sdcard_cfg_read(struct brcmf_sdio_dev *sdiodev, uint fnc_num, u32 addr,
if (err)
*err = status;
BRCMF_INFO(("%s:fun = %d, addr = 0x%x, u8data = 0x%x\n",
__func__, fnc_num, addr, data));
brcmf_dbg(INFO, "fun = %d, addr = 0x%x, u8data = 0x%x\n",
fnc_num, addr, data);
return data;
}
@ -239,8 +238,8 @@ brcmf_sdcard_cfg_write(struct brcmf_sdio_dev *sdiodev, uint fnc_num, u32 addr,
if (err)
*err = status;
BRCMF_INFO(("%s:fun = %d, addr = 0x%x, u8data = 0x%x\n",
__func__, fnc_num, addr, data));
brcmf_dbg(INFO, "fun = %d, addr = 0x%x, u8data = 0x%x\n",
fnc_num, addr, data);
}
int brcmf_sdcard_cis_read(struct brcmf_sdio_dev *sdiodev, uint func, u8 * cis,
@ -260,7 +259,7 @@ int brcmf_sdcard_cis_read(struct brcmf_sdio_dev *sdiodev, uint func, u8 * cis,
into the provided buffer. */
tmp_buf = kmalloc(length, GFP_ATOMIC);
if (tmp_buf == NULL) {
BRCMF_ERROR(("%s: out of memory\n", __func__));
brcmf_dbg(ERROR, "out of memory\n");
return -ENOMEM;
}
memcpy(tmp_buf, cis, length);
@ -302,7 +301,7 @@ u32 brcmf_sdcard_reg_read(struct brcmf_sdio_dev *sdiodev, u32 addr, uint size)
u32 word = 0;
uint bar0 = addr & ~SBSDIO_SB_OFT_ADDR_MASK;
BRCMF_INFO(("%s:fun = 1, addr = 0x%x, ", __func__, addr));
brcmf_dbg(INFO, "fun = 1, addr = 0x%x\n", addr);
if (bar0 != sdiodev->sbwad) {
if (brcmf_sdcard_set_sbaddr_window(sdiodev, bar0))
@ -320,7 +319,7 @@ u32 brcmf_sdcard_reg_read(struct brcmf_sdio_dev *sdiodev, u32 addr, uint size)
sdiodev->regfail = (status != 0);
BRCMF_INFO(("u32data = 0x%x\n", word));
brcmf_dbg(INFO, "u32data = 0x%x\n", word);
/* if ok, return appropriately masked word */
if (status == 0) {
@ -338,8 +337,7 @@ u32 brcmf_sdcard_reg_read(struct brcmf_sdio_dev *sdiodev, u32 addr, uint size)
}
/* otherwise, bad sdio access or invalid size */
BRCMF_ERROR(("%s: error reading addr 0x%04x size %d\n", __func__,
addr, size));
brcmf_dbg(ERROR, "error reading addr 0x%04x size %d\n", addr, size);
return 0xFFFFFFFF;
}
@ -350,8 +348,8 @@ u32 brcmf_sdcard_reg_write(struct brcmf_sdio_dev *sdiodev, u32 addr, uint size,
uint bar0 = addr & ~SBSDIO_SB_OFT_ADDR_MASK;
int err = 0;
BRCMF_INFO(("%s:fun = 1, addr = 0x%x, uint%ddata = 0x%x\n",
__func__, addr, size * 8, data));
brcmf_dbg(INFO, "fun = 1, addr = 0x%x, uint%ddata = 0x%x\n",
addr, size * 8, data);
if (bar0 != sdiodev->sbwad) {
err = brcmf_sdcard_set_sbaddr_window(sdiodev, bar0);
@ -372,8 +370,8 @@ u32 brcmf_sdcard_reg_write(struct brcmf_sdio_dev *sdiodev, u32 addr, uint size,
if (status == 0)
return 0;
BRCMF_ERROR(("%s: error writing 0x%08x to addr 0x%04x size %d\n",
__func__, data, addr, size));
brcmf_dbg(ERROR, "error writing 0x%08x to addr 0x%04x size %d\n",
data, addr, size);
return 0xFFFFFFFF;
}
@ -393,8 +391,7 @@ brcmf_sdcard_recv_buf(struct brcmf_sdio_dev *sdiodev, u32 addr, uint fn,
uint bar0 = addr & ~SBSDIO_SB_OFT_ADDR_MASK;
int err = 0;
BRCMF_INFO(("%s:fun = %d, addr = 0x%x, size = %d\n",
__func__, fn, addr, nbytes));
brcmf_dbg(INFO, "fun = %d, addr = 0x%x, size = %d\n", fn, addr, nbytes);
/* Async not implemented yet */
if (flags & SDIO_REQ_ASYNC)
@ -430,8 +427,7 @@ brcmf_sdcard_send_buf(struct brcmf_sdio_dev *sdiodev, u32 addr, uint fn,
uint bar0 = addr & ~SBSDIO_SB_OFT_ADDR_MASK;
int err = 0;
BRCMF_INFO(("%s:fun = %d, addr = 0x%x, size = %d\n",
__func__, fn, addr, nbytes));
brcmf_dbg(INFO, "fun = %d, addr = 0x%x, size = %d\n", fn, addr, nbytes);
/* Async not implemented yet */
if (flags & SDIO_REQ_ASYNC)
@ -470,13 +466,13 @@ int brcmf_sdcard_rwdata(struct brcmf_sdio_dev *sdiodev, uint rw, u32 addr,
int brcmf_sdcard_abort(struct brcmf_sdio_dev *sdiodev, uint fn)
{
char t_func = (char)fn;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* issue abort cmd52 command through F0 */
brcmf_sdioh_request_byte(sdiodev, SDIOH_WRITE, SDIO_FUNC_0,
SDIO_CCCR_ABORT, &t_func);
BRCMF_TRACE(("%s: Exit\n", __func__));
brcmf_dbg(TRACE, "Exit\n");
return 0;
}
@ -502,7 +498,7 @@ int brcmf_sdio_probe(struct brcmf_sdio_dev *sdiodev)
/* try to attach to the target device */
sdiodev->bus = brcmf_sdbrcm_probe(0, 0, 0, 0, regs, sdiodev);
if (!sdiodev->bus) {
BRCMF_ERROR(("%s: device attach failed\n", __func__));
brcmf_dbg(ERROR, "device attach failed\n");
ret = -ENODEV;
goto out;
}

View file

@ -111,21 +111,21 @@ static int brcmf_sdioh_enablefuncs(struct brcmf_sdio_dev *sdiodev)
u32 fbraddr;
u8 func;
BRCMF_TRACE(("%s\n", __func__));
brcmf_dbg(TRACE, "\n");
/* Get the Card's common CIS address */
sdiodev->func_cis_ptr[0] = brcmf_sdioh_get_cisaddr(sdiodev,
SDIO_CCCR_CIS);
BRCMF_INFO(("%s: Card's Common CIS Ptr = 0x%x\n", __func__,
sdiodev->func_cis_ptr[0]));
brcmf_dbg(INFO, "Card's Common CIS Ptr = 0x%x\n",
sdiodev->func_cis_ptr[0]);
/* Get the Card's function CIS (for each function) */
for (fbraddr = SDIO_FBR_BASE(1), func = 1;
func <= sdiodev->num_funcs; func++, fbraddr += SDIOD_FBR_SIZE) {
sdiodev->func_cis_ptr[func] =
brcmf_sdioh_get_cisaddr(sdiodev, SDIO_FBR_CIS + fbraddr);
BRCMF_INFO(("%s: Function %d CIS Ptr = 0x%x\n", __func__, func,
sdiodev->func_cis_ptr[func]));
brcmf_dbg(INFO, "Function %d CIS Ptr = 0x%x\n",
func, sdiodev->func_cis_ptr[func]);
}
/* Enable Function 1 */
@ -133,8 +133,7 @@ static int brcmf_sdioh_enablefuncs(struct brcmf_sdio_dev *sdiodev)
err_ret = sdio_enable_func(sdiodev->func[1]);
sdio_release_host(sdiodev->func[1]);
if (err_ret)
BRCMF_ERROR(("brcmf_sdioh_enablefuncs: Failed to enable F1 "
"Err: 0x%08x\n", err_ret));
brcmf_dbg(ERROR, "Failed to enable F1 Err: 0x%08x\n", err_ret);
return false;
}
@ -146,7 +145,7 @@ int brcmf_sdioh_attach(struct brcmf_sdio_dev *sdiodev)
{
int err_ret = 0;
BRCMF_TRACE(("%s\n", __func__));
brcmf_dbg(TRACE, "\n");
sdiodev->num_funcs = 2;
@ -154,7 +153,7 @@ int brcmf_sdioh_attach(struct brcmf_sdio_dev *sdiodev)
err_ret = sdio_set_block_size(sdiodev->func[1], 64);
sdio_release_host(sdiodev->func[1]);
if (err_ret) {
BRCMF_ERROR(("%s: Failed to set F1 blocksize\n", __func__));
brcmf_dbg(ERROR, "Failed to set F1 blocksize\n");
goto out;
}
@ -162,21 +161,21 @@ int brcmf_sdioh_attach(struct brcmf_sdio_dev *sdiodev)
err_ret = sdio_set_block_size(sdiodev->func[2], sd_f2_blocksize);
sdio_release_host(sdiodev->func[2]);
if (err_ret) {
BRCMF_ERROR(("%s: Failed to set F2 blocksize"
" to %d\n", __func__, sd_f2_blocksize));
brcmf_dbg(ERROR, "Failed to set F2 blocksize to %d\n",
sd_f2_blocksize);
goto out;
}
brcmf_sdioh_enablefuncs(sdiodev);
out:
BRCMF_TRACE(("%s: Done\n", __func__));
brcmf_dbg(TRACE, "Done\n");
return err_ret;
}
void brcmf_sdioh_detach(struct brcmf_sdio_dev *sdiodev)
{
BRCMF_TRACE(("%s\n", __func__));
brcmf_dbg(TRACE, "\n");
/* Disable Function 2 */
sdio_claim_host(sdiodev->func[2]);
@ -199,7 +198,7 @@ static int brcmf_sdioh_get_cisaddr(struct brcmf_sdio_dev *sdiodev, u32 regaddr)
for (i = 0; i < 3; i++) {
if ((brcmf_sdioh_card_regread(sdiodev, 0, regaddr, 1,
&regdata)) != SUCCESS)
BRCMF_ERROR(("%s: Can't read!\n", __func__));
brcmf_dbg(ERROR, "Can't read!\n");
*ptr++ = (u8) regdata;
regaddr++;
@ -220,22 +219,21 @@ brcmf_sdioh_cis_read(struct brcmf_sdio_dev *sdiodev, uint func,
u32 foo;
u8 *cis = cisd;
BRCMF_TRACE(("%s: Func = %d\n", __func__, func));
brcmf_dbg(TRACE, "Func = %d\n", func);
if (!sdiodev->func_cis_ptr[func]) {
memset(cis, 0, length);
BRCMF_ERROR(("%s: no func_cis_ptr[%d]\n", __func__, func));
brcmf_dbg(ERROR, "no func_cis_ptr[%d]\n", func);
return -ENOTSUPP;
}
BRCMF_ERROR(("%s: func_cis_ptr[%d]=0x%04x\n", __func__, func,
sdiodev->func_cis_ptr[func]));
brcmf_dbg(ERROR, "func_cis_ptr[%d]=0x%04x\n",
func, sdiodev->func_cis_ptr[func]);
for (count = 0; count < length; count++) {
offset = sdiodev->func_cis_ptr[func] + count;
if (brcmf_sdioh_card_regread(sdiodev, 0, offset, 1, &foo) < 0) {
BRCMF_ERROR(("%s: regread failed: Can't read CIS\n",
__func__));
brcmf_dbg(ERROR, "regread failed: Can't read CIS\n");
return -EIO;
}
@ -252,8 +250,7 @@ brcmf_sdioh_request_byte(struct brcmf_sdio_dev *sdiodev, uint rw, uint func,
{
int err_ret;
BRCMF_INFO(("%s: rw=%d, func=%d, addr=0x%05x\n", __func__, rw, func,
regaddr));
brcmf_dbg(INFO, "rw=%d, func=%d, addr=0x%05x\n", rw, func, regaddr);
BRCMF_PM_RESUME_WAIT(sdioh_request_byte_wait, sdiodev);
BRCMF_PM_RESUME_RETURN_ERROR(-EIO, sdiodev);
@ -272,22 +269,18 @@ brcmf_sdioh_request_byte(struct brcmf_sdio_dev *sdiodev, uint rw, uint func,
sdio_enable_func
(sdiodev->func[2]);
if (err_ret)
BRCMF_ERROR((
"request_byte: "
"enable F2 "
"failed:%d\n",
err_ret));
brcmf_dbg(ERROR,
"enable F2 failed:%d\n",
err_ret);
} else {
/* Disable Function 2 */
err_ret =
sdio_disable_func
(sdiodev->func[2]);
if (err_ret)
BRCMF_ERROR((
"request_byte: "
"Disab F2 "
"failed:%d\n",
err_ret));
brcmf_dbg(ERROR,
"Disable F2 failed:%d\n",
err_ret);
}
sdio_release_host(sdiodev->func[2]);
}
@ -305,8 +298,8 @@ brcmf_sdioh_request_byte(struct brcmf_sdio_dev *sdiodev, uint rw, uint func,
regaddr, &err_ret);
sdio_release_host(sdiodev->func[func]);
} else if (regaddr < 0xF0) {
BRCMF_ERROR(("brcmf: F0 Wr:0x%02x: write "
"disallowed\n", regaddr));
brcmf_dbg(ERROR, "F0 Wr:0x%02x: write disallowed\n",
regaddr);
} else {
/* Claim host controller, perform F0 write,
and release */
@ -341,9 +334,8 @@ brcmf_sdioh_request_byte(struct brcmf_sdio_dev *sdiodev, uint rw, uint func,
}
if (err_ret)
BRCMF_ERROR(("brcmf: Failed to %s byte F%d:@0x%05x=%02x, "
"Err: %d\n", rw ? "Write" : "Read", func, regaddr,
*byte, err_ret));
brcmf_dbg(ERROR, "Failed to %s byte F%d:@0x%05x=%02x, Err: %d\n",
rw ? "write" : "read", func, regaddr, *byte, err_ret);
return err_ret;
}
@ -355,12 +347,12 @@ brcmf_sdioh_request_word(struct brcmf_sdio_dev *sdiodev, uint cmd_type, uint rw,
int err_ret = -EIO;
if (func == 0) {
BRCMF_ERROR(("%s: Only CMD52 allowed to F0.\n", __func__));
brcmf_dbg(ERROR, "Only CMD52 allowed to F0\n");
return -EINVAL;
}
BRCMF_INFO(("%s: cmd_type=%d, rw=%d, func=%d, addr=0x%05x, nbytes=%d\n",
__func__, cmd_type, rw, func, addr, nbytes));
brcmf_dbg(INFO, "cmd_type=%d, rw=%d, func=%d, addr=0x%05x, nbytes=%d\n",
cmd_type, rw, func, addr, nbytes);
BRCMF_PM_RESUME_WAIT(sdioh_request_word_wait, sdiodev);
BRCMF_PM_RESUME_RETURN_ERROR(-EIO, sdiodev);
@ -375,8 +367,7 @@ brcmf_sdioh_request_word(struct brcmf_sdio_dev *sdiodev, uint cmd_type, uint rw,
sdio_writew(sdiodev->func[func], (*word & 0xFFFF),
addr, &err_ret);
else
BRCMF_ERROR(("%s: Invalid nbytes: %d\n",
__func__, nbytes));
brcmf_dbg(ERROR, "Invalid nbytes: %d\n", nbytes);
} else { /* CMD52 Read */
if (nbytes == 4)
*word =
@ -386,16 +377,15 @@ brcmf_sdioh_request_word(struct brcmf_sdio_dev *sdiodev, uint cmd_type, uint rw,
sdio_readw(sdiodev->func[func], addr,
&err_ret) & 0xFFFF;
else
BRCMF_ERROR(("%s: Invalid nbytes: %d\n",
__func__, nbytes));
brcmf_dbg(ERROR, "Invalid nbytes: %d\n", nbytes);
}
/* Release host controller */
sdio_release_host(sdiodev->func[func]);
if (err_ret)
BRCMF_ERROR(("brcmf: Failed to %s word, Err: 0x%08x\n",
rw ? "Write" : "Read", err_ret));
brcmf_dbg(ERROR, "Failed to %s word, Err: 0x%08x\n",
rw ? "write" : "read", err_ret);
return err_ret;
}
@ -411,7 +401,7 @@ brcmf_sdioh_request_packet(struct brcmf_sdio_dev *sdiodev, uint fix_inc,
struct sk_buff *pnext;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
BRCMF_PM_RESUME_WAIT(sdioh_request_packet_wait, sdiodev);
BRCMF_PM_RESUME_RETURN_ERROR(-EIO, sdiodev);
@ -442,15 +432,13 @@ brcmf_sdioh_request_packet(struct brcmf_sdio_dev *sdiodev, uint fix_inc,
}
if (err_ret) {
BRCMF_ERROR(("%s: %s FAILED %p[%d], addr=0x%05x, "
"pkt_len=%d, ERR=0x%08x\n", __func__,
(write) ? "TX" : "RX",
pnext, SGCount, addr, pkt_len, err_ret));
brcmf_dbg(ERROR, "%s FAILED %p[%d], addr=0x%05x, pkt_len=%d, ERR=0x%08x\n",
write ? "TX" : "RX", pnext, SGCount, addr,
pkt_len, err_ret);
} else {
BRCMF_TRACE(("%s: %s xfr'd %p[%d], addr=0x%05x, "
"len=%d\n", __func__,
(write) ? "TX" : "RX",
pnext, SGCount, addr, pkt_len));
brcmf_dbg(TRACE, "%s xfr'd %p[%d], addr=0x%05x, len=%d\n",
write ? "TX" : "RX", pnext, SGCount, addr,
pkt_len);
}
if (!fifo)
@ -462,7 +450,7 @@ brcmf_sdioh_request_packet(struct brcmf_sdio_dev *sdiodev, uint fix_inc,
/* Release host controller */
sdio_release_host(sdiodev->func[func]);
BRCMF_TRACE(("%s: Exit\n", __func__));
brcmf_dbg(TRACE, "Exit\n");
return err_ret;
}
@ -490,18 +478,18 @@ brcmf_sdioh_request_buffer(struct brcmf_sdio_dev *sdiodev, uint pio_dma,
int Status;
struct sk_buff *mypkt = NULL;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
BRCMF_PM_RESUME_WAIT(sdioh_request_buffer_wait, sdiodev);
BRCMF_PM_RESUME_RETURN_ERROR(-EIO, sdiodev);
/* Case 1: we don't have a packet. */
if (pkt == NULL) {
BRCMF_DATA(("%s: Creating new %s Packet, len=%d\n",
__func__, write ? "TX" : "RX", buflen_u));
brcmf_dbg(DATA, "Creating new %s Packet, len=%d\n",
write ? "TX" : "RX", buflen_u);
mypkt = brcmu_pkt_buf_get_skb(buflen_u);
if (!mypkt) {
BRCMF_ERROR(("%s: brcmu_pkt_buf_get_skb failed: "
"len %d\n", __func__, buflen_u));
brcmf_dbg(ERROR, "brcmu_pkt_buf_get_skb failed: len %d\n",
buflen_u);
return -EIO;
}
@ -522,12 +510,12 @@ brcmf_sdioh_request_buffer(struct brcmf_sdio_dev *sdiodev, uint pio_dma,
* Case 2: We have a packet, but it is unaligned.
* In this case, we cannot have a chain (pkt->next == NULL)
*/
BRCMF_DATA(("%s: Creating aligned %s Packet, len=%d\n",
__func__, write ? "TX" : "RX", pkt->len));
brcmf_dbg(DATA, "Creating aligned %s Packet, len=%d\n",
write ? "TX" : "RX", pkt->len);
mypkt = brcmu_pkt_buf_get_skb(pkt->len);
if (!mypkt) {
BRCMF_ERROR(("%s: brcmu_pkt_buf_get_skb failed: "
"len %d\n", __func__, pkt->len));
brcmf_dbg(ERROR, "brcmu_pkt_buf_get_skb failed: len %d\n",
pkt->len);
return -EIO;
}
@ -545,8 +533,8 @@ brcmf_sdioh_request_buffer(struct brcmf_sdio_dev *sdiodev, uint pio_dma,
brcmu_pkt_buf_free_skb(mypkt);
} else { /* case 3: We have a packet and
it is aligned. */
BRCMF_DATA(("%s: Aligned %s Packet, direct DMA\n",
__func__, write ? "Tx" : "Rx"));
brcmf_dbg(DATA, "Aligned %s Packet, direct DMA\n",
write ? "Tx" : "Rx");
Status = brcmf_sdioh_request_packet(sdiodev, fix_inc, write,
func, addr, pkt);
}
@ -567,14 +555,14 @@ brcmf_sdioh_card_regread(struct brcmf_sdio_dev *sdiodev, int func, u32 regaddr,
&temp);
*data = temp;
*data &= 0xff;
BRCMF_DATA(("%s: byte read data=0x%02x\n", __func__, *data));
brcmf_dbg(DATA, "byte read data=0x%02x\n", *data);
} else {
brcmf_sdioh_request_word(sdiodev, 0, SDIOH_READ, func, regaddr,
data, regsize);
if (regsize == 2)
*data &= 0xffff;
BRCMF_DATA(("%s: word read data=0x%08x\n", __func__, *data));
brcmf_dbg(DATA, "word read data=0x%08x\n", *data);
}
return SUCCESS;
@ -585,16 +573,15 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
{
int ret = 0;
struct brcmf_sdio_dev *sdiodev;
BRCMF_TRACE(("sdio_probe: %s Enter\n", __func__));
BRCMF_TRACE(("sdio_probe: func->class=%x\n", func->class));
BRCMF_TRACE(("sdio_vendor: 0x%04x\n", func->vendor));
BRCMF_TRACE(("sdio_device: 0x%04x\n", func->device));
BRCMF_TRACE(("Function#: 0x%04x\n", func->num));
brcmf_dbg(TRACE, "Enter\n");
brcmf_dbg(TRACE, "func->class=%x\n", func->class);
brcmf_dbg(TRACE, "sdio_vendor: 0x%04x\n", func->vendor);
brcmf_dbg(TRACE, "sdio_device: 0x%04x\n", func->device);
brcmf_dbg(TRACE, "Function#: 0x%04x\n", func->num);
if (func->num == 1) {
if (dev_get_drvdata(&func->card->dev)) {
BRCMF_ERROR(("%s: card private drvdata occupied.\n",
__func__));
brcmf_dbg(ERROR, "card private drvdata occupied\n");
return -ENXIO;
}
sdiodev = kzalloc(sizeof(struct brcmf_sdio_dev), GFP_KERNEL);
@ -614,7 +601,7 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
sdiodev->func[2] = func;
brcmf_cfg80211_sdio_func(func);
BRCMF_TRACE(("F2 found, calling brcmf_sdio_probe...\n"));
brcmf_dbg(TRACE, "F2 found, calling brcmf_sdio_probe...\n");
ret = brcmf_sdio_probe(sdiodev);
}
@ -624,15 +611,15 @@ static int brcmf_ops_sdio_probe(struct sdio_func *func,
static void brcmf_ops_sdio_remove(struct sdio_func *func)
{
struct brcmf_sdio_dev *sdiodev;
BRCMF_TRACE(("%s Enter\n", __func__));
BRCMF_INFO(("func->class=%x\n", func->class));
BRCMF_INFO(("sdio_vendor: 0x%04x\n", func->vendor));
BRCMF_INFO(("sdio_device: 0x%04x\n", func->device));
BRCMF_INFO(("Function#: 0x%04x\n", func->num));
brcmf_dbg(TRACE, "Enter\n");
brcmf_dbg(INFO, "func->class=%x\n", func->class);
brcmf_dbg(INFO, "sdio_vendor: 0x%04x\n", func->vendor);
brcmf_dbg(INFO, "sdio_device: 0x%04x\n", func->device);
brcmf_dbg(INFO, "Function#: 0x%04x\n", func->num);
if (func->num == 2) {
sdiodev = dev_get_drvdata(&func->card->dev);
BRCMF_TRACE(("F2 found, calling brcmf_sdio_remove...\n"));
brcmf_dbg(TRACE, "F2 found, calling brcmf_sdio_remove...\n");
brcmf_sdio_remove(sdiodev);
dev_set_drvdata(&func->card->dev, NULL);
kfree(sdiodev);
@ -648,7 +635,7 @@ static int brcmf_sdio_suspend(struct device *dev)
struct sdio_func *func = dev_to_sdio_func(dev);
int ret = 0;
BRCMF_TRACE(("%s\n", __func__));
brcmf_dbg(TRACE, "\n");
sdiodev = dev_get_drvdata(&func->card->dev);
@ -656,13 +643,13 @@ static int brcmf_sdio_suspend(struct device *dev)
sdio_flags = sdio_get_host_pm_caps(sdiodev->func[1]);
if (!(sdio_flags & MMC_PM_KEEP_POWER)) {
BRCMF_ERROR(("Host can't keep power while suspended\n"));
brcmf_dbg(ERROR, "Host can't keep power while suspended\n");
return -EINVAL;
}
ret = sdio_set_host_pm_flags(sdiodev->func[1], MMC_PM_KEEP_POWER);
if (ret) {
BRCMF_ERROR(("Failed to set pm_flags\n"));
brcmf_dbg(ERROR, "Failed to set pm_flags\n");
return ret;
}
@ -689,7 +676,7 @@ static int brcmf_sdio_resume(struct device *dev)
int brcmf_sdio_function_init(void)
{
int error = 0;
BRCMF_TRACE(("brcmf_sdio_function_init: %s Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
error = sdio_register_driver(&brcmf_sdmmc_driver);
@ -701,7 +688,7 @@ int brcmf_sdio_function_init(void)
*/
void brcmf_sdio_function_cleanup(void)
{
BRCMF_TRACE(("%s Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
sdio_unregister_driver(&brcmf_sdmmc_driver);
}

View file

@ -104,7 +104,7 @@ static int brcmf_proto_cdc_msg(struct brcmf_pub *drvr)
int len = le32_to_cpu(prot->msg.len) +
sizeof(struct brcmf_proto_cdc_ioctl);
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* NOTE : cdc->msg.len holds the desired length of the buffer to be
* returned. Only up to CDC_MAX_MSG_SIZE of this buffer area
@ -123,7 +123,7 @@ static int brcmf_proto_cdc_cmplt(struct brcmf_pub *drvr, u32 id, u32 len)
int ret;
struct brcmf_proto *prot = drvr->prot;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
do {
ret = brcmf_sdbrcm_bus_rxctl(drvr->bus,
@ -146,8 +146,8 @@ brcmf_proto_cdc_query_ioctl(struct brcmf_pub *drvr, int ifidx, uint cmd,
int ret = 0, retries = 0;
u32 id, flags = 0;
BRCMF_TRACE(("%s: Enter\n", __func__));
BRCMF_CTL(("%s: cmd %d len %d\n", __func__, cmd, len));
brcmf_dbg(TRACE, "Enter\n");
brcmf_dbg(CTL, "cmd %d len %d\n", cmd, len);
/* Respond "bcmerror" and "bcmerrorstr" with local cache */
if (cmd == BRCMF_C_GET_VAR && buf) {
@ -174,8 +174,8 @@ brcmf_proto_cdc_query_ioctl(struct brcmf_pub *drvr, int ifidx, uint cmd,
ret = brcmf_proto_cdc_msg(drvr);
if (ret < 0) {
BRCMF_ERROR(("brcmf_proto_cdc_query_ioctl: brcmf_proto_cdc_msg "
"failed w/status %d\n", ret));
brcmf_dbg(ERROR, "brcmf_proto_cdc_msg failed w/status %d\n",
ret);
goto done;
}
@ -191,9 +191,8 @@ brcmf_proto_cdc_query_ioctl(struct brcmf_pub *drvr, int ifidx, uint cmd,
if ((id < prot->reqid) && (++retries < RETRIES))
goto retry;
if (id != prot->reqid) {
BRCMF_ERROR(("%s: %s: unexpected request id %d (expected %d)\n",
brcmf_ifname(drvr, ifidx), __func__, id,
prot->reqid));
brcmf_dbg(ERROR, "%s: unexpected request id %d (expected %d)\n",
brcmf_ifname(drvr, ifidx), id, prot->reqid);
ret = -EINVAL;
goto done;
}
@ -227,8 +226,8 @@ int brcmf_proto_cdc_set_ioctl(struct brcmf_pub *drvr, int ifidx, uint cmd,
int ret = 0;
u32 flags, id;
BRCMF_TRACE(("%s: Enter\n", __func__));
BRCMF_CTL(("%s: cmd %d len %d\n", __func__, cmd, len));
brcmf_dbg(TRACE, "Enter\n");
brcmf_dbg(CTL, "cmd %d len %d\n", cmd, len);
memset(msg, 0, sizeof(struct brcmf_proto_cdc_ioctl));
@ -253,9 +252,8 @@ int brcmf_proto_cdc_set_ioctl(struct brcmf_pub *drvr, int ifidx, uint cmd,
id = (flags & CDCF_IOC_ID_MASK) >> CDCF_IOC_ID_SHIFT;
if (id != prot->reqid) {
BRCMF_ERROR(("%s: %s: unexpected request id %d (expected %d)\n",
brcmf_ifname(drvr, ifidx), __func__, id,
prot->reqid));
brcmf_dbg(ERROR, "%s: unexpected request id %d (expected %d)\n",
brcmf_ifname(drvr, ifidx), id, prot->reqid);
ret = -EINVAL;
goto done;
}
@ -279,25 +277,23 @@ brcmf_proto_ioctl(struct brcmf_pub *drvr, int ifidx, struct brcmf_ioctl *ioc,
int ret = -1;
if (drvr->busstate == BRCMF_BUS_DOWN) {
BRCMF_ERROR(("%s : bus is down. we have nothing to do\n",
__func__));
brcmf_dbg(ERROR, "bus is down. we have nothing to do.\n");
return ret;
}
brcmf_os_proto_block(drvr);
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
if (len > BRCMF_C_IOCTL_MAXLEN)
goto done;
if (prot->pending == true) {
BRCMF_TRACE(("CDC packet is pending!!!! cmd=0x%x (%lu) "
"lastcmd=0x%x (%lu)\n",
ioc->cmd, (unsigned long)ioc->cmd, prot->lastcmd,
(unsigned long)prot->lastcmd));
brcmf_dbg(TRACE, "CDC packet is pending!!!! cmd=0x%x (%lu) lastcmd=0x%x (%lu)\n",
ioc->cmd, (unsigned long)ioc->cmd, prot->lastcmd,
(unsigned long)prot->lastcmd);
if ((ioc->cmd == BRCMF_C_SET_VAR) ||
(ioc->cmd == BRCMF_C_GET_VAR))
BRCMF_TRACE(("iovar cmd=%s\n", (char *)buf));
brcmf_dbg(TRACE, "iovar cmd=%s\n", (char *)buf);
goto done;
}
@ -358,7 +354,7 @@ void brcmf_proto_hdrpush(struct brcmf_pub *drvr, int ifidx,
{
struct brcmf_proto_bdc_header *h;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* Push BDC header used to convey priority for buses that don't */
@ -381,13 +377,13 @@ int brcmf_proto_hdrpull(struct brcmf_pub *drvr, int *ifidx,
{
struct brcmf_proto_bdc_header *h;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* Pop BDC header used to convey priority for buses that don't */
if (pktbuf->len < BDC_HEADER_LEN) {
BRCMF_ERROR(("%s: rx data too short (%d < %d)\n", __func__,
pktbuf->len, BDC_HEADER_LEN));
brcmf_dbg(ERROR, "rx data too short (%d < %d)\n",
pktbuf->len, BDC_HEADER_LEN);
return -EBADE;
}
@ -395,22 +391,20 @@ int brcmf_proto_hdrpull(struct brcmf_pub *drvr, int *ifidx,
*ifidx = BDC_GET_IF_IDX(h);
if (*ifidx >= BRCMF_MAX_IFS) {
BRCMF_ERROR(("%s: rx data ifnum out of range (%d)\n",
__func__, *ifidx));
brcmf_dbg(ERROR, "rx data ifnum out of range (%d)\n", *ifidx);
return -EBADE;
}
if (((h->flags & BDC_FLAG_VER_MASK) >> BDC_FLAG_VER_SHIFT) !=
BDC_PROTO_VER) {
BRCMF_ERROR(("%s: non-BDC packet received, flags 0x%x\n",
brcmf_ifname(drvr, *ifidx), h->flags));
brcmf_dbg(ERROR, "%s: non-BDC packet received, flags 0x%x\n",
brcmf_ifname(drvr, *ifidx), h->flags);
return -EBADE;
}
if (h->flags & BDC_FLAG_SUM_GOOD) {
BRCMF_INFO(("%s: BDC packet received with good rx-csum, "
"flags 0x%x\n",
brcmf_ifname(drvr, *ifidx), h->flags));
brcmf_dbg(INFO, "%s: BDC packet received with good rx-csum, flags 0x%x\n",
brcmf_ifname(drvr, *ifidx), h->flags);
PKTSETSUMGOOD(pktbuf, true);
}
@ -427,13 +421,13 @@ int brcmf_proto_attach(struct brcmf_pub *drvr)
cdc = kzalloc(sizeof(struct brcmf_proto), GFP_ATOMIC);
if (!cdc) {
BRCMF_ERROR(("%s: kmalloc failed\n", __func__));
brcmf_dbg(ERROR, "kmalloc failed\n");
goto fail;
}
/* ensure that the msg buf directly follows the cdc msg struct */
if ((unsigned long)(&cdc->msg + 1) != (unsigned long)cdc->buf) {
BRCMF_ERROR(("struct brcmf_proto is not correctly defined\n"));
brcmf_dbg(ERROR, "struct brcmf_proto is not correctly defined\n");
goto fail;
}
@ -472,7 +466,7 @@ int brcmf_proto_init(struct brcmf_pub *drvr)
int ret = 0;
char buf[128];
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
brcmf_os_proto_block(drvr);

View file

@ -172,7 +172,7 @@ brcmf_c_doiovar(struct brcmf_pub *drvr, const struct brcmu_iovar *vi,
int bcmerror = 0;
s32 int_val = 0;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
bcmerror = brcmu_iovar_lencheck(vi, arg, len, IOV_ISSET(actionid));
if (bcmerror != 0)
@ -267,8 +267,8 @@ bool brcmf_c_prec_enq(struct brcmf_pub *drvr, struct pktq *q,
p = discard_oldest ? brcmu_pktq_pdeq(q, eprec) :
brcmu_pktq_pdeq_tail(q, eprec);
if (p == NULL)
BRCMF_ERROR(("%s: brcmu_pktq_penq() failed, oldest %d.",
__func__, discard_oldest));
brcmf_dbg(ERROR, "brcmu_pktq_penq() failed, oldest %d\n",
discard_oldest);
brcmu_pkt_buf_free_skb(p);
}
@ -276,7 +276,7 @@ bool brcmf_c_prec_enq(struct brcmf_pub *drvr, struct pktq *q,
/* Enqueue */
p = brcmu_pktq_penq(q, prec, pkt);
if (p == NULL)
BRCMF_ERROR(("%s: brcmu_pktq_penq() failed.", __func__));
brcmf_dbg(ERROR, "brcmu_pktq_penq() failed\n");
return p != NULL;
}
@ -290,7 +290,7 @@ brcmf_c_iovar_op(struct brcmf_pub *drvr, const char *name,
const struct brcmu_iovar *vi = NULL;
u32 actionid;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
if (name == NULL || len < 0)
return -EINVAL;
@ -309,8 +309,8 @@ brcmf_c_iovar_op(struct brcmf_pub *drvr, const char *name,
goto exit;
}
BRCMF_CTL(("%s: %s %s, len %d plen %d\n", __func__,
name, (set ? "set" : "get"), len, plen));
brcmf_dbg(CTL, "%s %s, len %d plen %d\n",
name, set ? "set" : "get", len, plen);
/* set up 'params' pointer in case this is a set command so that
* the convenience int and bool code can be common to set and get
@ -342,7 +342,7 @@ int brcmf_c_ioctl(struct brcmf_pub *drvr, struct brcmf_c_ioctl *ioc, void *buf,
{
int bcmerror = 0;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
if (!buf)
return -EINVAL;
@ -498,9 +498,9 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
event_name = event_names[i].event_name;
}
BRCMF_EVENT(("EVENT: %s, event ID = %d\n", event_name, event_type));
BRCMF_EVENT(("flags 0x%04x, status %d, reason %d, auth_type %d"
" MAC %s\n", flags, status, reason, auth_type, eabuf));
brcmf_dbg(EVENT, "EVENT: %s, event ID = %d\n", event_name, event_type);
brcmf_dbg(EVENT, "flags 0x%04x, status %d, reason %d, auth_type %d MAC %s\n",
flags, status, reason, auth_type, eabuf);
if (flags & BRCMF_EVENT_MSG_LINK)
link = true;
@ -513,35 +513,34 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
case BRCMF_E_START:
case BRCMF_E_DEAUTH:
case BRCMF_E_DISASSOC:
BRCMF_EVENT(("MACEVENT: %s, MAC %s\n", event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s\n", event_name, eabuf);
break;
case BRCMF_E_ASSOC_IND:
case BRCMF_E_REASSOC_IND:
BRCMF_EVENT(("MACEVENT: %s, MAC %s\n", event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s\n", event_name, eabuf);
break;
case BRCMF_E_ASSOC:
case BRCMF_E_REASSOC:
if (status == BRCMF_E_STATUS_SUCCESS)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, SUCCESS\n",
event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, SUCCESS\n",
event_name, eabuf);
else if (status == BRCMF_E_STATUS_TIMEOUT)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, TIMEOUT\n",
event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, TIMEOUT\n",
event_name, eabuf);
else if (status == BRCMF_E_STATUS_FAIL)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, FAILURE,"
" reason %d\n", event_name, eabuf,
(int)reason));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, FAILURE, reason %d\n",
event_name, eabuf, (int)reason);
else
BRCMF_EVENT(("MACEVENT: %s, MAC %s, unexpected status "
"%d\n", event_name, eabuf, (int)status));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, unexpected status %d\n",
event_name, eabuf, (int)status);
break;
case BRCMF_E_DEAUTH_IND:
case BRCMF_E_DISASSOC_IND:
BRCMF_EVENT(("MACEVENT: %s, MAC %s, reason %d\n", event_name,
eabuf, (int)reason));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, reason %d\n",
event_name, eabuf, (int)reason);
break;
case BRCMF_E_AUTH:
@ -555,18 +554,17 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
auth_str = err_msg;
}
if (event_type == BRCMF_E_AUTH_IND)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, %s\n", event_name,
eabuf, auth_str));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, %s\n",
event_name, eabuf, auth_str);
else if (status == BRCMF_E_STATUS_SUCCESS)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, %s, SUCCESS\n",
event_name, eabuf, auth_str));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, %s, SUCCESS\n",
event_name, eabuf, auth_str);
else if (status == BRCMF_E_STATUS_TIMEOUT)
BRCMF_EVENT(("MACEVENT: %s, MAC %s, %s, TIMEOUT\n",
event_name, eabuf, auth_str));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, %s, TIMEOUT\n",
event_name, eabuf, auth_str);
else if (status == BRCMF_E_STATUS_FAIL) {
BRCMF_EVENT(("MACEVENT: %s, MAC %s, %s, FAILURE, "
"reason %d\n",
event_name, eabuf, auth_str, (int)reason));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, %s, FAILURE, reason %d\n",
event_name, eabuf, auth_str, (int)reason);
}
break;
@ -575,63 +573,63 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
case BRCMF_E_ROAM:
case BRCMF_E_SET_SSID:
if (status == BRCMF_E_STATUS_SUCCESS)
BRCMF_EVENT(("MACEVENT: %s, MAC %s\n", event_name,
eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s\n",
event_name, eabuf);
else if (status == BRCMF_E_STATUS_FAIL)
BRCMF_EVENT(("MACEVENT: %s, failed\n", event_name));
brcmf_dbg(EVENT, "MACEVENT: %s, failed\n", event_name);
else if (status == BRCMF_E_STATUS_NO_NETWORKS)
BRCMF_EVENT(("MACEVENT: %s, no networks found\n",
event_name));
brcmf_dbg(EVENT, "MACEVENT: %s, no networks found\n",
event_name);
else
BRCMF_EVENT(("MACEVENT: %s, unexpected status %d\n",
event_name, (int)status));
brcmf_dbg(EVENT, "MACEVENT: %s, unexpected status %d\n",
event_name, (int)status);
break;
case BRCMF_E_BEACON_RX:
if (status == BRCMF_E_STATUS_SUCCESS)
BRCMF_EVENT(("MACEVENT: %s, SUCCESS\n", event_name));
brcmf_dbg(EVENT, "MACEVENT: %s, SUCCESS\n", event_name);
else if (status == BRCMF_E_STATUS_FAIL)
BRCMF_EVENT(("MACEVENT: %s, FAIL\n", event_name));
brcmf_dbg(EVENT, "MACEVENT: %s, FAIL\n", event_name);
else
BRCMF_EVENT(("MACEVENT: %s, status %d\n", event_name,
status));
brcmf_dbg(EVENT, "MACEVENT: %s, status %d\n",
event_name, status);
break;
case BRCMF_E_LINK:
BRCMF_EVENT(("MACEVENT: %s %s\n", event_name,
link ? "UP" : "DOWN"));
brcmf_dbg(EVENT, "MACEVENT: %s %s\n",
event_name, link ? "UP" : "DOWN");
break;
case BRCMF_E_MIC_ERROR:
BRCMF_EVENT(("MACEVENT: %s, MAC %s, Group %d, Flush %d\n",
event_name, eabuf, group, flush_txq));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s, Group %d, Flush %d\n",
event_name, eabuf, group, flush_txq);
break;
case BRCMF_E_ICV_ERROR:
case BRCMF_E_UNICAST_DECODE_ERROR:
case BRCMF_E_MULTICAST_DECODE_ERROR:
BRCMF_EVENT(("MACEVENT: %s, MAC %s\n", event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, MAC %s\n", event_name, eabuf);
break;
case BRCMF_E_TXFAIL:
BRCMF_EVENT(("MACEVENT: %s, RA %s\n", event_name, eabuf));
brcmf_dbg(EVENT, "MACEVENT: %s, RA %s\n", event_name, eabuf);
break;
case BRCMF_E_SCAN_COMPLETE:
case BRCMF_E_PMKID_CACHE:
BRCMF_EVENT(("MACEVENT: %s\n", event_name));
brcmf_dbg(EVENT, "MACEVENT: %s\n", event_name);
break;
case BRCMF_E_PFN_NET_FOUND:
case BRCMF_E_PFN_NET_LOST:
case BRCMF_E_PFN_SCAN_COMPLETE:
BRCMF_EVENT(("PNOEVENT: %s\n", event_name));
brcmf_dbg(EVENT, "PNOEVENT: %s\n", event_name);
break;
case BRCMF_E_PSK_SUP:
case BRCMF_E_PRUNE:
BRCMF_EVENT(("MACEVENT: %s, status %d, reason %d\n",
event_name, (int)status, (int)reason));
brcmf_dbg(EVENT, "MACEVENT: %s, status %d, reason %d\n",
event_name, (int)status, (int)reason);
break;
case BRCMF_E_TRACE:
@ -645,11 +643,9 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
memcpy(&hdr, buf, sizeof(struct msgtrace_hdr));
if (hdr.version != MSGTRACE_VERSION) {
BRCMF_ERROR(
("\nMACEVENT: %s [unsupported version --> "
"brcmf version:%d dongle version:%d]\n",
event_name, MSGTRACE_VERSION, hdr.version)
);
brcmf_dbg(ERROR, "MACEVENT: %s [unsupported version --> brcmf version:%d dongle version:%d]\n",
event_name,
MSGTRACE_VERSION, hdr.version);
/* Reset datalen to avoid display below */
datalen = 0;
break;
@ -661,18 +657,14 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
if (be32_to_cpu(hdr.discarded_bytes)
|| be32_to_cpu(hdr.discarded_printf))
BRCMF_ERROR(("\nWLC_E_TRACE: [Discarded traces "
"in dongle -->discarded_bytes %d "
"discarded_printf %d]\n",
be32_to_cpu(hdr.discarded_bytes),
be32_to_cpu(hdr.discarded_printf)))
;
brcmf_dbg(ERROR, "WLC_E_TRACE: [Discarded traces in dongle --> discarded_bytes %d discarded_printf %d]\n",
be32_to_cpu(hdr.discarded_bytes),
be32_to_cpu(hdr.discarded_printf));
nblost = be32_to_cpu(hdr.seqnum) - seqnum_prev - 1;
if (nblost > 0)
BRCMF_ERROR(("\nWLC_E_TRACE: [Event lost --> "
"seqnum %d nblost %d\n",
be32_to_cpu(hdr.seqnum), nblost));
brcmf_dbg(ERROR, "WLC_E_TRACE: [Event lost --> seqnum %d nblost %d\n",
be32_to_cpu(hdr.seqnum), nblost);
seqnum_prev = be32_to_cpu(hdr.seqnum);
/* Display the trace buffer. Advance from \n to \n to
@ -693,24 +685,24 @@ brcmf_c_show_host_event(struct brcmf_event_msg *event, void *event_data)
break;
case BRCMF_E_RSSI:
BRCMF_EVENT(("MACEVENT: %s %d\n", event_name,
be32_to_cpu(*((int *)event_data))));
brcmf_dbg(EVENT, "MACEVENT: %s %d\n",
event_name, be32_to_cpu(*((int *)event_data)));
break;
default:
BRCMF_EVENT(("MACEVENT: %s %d, MAC %s, status %d, reason %d, "
"auth %d\n", event_name, event_type, eabuf,
(int)status, (int)reason, (int)auth_type));
brcmf_dbg(EVENT, "MACEVENT: %s %d, MAC %s, status %d, reason %d, auth %d\n",
event_name, event_type, eabuf,
(int)status, (int)reason, (int)auth_type);
break;
}
/* show any appended data */
if (datalen) {
buf = (unsigned char *) event_data;
BRCMF_EVENT((" data (%d) : ", datalen));
brcmf_dbg(EVENT, " data (%d) : ", datalen);
for (i = 0; i < datalen; i++)
BRCMF_EVENT((" 0x%02x ", *buf++));
BRCMF_EVENT(("\n"));
brcmf_dbg(EVENT, " 0x%02x ", *buf++);
brcmf_dbg(EVENT, "\n");
}
}
#endif /* SHOW_EVENTS */
@ -727,14 +719,14 @@ brcmf_c_host_event(struct brcmf_info *drvr_priv, int *ifidx, void *pktdata,
int evlen;
if (memcmp(BRCM_OUI, &pvt_data->hdr.oui[0], DOT11_OUI_LEN)) {
BRCMF_ERROR(("%s: mismatched OUI, bailing\n", __func__));
brcmf_dbg(ERROR, "mismatched OUI, bailing\n");
return -EBADE;
}
/* BRCM event pkt may be unaligned - use xxx_ua to load user_subtype. */
if (get_unaligned_be16(&pvt_data->hdr.usr_subtype) !=
BCMILCP_BCM_SUBTYPE_EVENT) {
BRCMF_ERROR(("%s: mismatched subtype, bailing\n", __func__));
brcmf_dbg(ERROR, "mismatched subtype, bailing\n");
return -EBADE;
}
@ -755,7 +747,7 @@ brcmf_c_host_event(struct brcmf_info *drvr_priv, int *ifidx, void *pktdata,
{
struct brcmf_if_event *ifevent =
(struct brcmf_if_event *) event_data;
BRCMF_TRACE(("%s: if event\n", __func__));
brcmf_dbg(TRACE, "if event\n");
if (ifevent->ifidx > 0 &&
ifevent->ifidx < BRCMF_MAX_IFS) {
@ -768,9 +760,8 @@ brcmf_c_host_event(struct brcmf_info *drvr_priv, int *ifidx, void *pktdata,
else
brcmf_del_if(drvr_priv, ifevent->ifidx);
} else {
BRCMF_ERROR(("%s: Invalid ifidx %d for %s\n",
__func__, ifevent->ifidx,
event->ifname));
brcmf_dbg(ERROR, "Invalid ifidx %d for %s\n",
ifevent->ifidx, event->ifname);
}
}
/* send up the if event: btamp user needs it */
@ -787,16 +778,16 @@ brcmf_c_host_event(struct brcmf_info *drvr_priv, int *ifidx, void *pktdata,
/* Fall through: this should get _everything_ */
*ifidx = brcmf_ifname2idx(drvr_priv, event->ifname);
BRCMF_TRACE(("%s: MAC event %d, flags %x, status %x\n",
__func__, type, flags, status));
brcmf_dbg(TRACE, "MAC event %d, flags %x, status %x\n",
type, flags, status);
/* put it back to BRCMF_E_NDIS_LINK */
if (type == BRCMF_E_NDIS_LINK) {
u32 temp;
temp = get_unaligned_be32(&event->event_type);
BRCMF_TRACE(("Converted to WLC_E_LINK type %d\n",
temp));
brcmf_dbg(TRACE, "Converted to WLC_E_LINK type %d\n",
temp);
temp = be32_to_cpu(BRCMF_E_NDIS_LINK);
memcpy((void *)(&pvt_data->msg.event_type), &temp,
@ -817,12 +808,12 @@ static int brcmf_c_pattern_atoh(char *src, char *dst)
{
int i;
if (strncmp(src, "0x", 2) != 0 && strncmp(src, "0X", 2) != 0) {
BRCMF_ERROR(("Mask invalid format. Needs to start with 0x\n"));
brcmf_dbg(ERROR, "Mask invalid format. Needs to start with 0x\n");
return -EINVAL;
}
src = src + 2; /* Skip past 0x */
if (strlen(src) % 2 != 0) {
BRCMF_ERROR(("Mask invalid format. Length must be even.\n"));
brcmf_dbg(ERROR, "Mask invalid format. Length must be even.\n");
return -EINVAL;
}
for (i = 0; *src != '\0'; i++) {
@ -856,7 +847,7 @@ brcmf_c_pktfilter_offload_enable(struct brcmf_pub *drvr, char *arg, int enable,
arg_save = kmalloc(strlen(arg) + 1, GFP_ATOMIC);
if (!arg_save) {
BRCMF_ERROR(("%s: kmalloc failed\n", __func__));
brcmf_dbg(ERROR, "kmalloc failed\n");
goto fail;
}
arg_org = arg_save;
@ -866,7 +857,7 @@ brcmf_c_pktfilter_offload_enable(struct brcmf_pub *drvr, char *arg, int enable,
i = 0;
if (NULL == argv[i]) {
BRCMF_ERROR(("No args provided\n"));
brcmf_dbg(ERROR, "No args provided\n");
goto fail;
}
@ -893,11 +884,10 @@ brcmf_c_pktfilter_offload_enable(struct brcmf_pub *drvr, char *arg, int enable,
rc = brcmf_proto_cdc_set_ioctl(drvr, 0, BRCMF_C_SET_VAR, buf, buf_len);
rc = rc >= 0 ? 0 : rc;
if (rc)
BRCMF_TRACE(("%s: failed to add pktfilter %s, retcode = %d\n",
__func__, arg, rc));
brcmf_dbg(TRACE, "failed to add pktfilter %s, retcode = %d\n",
arg, rc);
else
BRCMF_TRACE(("%s: successfully added pktfilter %s\n",
__func__, arg));
brcmf_dbg(TRACE, "successfully added pktfilter %s\n", arg);
/* Contorl the master mode */
brcmu_mkiovar("pkt_filter_mode", (char *)&master_mode, 4, buf,
@ -906,8 +896,8 @@ brcmf_c_pktfilter_offload_enable(struct brcmf_pub *drvr, char *arg, int enable,
sizeof(buf));
rc = rc >= 0 ? 0 : rc;
if (rc)
BRCMF_TRACE(("%s: failed to add pktfilter %s, retcode = %d\n",
__func__, arg, rc));
brcmf_dbg(TRACE, "failed to add pktfilter %s, retcode = %d\n",
arg, rc);
fail:
kfree(arg_org);
@ -930,7 +920,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
arg_save = kstrdup(arg, GFP_ATOMIC);
if (!arg_save) {
BRCMF_ERROR(("%s: kmalloc failed\n", __func__));
brcmf_dbg(ERROR, "kmalloc failed\n");
goto fail;
}
@ -938,7 +928,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
buf = kmalloc(PKTFILTER_BUF_SIZE, GFP_ATOMIC);
if (!buf) {
BRCMF_ERROR(("%s: kmalloc failed\n", __func__));
brcmf_dbg(ERROR, "kmalloc failed\n");
goto fail;
}
@ -948,7 +938,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
i = 0;
if (NULL == argv[i]) {
BRCMF_ERROR(("No args provided\n"));
brcmf_dbg(ERROR, "No args provided\n");
goto fail;
}
@ -965,7 +955,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
pkt_filter.id = (u32)res;
if (NULL == argv[++i]) {
BRCMF_ERROR(("Polarity not provided\n"));
brcmf_dbg(ERROR, "Polarity not provided\n");
goto fail;
}
@ -975,7 +965,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
pkt_filter.negate_match = (u32)res;
if (NULL == argv[++i]) {
BRCMF_ERROR(("Filter type not provided\n"));
brcmf_dbg(ERROR, "Filter type not provided\n");
goto fail;
}
@ -985,7 +975,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
pkt_filter.type = (u32)res;
if (NULL == argv[++i]) {
BRCMF_ERROR(("Offset not provided\n"));
brcmf_dbg(ERROR, "Offset not provided\n");
goto fail;
}
@ -995,7 +985,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
pkt_filter.u.pattern.offset = (u32)res;
if (NULL == argv[++i]) {
BRCMF_ERROR(("Bitmask not provided\n"));
brcmf_dbg(ERROR, "Bitmask not provided\n");
goto fail;
}
@ -1005,7 +995,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
(argv[i], (char *)pkt_filterp->u.pattern.mask_and_pattern);
if (NULL == argv[++i]) {
BRCMF_ERROR(("Pattern not provided\n"));
brcmf_dbg(ERROR, "Pattern not provided\n");
goto fail;
}
@ -1016,7 +1006,7 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
mask_and_pattern[mask_size]);
if (mask_size != pattern_size) {
BRCMF_ERROR(("Mask and pattern not the same size\n"));
brcmf_dbg(ERROR, "Mask and pattern not the same size\n");
goto fail;
}
@ -1037,11 +1027,10 @@ void brcmf_c_pktfilter_offload_set(struct brcmf_pub *drvr, char *arg)
rc = rc >= 0 ? 0 : rc;
if (rc)
BRCMF_TRACE(("%s: failed to add pktfilter %s, retcode = %d\n",
__func__, arg, rc));
brcmf_dbg(TRACE, "failed to add pktfilter %s, retcode = %d\n",
arg, rc);
else
BRCMF_TRACE(("%s: successfully added pktfilter %s\n",
__func__, arg));
brcmf_dbg(TRACE, "successfully added pktfilter %s\n", arg);
fail:
kfree(arg_org);
@ -1059,11 +1048,11 @@ void brcmf_c_arp_offload_set(struct brcmf_pub *drvr, int arp_mode)
iovbuf, sizeof(iovbuf));
retcode = retcode >= 0 ? 0 : retcode;
if (retcode)
BRCMF_TRACE(("%s: failed to set ARP offload mode to 0x%x, "
"retcode = %d\n", __func__, arp_mode, retcode));
brcmf_dbg(TRACE, "failed to set ARP offload mode to 0x%x, retcode = %d\n",
arp_mode, retcode);
else
BRCMF_TRACE(("%s: successfully set ARP offload mode to 0x%x\n",
__func__, arp_mode));
brcmf_dbg(TRACE, "successfully set ARP offload mode to 0x%x\n",
arp_mode);
}
void brcmf_c_arp_offload_enable(struct brcmf_pub *drvr, int arp_enable)
@ -1076,11 +1065,11 @@ void brcmf_c_arp_offload_enable(struct brcmf_pub *drvr, int arp_enable)
iovbuf, sizeof(iovbuf));
retcode = retcode >= 0 ? 0 : retcode;
if (retcode)
BRCMF_TRACE(("%s: failed to enabe ARP offload to %d, "
"retcode = %d\n", __func__, arp_enable, retcode));
brcmf_dbg(TRACE, "failed to enable ARP offload to %d, retcode = %d\n",
arp_enable, retcode);
else
BRCMF_TRACE(("%s: successfully enabed ARP offload to %d\n",
__func__, arp_enable));
brcmf_dbg(TRACE, "successfully enabled ARP offload to %d\n",
arp_enable);
}
int brcmf_c_preinit_ioctls(struct brcmf_pub *drvr)
@ -1103,8 +1092,7 @@ int brcmf_c_preinit_ioctls(struct brcmf_pub *drvr)
if (brcmf_proto_cdc_set_ioctl(drvr, 0, BRCMF_C_SET_COUNTRY,
drvr->country_code,
sizeof(drvr->country_code)) < 0)
BRCMF_ERROR(("%s: country code setting failed\n",
__func__));
brcmf_dbg(ERROR, "country code setting failed\n");
}
/* query for 'ver' to get version info from firmware */
@ -1114,7 +1102,7 @@ int brcmf_c_preinit_ioctls(struct brcmf_pub *drvr)
brcmf_proto_cdc_query_ioctl(drvr, 0, BRCMF_C_GET_VAR, buf, sizeof(buf));
strsep(&ptr, "\n");
/* Print fw version info */
BRCMF_ERROR(("Firmware version = %s\n", buf));
brcmf_dbg(ERROR, "Firmware version = %s\n", buf);
/* Match Host and Dongle rx alignment */
brcmu_mkiovar("bus:txglomalign", (char *)&dongle_align, 4, iovbuf,

View file

@ -19,25 +19,21 @@
#if defined(BCMDBG)
#define BRCMF_ERROR(args) \
do {if ((brcmf_msg_level & BRCMF_ERROR_VAL) && (net_ratelimit())) \
printk args; } while (0)
#define BRCMF_TRACE(args) do {if (brcmf_msg_level & BRCMF_TRACE_VAL) \
printk args; } while (0)
#define BRCMF_INFO(args) do {if (brcmf_msg_level & BRCMF_INFO_VAL) \
printk args; } while (0)
#define BRCMF_DATA(args) do {if (brcmf_msg_level & BRCMF_DATA_VAL) \
printk args; } while (0)
#define BRCMF_CTL(args) do {if (brcmf_msg_level & BRCMF_CTL_VAL) \
printk args; } while (0)
#define BRCMF_TIMER(args) do {if (brcmf_msg_level & BRCMF_TIMER_VAL) \
printk args; } while (0)
#define BRCMF_INTR(args) do {if (brcmf_msg_level & BRCMF_INTR_VAL) \
printk args; } while (0)
#define BRCMF_GLOM(args) do {if (brcmf_msg_level & BRCMF_GLOM_VAL) \
printk args; } while (0)
#define BRCMF_EVENT(args) do {if (brcmf_msg_level & BRCMF_EVENT_VAL) \
printk args; } while (0)
#define brcmf_dbg(level, fmt, ...) \
do { \
if (BRCMF_ERROR_VAL == BRCMF_##level##_VAL) { \
if (brcmf_msg_level & BRCMF_##level##_VAL) { \
if (net_ratelimit()) \
printk(KERN_DEBUG "%s: " fmt, \
__func__, ##__VA_ARGS__); \
} \
} else { \
if (brcmf_msg_level & BRCMF_##level##_VAL) { \
printk(KERN_DEBUG "%s: " fmt, \
__func__, ##__VA_ARGS__); \
} \
} \
} while (0)
#define BRCMF_DATA_ON() (brcmf_msg_level & BRCMF_DATA_VAL)
#define BRCMF_CTL_ON() (brcmf_msg_level & BRCMF_CTL_VAL)
@ -47,20 +43,12 @@
#else /* (defined BCMDBG) || (defined BCMDBG) */
#define BRCMF_ERROR(args) do {if (net_ratelimit()) printk args; } while (0)
#define BRCMF_TRACE(args)
#define BRCMF_INFO(args)
#define BRCMF_DATA(args)
#define BRCMF_CTL(args)
#define BRCMF_TIMER(args)
#define BRCMF_INTR(args)
#define BRCMF_GLOM(args)
#define BRCMF_EVENT(args)
#define brcmf_dbg(level, fmt, ...) no_printk(fmt, ##__VA_ARGS__)
#define BRCMF_DATA_ON() 0
#define BRCMF_CTL_ON() 0
#define BRCMF_HDRS_ON() 0
#define BRCMF_BYTES_ON() 0
#define BRCMF_BYTES_ON() 0
#define BRCMF_GLOM_ON() 0
#endif /* defined(BCMDBG) */

View file

@ -163,7 +163,7 @@ int brcmf_ifname2idx(struct brcmf_info *drvr_priv, char *name)
&& !strncmp(drvr_priv->iflist[i]->name, name, IFNAMSIZ))
break;
BRCMF_TRACE(("%s: return idx %d for \"%s\"\n", __func__, i, name));
brcmf_dbg(TRACE, "return idx %d for \"%s\"\n", i, name);
return i; /* default - the primary interface */
}
@ -173,12 +173,12 @@ char *brcmf_ifname(struct brcmf_pub *drvr, int ifidx)
struct brcmf_info *drvr_priv = drvr->info;
if (ifidx < 0 || ifidx >= BRCMF_MAX_IFS) {
BRCMF_ERROR(("%s: ifidx %d out of range\n", __func__, ifidx));
brcmf_dbg(ERROR, "ifidx %d out of range\n", ifidx);
return "<if_bad>";
}
if (drvr_priv->iflist[ifidx] == NULL) {
BRCMF_ERROR(("%s: null i/f %d\n", __func__, ifidx));
brcmf_dbg(ERROR, "null i/f %d\n", ifidx);
return "<if_null>";
}
@ -210,8 +210,8 @@ static void _brcmf_set_multicast_list(struct brcmf_info *drvr_priv, int ifidx)
buflen = sizeof("mcast_list") + sizeof(cnt) + (cnt * ETH_ALEN);
bufp = buf = kmalloc(buflen, GFP_ATOMIC);
if (!bufp) {
BRCMF_ERROR(("%s: out of memory for mcast_list, cnt %d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), cnt));
brcmf_dbg(ERROR, "%s: out of memory for mcast_list, cnt %d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), cnt);
return;
}
@ -238,8 +238,8 @@ static void _brcmf_set_multicast_list(struct brcmf_info *drvr_priv, int ifidx)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0) {
BRCMF_ERROR(("%s: set mcast_list failed, cnt %d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), cnt));
brcmf_dbg(ERROR, "%s: set mcast_list failed, cnt %d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), cnt);
allmulti = cnt ? true : allmulti;
}
@ -253,18 +253,17 @@ static void _brcmf_set_multicast_list(struct brcmf_info *drvr_priv, int ifidx)
buflen = sizeof("allmulti") + sizeof(allmulti);
buf = kmalloc(buflen, GFP_ATOMIC);
if (!buf) {
BRCMF_ERROR(("%s: out of memory for allmulti\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(ERROR, "%s: out of memory for allmulti\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
return;
}
allmulti = cpu_to_le32(allmulti);
if (!brcmu_mkiovar
("allmulti", (void *)&allmulti, sizeof(allmulti), buf, buflen)) {
BRCMF_ERROR(("%s: mkiovar failed for allmulti, datalen %d "
"buflen %u\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
(int)sizeof(allmulti), buflen));
brcmf_dbg(ERROR, "%s: mkiovar failed for allmulti, datalen %d buflen %u\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
(int)sizeof(allmulti), buflen);
kfree(buf);
return;
}
@ -277,9 +276,9 @@ static void _brcmf_set_multicast_list(struct brcmf_info *drvr_priv, int ifidx)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0) {
BRCMF_ERROR(("%s: set allmulti %d failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
le32_to_cpu(allmulti)));
brcmf_dbg(ERROR, "%s: set allmulti %d failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
le32_to_cpu(allmulti));
}
kfree(buf);
@ -298,9 +297,9 @@ static void _brcmf_set_multicast_list(struct brcmf_info *drvr_priv, int ifidx)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0) {
BRCMF_ERROR(("%s: set promisc %d failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
le32_to_cpu(allmulti)));
brcmf_dbg(ERROR, "%s: set promisc %d failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx),
le32_to_cpu(allmulti));
}
}
@ -311,11 +310,10 @@ _brcmf_set_mac_address(struct brcmf_info *drvr_priv, int ifidx, u8 *addr)
struct brcmf_ioctl ioc;
int ret;
BRCMF_TRACE(("%s enter\n", __func__));
if (!brcmu_mkiovar
("cur_etheraddr", (char *)addr, ETH_ALEN, buf, 32)) {
BRCMF_ERROR(("%s: mkiovar failed for cur_etheraddr\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(TRACE, "enter\n");
if (!brcmu_mkiovar("cur_etheraddr", (char *)addr, ETH_ALEN, buf, 32)) {
brcmf_dbg(ERROR, "%s: mkiovar failed for cur_etheraddr\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
return -1;
}
memset(&ioc, 0, sizeof(ioc));
@ -326,8 +324,8 @@ _brcmf_set_mac_address(struct brcmf_info *drvr_priv, int ifidx, u8 *addr)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0)
BRCMF_ERROR(("%s: set cur_etheraddr failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(ERROR, "%s: set cur_etheraddr failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
else
memcpy(drvr_priv->iflist[ifidx]->net->dev_addr, addr, ETH_ALEN);
@ -346,7 +344,7 @@ static void brcmf_op_if(struct brcmf_if *ifp)
drvr_priv = ifp->info;
BRCMF_TRACE(("%s: idx %d, state %d\n", __func__, ifp->idx, ifp->state));
brcmf_dbg(TRACE, "idx %d, state %d\n", ifp->idx, ifp->state);
switch (ifp->state) {
case BRCMF_E_IF_ADD:
@ -355,9 +353,8 @@ static void brcmf_op_if(struct brcmf_if *ifp)
* in case we missed the BRCMF_E_IF_DEL event.
*/
if (ifp->net != NULL) {
BRCMF_ERROR(("%s: ERROR: netdev:%s already exists, "
"try free & unregister\n",
__func__, ifp->net->name));
brcmf_dbg(ERROR, "ERROR: netdev:%s already exists, try free & unregister\n",
ifp->net->name);
netif_stop_queue(ifp->net);
unregister_netdev(ifp->net);
free_netdev(ifp->net);
@ -365,7 +362,7 @@ static void brcmf_op_if(struct brcmf_if *ifp)
/* Allocate etherdev, including space for private structure */
ifp->net = alloc_etherdev(sizeof(drvr_priv));
if (!ifp->net) {
BRCMF_ERROR(("%s: OOM - alloc_etherdev\n", __func__));
brcmf_dbg(ERROR, "OOM - alloc_etherdev\n");
ret = -ENOMEM;
}
if (ret == 0) {
@ -374,9 +371,8 @@ static void brcmf_op_if(struct brcmf_if *ifp)
sizeof(drvr_priv));
err = brcmf_net_attach(&drvr_priv->pub, ifp->idx);
if (err != 0) {
BRCMF_ERROR(("%s: brcmf_net_attach failed, "
"err %d\n",
__func__, err));
brcmf_dbg(ERROR, "brcmf_net_attach failed, err %d\n",
err);
ret = -EOPNOTSUPP;
} else {
#ifdef SOFTAP
@ -391,17 +387,15 @@ static void brcmf_op_if(struct brcmf_if *ifp)
wl0.1 is ready */
up(&ap_eth_sema);
#endif
BRCMF_TRACE(("\n ==== pid:%x, net_device for "
"if:%s created ===\n\n",
current->pid, ifp->net->name));
brcmf_dbg(TRACE, " ==== pid:%x, net_device for if:%s created ===\n",
current->pid, ifp->net->name);
ifp->state = 0;
}
}
break;
case BRCMF_E_IF_DEL:
if (ifp->net != NULL) {
BRCMF_TRACE(("\n%s: got 'WLC_E_IF_DEL' state\n",
__func__));
brcmf_dbg(TRACE, "got 'WLC_E_IF_DEL' state\n");
netif_stop_queue(ifp->net);
unregister_netdev(ifp->net);
ret = BRCMF_DEL_IF; /* Make sure the free_netdev()
@ -409,7 +403,7 @@ static void brcmf_op_if(struct brcmf_if *ifp)
}
break;
default:
BRCMF_ERROR(("%s: bad op %d\n", __func__, ifp->state));
brcmf_dbg(ERROR, "bad op %d\n", ifp->state);
break;
}
@ -458,26 +452,21 @@ static int _brcmf_sysioc_thread(void *data)
brcmf_op_if(ifentry);
#ifdef SOFTAP
if (drvr_priv->iflist[i] == NULL) {
BRCMF_TRACE(("\n\n %s: interface %d "
"removed!\n", __func__,
i));
brcmf_dbg(TRACE, "interface %d removed!\n",
i);
continue;
}
if (in_ap && drvr_priv->set_macaddress) {
BRCMF_TRACE(("attempt to set MAC for"
" %s in AP Mode,"
" blocked.\n",
ifentry->net->name));
brcmf_dbg(TRACE, "attempt to set MAC for %s in AP Mode, blocked.\n",
ifentry->net->name);
drvr_priv->set_macaddress = false;
continue;
}
if (in_ap && drvr_priv->set_multicast) {
BRCMF_TRACE(("attempt to set MULTICAST "
"list for %s in AP Mode, "
"blocked.\n",
ifentry->net->name));
brcmf_dbg(TRACE, "attempt to set MULTICAST list for %s in AP Mode, blocked.\n",
ifentry->net->name);
drvr_priv->set_multicast = false;
continue;
}
@ -561,20 +550,19 @@ static int brcmf_netdev_start_xmit(struct sk_buff *skb, struct net_device *net)
struct brcmf_info *drvr_priv = *(struct brcmf_info **) netdev_priv(net);
int ifidx;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* Reject if down */
if (!drvr_priv->pub.up || (drvr_priv->pub.busstate == BRCMF_BUS_DOWN)) {
BRCMF_ERROR(("%s: xmit rejected pub.up=%d busstate=%d\n",
__func__, drvr_priv->pub.up,
drvr_priv->pub.busstate));
brcmf_dbg(ERROR, "xmit rejected pub.up=%d busstate=%d\n",
drvr_priv->pub.up, drvr_priv->pub.busstate);
netif_stop_queue(net);
return -ENODEV;
}
ifidx = brcmf_net2idx(drvr_priv, net);
if (ifidx == BRCMF_BAD_IF) {
BRCMF_ERROR(("%s: bad ifidx %d\n", __func__, ifidx));
brcmf_dbg(ERROR, "bad ifidx %d\n", ifidx);
netif_stop_queue(net);
return -ENODEV;
}
@ -583,15 +571,15 @@ static int brcmf_netdev_start_xmit(struct sk_buff *skb, struct net_device *net)
if (skb_headroom(skb) < drvr_priv->pub.hdrlen) {
struct sk_buff *skb2;
BRCMF_INFO(("%s: insufficient headroom\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(INFO, "%s: insufficient headroom\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
drvr_priv->pub.tx_realloc++;
skb2 = skb_realloc_headroom(skb, drvr_priv->pub.hdrlen);
dev_kfree_skb(skb);
skb = skb2;
if (skb == NULL) {
BRCMF_ERROR(("%s: skb_realloc_headroom failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(ERROR, "%s: skb_realloc_headroom failed\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
ret = -ENOMEM;
goto done;
}
@ -614,7 +602,7 @@ void brcmf_txflowcontrol(struct brcmf_pub *drvr, int ifidx, bool state)
struct net_device *net;
struct brcmf_info *drvr_priv = drvr->info;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
drvr->txoff = state;
net = drvr_priv->iflist[ifidx]->net;
@ -636,7 +624,7 @@ void brcmf_rx_frame(struct brcmf_pub *drvr, int ifidx, struct sk_buff *skb,
struct brcmf_if *ifp;
struct brcmf_event_msg event;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
save_pktbuf = skb;
@ -728,7 +716,7 @@ static struct net_device_stats *brcmf_netdev_get_stats(struct net_device *net)
struct brcmf_if *ifp;
int ifidx;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
ifidx = brcmf_net2idx(drvr_priv, net);
if (ifidx == BRCMF_BAD_IF)
@ -774,13 +762,13 @@ static int brcmf_toe_get(struct brcmf_info *drvr_priv, int ifidx, u32 *toe_ol)
if (ret < 0) {
/* Check for older dongle image that doesn't support toe_ol */
if (ret == -EIO) {
BRCMF_ERROR(("%s: toe not supported by device\n",
brcmf_ifname(&drvr_priv->pub, ifidx)));
brcmf_dbg(ERROR, "%s: toe not supported by device\n",
brcmf_ifname(&drvr_priv->pub, ifidx));
return -EOPNOTSUPP;
}
BRCMF_INFO(("%s: could not get toe_ol: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret));
brcmf_dbg(INFO, "%s: could not get toe_ol: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret);
return ret;
}
@ -810,8 +798,8 @@ static int brcmf_toe_set(struct brcmf_info *drvr_priv, int ifidx, u32 toe_ol)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0) {
BRCMF_ERROR(("%s: could not set toe_ol: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret));
brcmf_dbg(ERROR, "%s: could not set toe_ol: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret);
return ret;
}
@ -824,8 +812,8 @@ static int brcmf_toe_set(struct brcmf_info *drvr_priv, int ifidx, u32 toe_ol)
ret = brcmf_proto_ioctl(&drvr_priv->pub, ifidx, &ioc, ioc.buf, ioc.len);
if (ret < 0) {
BRCMF_ERROR(("%s: could not set toe: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret));
brcmf_dbg(ERROR, "%s: could not set toe: ret=%d\n",
brcmf_ifname(&drvr_priv->pub, ifidx), ret);
return ret;
}
@ -857,7 +845,7 @@ static int brcmf_ethtool(struct brcmf_info *drvr_priv, void *uaddr)
u32 toe_cmpnt, csum_dir;
int ret;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* all ethtool calls start with a cmd word */
if (copy_from_user(&cmd, uaddr, sizeof(u32)))
@ -883,7 +871,7 @@ static int brcmf_ethtool(struct brcmf_info *drvr_priv, void *uaddr)
/* otherwise, require dongle to be up */
else if (!drvr_priv->pub.up) {
BRCMF_ERROR(("%s: dongle is not up\n", __func__));
brcmf_dbg(ERROR, "dongle is not up\n");
return -ENODEV;
}
@ -896,8 +884,8 @@ static int brcmf_ethtool(struct brcmf_info *drvr_priv, void *uaddr)
sprintf(info.version, "%lu", drvr_priv->pub.drv_version);
if (copy_to_user(uaddr, &info, sizeof(info)))
return -EFAULT;
BRCMF_CTL(("%s: given %*s, returning %s\n", __func__,
(int)sizeof(drvname), drvname, info.driver));
brcmf_dbg(CTL, "given %*s, returning %s\n",
(int)sizeof(drvname), drvname, info.driver);
break;
/* Get toe offload components from dongle */
@ -972,7 +960,7 @@ static int brcmf_netdev_ioctl_entry(struct net_device *net, struct ifreq *ifr,
bool is_set_key_cmd;
ifidx = brcmf_net2idx(drvr_priv, net);
BRCMF_TRACE(("%s: ifidx %d, cmd 0x%04x\n", __func__, ifidx, cmd));
brcmf_dbg(TRACE, "ifidx %d, cmd 0x%04x\n", ifidx, cmd);
if (ifidx == BRCMF_BAD_IF)
return -1;
@ -1036,7 +1024,7 @@ static int brcmf_netdev_ioctl_entry(struct net_device *net, struct ifreq *ifr,
/* send to dongle (must be up, and wl) */
if ((drvr_priv->pub.busstate != BRCMF_BUS_DATA)) {
BRCMF_ERROR(("%s DONGLE_DOWN,__func__\n", __func__));
brcmf_dbg(ERROR, "DONGLE_DOWN\n");
bcmerror = -EIO;
goto done;
}
@ -1080,7 +1068,7 @@ static int brcmf_netdev_stop(struct net_device *net)
#if !defined(IGNORE_ETH0_DOWN)
struct brcmf_info *drvr_priv = *(struct brcmf_info **) netdev_priv(net);
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
brcmf_cfg80211_down();
if (drvr_priv->pub.up == 0)
return 0;
@ -1089,8 +1077,7 @@ static int brcmf_netdev_stop(struct net_device *net)
drvr_priv->pub.up = 0;
netif_stop_queue(net);
#else
BRCMF_ERROR(("BYPASS %s:due to BRCM compilation: under investigation\n",
__func__));
brcmf_dbg(ERROR, "BYPASSed due to BRCM compilation: under investigation\n");
#endif /* !defined(IGNORE_ETH0_DOWN) */
return 0;
@ -1103,15 +1090,14 @@ static int brcmf_netdev_open(struct net_device *net)
int ifidx = brcmf_net2idx(drvr_priv, net);
s32 ret = 0;
BRCMF_TRACE(("%s: ifidx %d\n", __func__, ifidx));
brcmf_dbg(TRACE, "ifidx %d\n", ifidx);
if (ifidx == 0) { /* do it only for primary eth0 */
/* try to bring up bus */
ret = brcmf_bus_start(&drvr_priv->pub);
if (ret != 0) {
BRCMF_ERROR(("%s: failed with code %d\n",
__func__, ret));
brcmf_dbg(ERROR, "failed with code %d\n", ret);
return -1;
}
atomic_set(&drvr_priv->pend_8021x_cnt, 0);
@ -1131,8 +1117,7 @@ static int brcmf_netdev_open(struct net_device *net)
netif_start_queue(net);
drvr_priv->pub.up = 1;
if (unlikely(brcmf_cfg80211_up())) {
BRCMF_ERROR(("%s: failed to bring up cfg80211\n",
__func__));
brcmf_dbg(ERROR, "failed to bring up cfg80211\n");
return -1;
}
@ -1145,13 +1130,13 @@ brcmf_add_if(struct brcmf_info *drvr_priv, int ifidx, struct net_device *net,
{
struct brcmf_if *ifp;
BRCMF_TRACE(("%s: idx %d, handle->%p\n", __func__, ifidx, net));
brcmf_dbg(TRACE, "idx %d, handle->%p\n", ifidx, net);
ifp = drvr_priv->iflist[ifidx];
if (!ifp) {
ifp = kmalloc(sizeof(struct brcmf_if), GFP_ATOMIC);
if (!ifp) {
BRCMF_ERROR(("%s: OOM - struct brcmf_if\n", __func__));
brcmf_dbg(ERROR, "OOM - struct brcmf_if\n");
return -ENOMEM;
}
}
@ -1177,11 +1162,11 @@ void brcmf_del_if(struct brcmf_info *drvr_priv, int ifidx)
{
struct brcmf_if *ifp;
BRCMF_TRACE(("%s: idx %d\n", __func__, ifidx));
brcmf_dbg(TRACE, "idx %d\n", ifidx);
ifp = drvr_priv->iflist[ifidx];
if (!ifp) {
BRCMF_ERROR(("%s: Null interface\n", __func__));
brcmf_dbg(ERROR, "Null interface\n");
return;
}
@ -1195,19 +1180,19 @@ struct brcmf_pub *brcmf_attach(struct brcmf_bus *bus, uint bus_hdrlen)
struct brcmf_info *drvr_priv = NULL;
struct net_device *net;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
/* Allocate etherdev, including space for private structure */
net = alloc_etherdev(sizeof(drvr_priv));
if (!net) {
BRCMF_ERROR(("%s: OOM - alloc_etherdev\n", __func__));
brcmf_dbg(ERROR, "OOM - alloc_etherdev\n");
goto fail;
}
/* Allocate primary brcmf_info */
drvr_priv = kzalloc(sizeof(struct brcmf_info), GFP_ATOMIC);
if (!drvr_priv) {
BRCMF_ERROR(("%s: OOM - alloc brcmf_info\n", __func__));
brcmf_dbg(ERROR, "OOM - alloc brcmf_info\n");
goto fail;
}
@ -1244,13 +1229,13 @@ struct brcmf_pub *brcmf_attach(struct brcmf_bus *bus, uint bus_hdrlen)
/* Attach and link in the protocol */
if (brcmf_proto_attach(&drvr_priv->pub) != 0) {
BRCMF_ERROR(("brcmf_prot_attach failed\n"));
brcmf_dbg(ERROR, "brcmf_prot_attach failed\n");
goto fail;
}
/* Attach and link in the cfg80211 */
if (unlikely(brcmf_cfg80211_attach(net, &drvr_priv->pub))) {
BRCMF_ERROR(("wl_cfg80211_attach failed\n"));
brcmf_dbg(ERROR, "wl_cfg80211_attach failed\n");
goto fail;
}
@ -1289,19 +1274,18 @@ int brcmf_bus_start(struct brcmf_pub *drvr)
/* Room for "event_msgs" + '\0' + bitvec */
char iovbuf[BRCMF_EVENTING_MASK_LEN + 12];
BRCMF_TRACE(("%s:\n", __func__));
brcmf_dbg(TRACE, "\n");
/* Bring up the bus */
ret = brcmf_sdbrcm_bus_init(&drvr_priv->pub, true);
if (ret != 0) {
BRCMF_ERROR(("%s, brcmf_sdbrcm_bus_init failed %d\n", __func__,
ret));
brcmf_dbg(ERROR, "brcmf_sdbrcm_bus_init failed %d\n", ret);
return ret;
}
/* If bus is not ready, can't come up */
if (drvr_priv->pub.busstate != BRCMF_BUS_DATA) {
BRCMF_ERROR(("%s failed bus is not ready\n", __func__));
brcmf_dbg(ERROR, "failed bus is not ready\n");
return -ENODEV;
}
@ -1361,7 +1345,7 @@ int brcmf_net_attach(struct brcmf_pub *drvr, int ifidx)
u8 temp_addr[ETH_ALEN] = {
0x00, 0x90, 0x4c, 0x11, 0x22, 0x33};
BRCMF_TRACE(("%s: ifidx %d\n", __func__, ifidx));
brcmf_dbg(TRACE, "ifidx %d\n", ifidx);
net = drvr_priv->iflist[ifidx]->net;
net->netdev_ops = &brcmf_netdev_ops_pri;
@ -1376,7 +1360,7 @@ int brcmf_net_attach(struct brcmf_pub *drvr, int ifidx)
}
if (ifidx == 1) {
BRCMF_TRACE(("%s ACCESS POINT MAC:\n", __func__));
brcmf_dbg(TRACE, "ACCESS POINT MAC:\n");
/* ACCESSPOINT INTERFACE CASE */
temp_addr[0] |= 0X02; /* set bit 2 ,
- Locally Administered address */
@ -1391,12 +1375,11 @@ int brcmf_net_attach(struct brcmf_pub *drvr, int ifidx)
memcpy(net->dev_addr, temp_addr, ETH_ALEN);
if (register_netdev(net) != 0) {
BRCMF_ERROR(("%s: couldn't register the net device\n",
__func__));
brcmf_dbg(ERROR, "couldn't register the net device\n");
goto fail;
}
BRCMF_INFO(("%s: Broadcom Dongle Host Driver\n", net->name));
brcmf_dbg(INFO, "%s: Broadcom Dongle Host Driver\n", net->name);
return 0;
@ -1409,7 +1392,7 @@ static void brcmf_bus_detach(struct brcmf_pub *drvr)
{
struct brcmf_info *drvr_priv;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
if (drvr) {
drvr_priv = drvr->info;
@ -1427,7 +1410,7 @@ void brcmf_detach(struct brcmf_pub *drvr)
{
struct brcmf_info *drvr_priv;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
if (drvr) {
drvr_priv = drvr->info;
@ -1467,7 +1450,7 @@ void brcmf_detach(struct brcmf_pub *drvr)
static void __exit brcmf_module_cleanup(void)
{
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
brcmf_bus_unregister();
}
@ -1476,12 +1459,12 @@ static int __init brcmf_module_init(void)
{
int error;
BRCMF_TRACE(("%s: Enter\n", __func__));
brcmf_dbg(TRACE, "Enter\n");
error = brcmf_bus_register();
if (error) {
BRCMF_ERROR(("%s: brcmf_bus_register failed\n", __func__));
brcmf_dbg(ERROR, "brcmf_bus_register failed\n");
goto failed;
}
return 0;
@ -1583,7 +1566,7 @@ int brcmf_write_to_file(struct brcmf_pub *drvr, u8 *buf, int size)
/* open file to write */
fp = filp_open("/tmp/mem_dump", O_WRONLY | O_CREAT, 0640);
if (!fp) {
BRCMF_ERROR(("%s: open file error\n", __func__));
brcmf_dbg(ERROR, "open file error\n");
ret = -1;
goto exit;
}

File diff suppressed because it is too large Load diff