summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/net/mac802154.h10
-rw-r--r--net/mac802154/rx.c2
-rw-r--r--net/mac802154/tx.c2
3 files changed, 10 insertions, 4 deletions
diff --git a/include/net/mac802154.h b/include/net/mac802154.h
index 166ef6c52180..bc1d40c826e3 100644
--- a/include/net/mac802154.h
+++ b/include/net/mac802154.h
@@ -73,8 +73,8 @@ struct ieee802154_hw {
* however, so you are advised to review these flags carefully.
*/
-/* Indicates that receiver omits FCS and xmitter will add FCS on it's own. */
-#define IEEE802154_HW_OMIT_CKSUM 0x00000001
+/* Indicates that xmitter will add FCS on it's own. */
+#define IEEE802154_HW_TX_OMIT_CKSUM 0x00000001
/* Indicates that receiver will autorespond with ACK frames. */
#define IEEE802154_HW_AACK 0x00000002
/* Indicates that transceiver will support transmit power setting. */
@@ -94,6 +94,12 @@ struct ieee802154_hw {
#define IEEE802154_HW_AFILT 0x00000100
/* Indicates that transceiver will support promiscuous mode setting. */
#define IEEE802154_HW_PROMISCUOUS 0x00000200
+/* Indicates that receiver omits FCS. */
+#define IEEE802154_HW_RX_OMIT_CKSUM 0x00000400
+
+/* Indicates that receiver omits FCS and xmitter will add FCS on it's own. */
+#define IEEE802154_HW_OMIT_CKSUM (IEEE802154_HW_TX_OMIT_CKSUM | \
+ IEEE802154_HW_RX_OMIT_CKSUM)
/* This groups the most common CSMA support fields into one. */
#define IEEE802154_HW_CSMA (IEEE802154_HW_CCA_MODE | \
diff --git a/net/mac802154/rx.c b/net/mac802154/rx.c
index 86394befbf88..2aa80bdcbacf 100644
--- a/net/mac802154/rx.c
+++ b/net/mac802154/rx.c
@@ -255,7 +255,7 @@ void ieee802154_rx(struct ieee802154_hw *hw, struct sk_buff *skb)
WARN_ON_ONCE(softirq_count() == 0);
- if (!(local->hw.flags & IEEE802154_HW_OMIT_CKSUM)) {
+ if (!(local->hw.flags & IEEE802154_HW_RX_OMIT_CKSUM)) {
u16 crc;
if (skb->len < 2) {
diff --git a/net/mac802154/tx.c b/net/mac802154/tx.c
index 77973a84e9a2..cc37b77f2632 100644
--- a/net/mac802154/tx.c
+++ b/net/mac802154/tx.c
@@ -83,7 +83,7 @@ ieee802154_tx(struct ieee802154_local *local, struct sk_buff *skb)
struct net_device *dev = skb->dev;
int ret;
- if (!(local->hw.flags & IEEE802154_HW_OMIT_CKSUM)) {
+ if (!(local->hw.flags & IEEE802154_HW_TX_OMIT_CKSUM)) {
u16 crc = crc_ccitt(0, skb->data, skb->len);
put_unaligned_le16(crc, skb_put(skb, 2));