15 Mar, 2015

1 commit

  • This patch fix the max sifs size correction when the
    IEEE802154_HW_TX_OMIT_CKSUM flag is set. With this flag the sk_buff
    doesn't contain the CRC, because the transceiver will add the CRC
    while transmit.

    Also add some defines for the max sifs frame size value and frame check
    sequence according to 802.15.4 standard.

    Signed-off-by: Alexander Aring
    Acked-by: Marc Kleine-Budde
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

14 Feb, 2015

1 commit


17 Nov, 2014

1 commit

  • This patch moves the 802.15.4 constraints WPAN_NUM_ defines into
    "net/ieee802154.h" which should contain all necessary 802.15.4 related
    information. Also rename these defines to a common name which is
    IEEE802154_MAX_CHANNEL and IEEE802154_MAX_PAGE.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

13 Nov, 2014

1 commit

  • This patch adds a new interframe spacing time handling into mac802154
    layer. Interframe spacing time is a time period between each transmit.
    This patch adds a high resolution timer into mac802154 and starts on
    xmit complete with corresponding interframe spacing expire time if
    ifs_handling is true. We make it variable because it depends if
    interframe spacing time is handled by transceiver or mac802154. At the
    timer complete function we wake the netdev queue again. This avoids
    new frame transmit in range of interframe spacing time.

    For synced driver we add no handling of interframe spacing time. This
    is currently a lack of support in all synced xmit drivers. I suppose
    it's working because the latency of workqueue which is needed to call
    spi_sync.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

12 Nov, 2014

2 commits

  • This patch adds support for setting short address via nl802154 framework.
    Also added a comment because a 0xffff seems to be valid address that we
    don't have a short address. This is a valid setting but we need
    more checks in upper layers to don't allow this address as source address.
    Also the current netlink interface doesn't allow to set the short_addr
    to 0xffff. Same for the 0xfffe short address which describes a not
    allocated short address.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     
  • This patch adds support for setting pan_id via nl802154 framework.
    Adding a comment because setting 0xffff as pan_id seems to be valid
    setting. The pan_id 0xffff as source pan is invalid. I am not sure now
    about this setting but for the current netlink interface this is an
    invalid setting, so we do the same now. Maybe we need to change that
    when we have coordinator support and association support.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

06 Nov, 2014

2 commits


05 Nov, 2014

1 commit


03 Nov, 2014

2 commits

  • This patch fix byteorder issues which occurs because we compare __le64
    with an host byteorder value. Simple add a cpu_to_le64 to convert the
    host byteorder values to __le64.

    Signed-off-by: Alexander Aring
    Reported-by: Marcel Holtmann
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     
  • Running make C=2 occurs warning:

    constant 0xffffffffffffffff is so big it is unsigned long

    This patch fix this warning by adding a ULL to the constant definitions.

    Signed-off-by: Alexander Aring
    Reported-by: Marcel Holtmann
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

02 Nov, 2014

1 commit


28 Oct, 2014

1 commit

  • This patch adds a generic valid psdu length check function helper. This
    is useful to check the length field after receiving. For example the
    at86rf231 doesn't filter invalid psdu length. Sometimes the CRC can also
    be correct. If we get the lqi value with an invalid frame length the
    kernel may crash because we dereference an invalid pointer in the
    receive buffer.

    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

26 Oct, 2014

1 commit

  • This patch moves the ieee802154 header into include/linux instead
    include/net. Similar like wireless which have the ieee80211 header
    inside of include/linux.

    Signed-off-by: Alexander Aring
    Cc: Alan Ott
    Signed-off-by: Marcel Holtmann

    Alexander Aring