Lines Matching refs:rd

1391 			      struct brcmf_sdio_hdrinfo *rd,  in brcmf_sdio_hdparse()  argument
1419 (roundup(len, bus->blocksize) != rd->len)) { in brcmf_sdio_hdparse()
1423 if (type == BRCMF_SDIO_FT_SUB && len > rd->len) { in brcmf_sdio_hdparse()
1427 rd->len = len; in brcmf_sdio_hdparse()
1434 rd->len = 0; in brcmf_sdio_hdparse()
1438 rd->channel = (swheader & SDPCM_CHANNEL_MASK) >> SDPCM_CHANNEL_SHIFT; in brcmf_sdio_hdparse()
1439 if (len > MAX_RX_DATASZ && rd->channel != SDPCM_CONTROL_CHANNEL && in brcmf_sdio_hdparse()
1444 rd->len = 0; in brcmf_sdio_hdparse()
1447 if (type == BRCMF_SDIO_FT_SUPER && rd->channel != SDPCM_GLOM_CHANNEL) { in brcmf_sdio_hdparse()
1449 rd->len = 0; in brcmf_sdio_hdparse()
1452 if (type == BRCMF_SDIO_FT_SUB && rd->channel != SDPCM_DATA_CHANNEL && in brcmf_sdio_hdparse()
1453 rd->channel != SDPCM_EVENT_CHANNEL) { in brcmf_sdio_hdparse()
1455 rd->len = 0; in brcmf_sdio_hdparse()
1458 rd->dat_offset = brcmf_sdio_getdatoffset(header); in brcmf_sdio_hdparse()
1459 if (rd->dat_offset < SDPCM_HDRLEN || rd->dat_offset > rd->len) { in brcmf_sdio_hdparse()
1463 rd->len = 0; in brcmf_sdio_hdparse()
1466 if (rd->seq_num != rx_seq) { in brcmf_sdio_hdparse()
1468 rx_seq, rd->seq_num); in brcmf_sdio_hdparse()
1470 rd->seq_num = rx_seq; in brcmf_sdio_hdparse()
1475 rd->len_nxtfrm = (swheader & SDPCM_NEXTLEN_MASK) >> SDPCM_NEXTLEN_SHIFT; in brcmf_sdio_hdparse()
1476 if (rd->len_nxtfrm << 4 > MAX_RX_DATASZ) { in brcmf_sdio_hdparse()
1478 if (rd->channel != SDPCM_GLOM_CHANNEL) in brcmf_sdio_hdparse()
1480 rd->len_nxtfrm = 0; in brcmf_sdio_hdparse()
1896 struct brcmf_sdio_hdrinfo *rd = &bus->cur_read, rd_new; in brcmf_sdio_readframes() local
1904 for (rd->seq_num = bus->rx_seq, rxleft = maxframes; in brcmf_sdio_readframes()
1906 rd->seq_num++, rxleft--) { in brcmf_sdio_readframes()
1913 cnt = brcmf_sdio_rxglom(bus, rd->seq_num); in brcmf_sdio_readframes()
1915 rd->seq_num += cnt - 1; in brcmf_sdio_readframes()
1920 rd->len_left = rd->len; in brcmf_sdio_readframes()
1923 if (!rd->len) { in brcmf_sdio_readframes()
1940 if (brcmf_sdio_hdparse(bus, bus->rxhdr, rd, in brcmf_sdio_readframes()
1949 if (rd->channel == SDPCM_CONTROL_CHANNEL) { in brcmf_sdio_readframes()
1951 rd->len, in brcmf_sdio_readframes()
1952 rd->dat_offset); in brcmf_sdio_readframes()
1954 rd->len = rd->len_nxtfrm << 4; in brcmf_sdio_readframes()
1955 rd->len_nxtfrm = 0; in brcmf_sdio_readframes()
1957 rd->channel = SDPCM_EVENT_CHANNEL; in brcmf_sdio_readframes()
1961 rd->len_left = rd->len > BRCMF_FIRSTREAD ? in brcmf_sdio_readframes()
1962 rd->len - BRCMF_FIRSTREAD : 0; in brcmf_sdio_readframes()
1966 brcmf_sdio_pad(bus, &pad, &rd->len_left); in brcmf_sdio_readframes()
1968 pkt = brcmu_pkt_buf_get_skb(rd->len_left + head_read + in brcmf_sdio_readframes()
1974 RETRYCHAN(rd->channel)); in brcmf_sdio_readframes()
1979 pkt_align(pkt, rd->len_left, bus->head_align); in brcmf_sdio_readframes()
1987 rd->len, rd->channel, ret); in brcmf_sdio_readframes()
1991 RETRYCHAN(rd->channel)); in brcmf_sdio_readframes()
2002 rd_new.seq_num = rd->seq_num; in brcmf_sdio_readframes()
2006 rd->len = 0; in brcmf_sdio_readframes()
2010 if (rd->len != roundup(rd_new.len, 16)) { in brcmf_sdio_readframes()
2012 rd->len, in brcmf_sdio_readframes()
2014 rd->len = 0; in brcmf_sdio_readframes()
2021 rd->len_nxtfrm = rd_new.len_nxtfrm; in brcmf_sdio_readframes()
2022 rd->channel = rd_new.channel; in brcmf_sdio_readframes()
2023 rd->dat_offset = rd_new.dat_offset; in brcmf_sdio_readframes()
2035 rd->len = 0; in brcmf_sdio_readframes()
2045 pkt->data, rd->len, "Rx Data:\n"); in brcmf_sdio_readframes()
2048 if (rd->channel == SDPCM_GLOM_CHANNEL) { in brcmf_sdio_readframes()
2051 rd->len); in brcmf_sdio_readframes()
2053 pkt->data, rd->len, in brcmf_sdio_readframes()
2055 __skb_trim(pkt, rd->len); in brcmf_sdio_readframes()
2066 rd->len = rd->len_nxtfrm << 4; in brcmf_sdio_readframes()
2067 rd->len_nxtfrm = 0; in brcmf_sdio_readframes()
2069 rd->channel = SDPCM_EVENT_CHANNEL; in brcmf_sdio_readframes()
2074 __skb_trim(pkt, rd->len); in brcmf_sdio_readframes()
2075 skb_pull(pkt, rd->dat_offset); in brcmf_sdio_readframes()
2078 rd->len = rd->len_nxtfrm << 4; in brcmf_sdio_readframes()
2079 rd->len_nxtfrm = 0; in brcmf_sdio_readframes()
2081 rd->channel = SDPCM_EVENT_CHANNEL; in brcmf_sdio_readframes()
2099 rd->seq_num--; in brcmf_sdio_readframes()
2100 bus->rx_seq = rd->seq_num; in brcmf_sdio_readframes()