16 Jun, 2016

3 commits

  • This patch introduce different 6lowpan handling for receive and transmit
    NS/NA messages for the ipv6 neighbour discovery. The first use-case is
    for supporting 802.15.4 short addresses inside the option fields and
    handling for RFC6775 6CO option field as userspace option.

    Cc: David S. Miller
    Cc: Alexey Kuznetsov
    Cc: James Morris
    Cc: Hideaki YOSHIFUJI
    Cc: Patrick McHardy
    Reviewed-by: Stefan Schmidt
    Acked-by: YOSHIFUJI Hideaki
    Signed-off-by: Alexander Aring
    Signed-off-by: David S. Miller

    Alexander Aring
     
  • Since we use exported function from ipv6 kernel module we don't need to
    request the module anymore to have ipv6 functionality.

    Acked-by: Hannes Frederic Sowa
    Reviewed-by: Stefan Schmidt
    Signed-off-by: Alexander Aring
    Signed-off-by: David S. Miller

    Alexander Aring
     
  • This patch adds the autoconfiguration if a valid 802.15.4 short address
    is available for 802.15.4 6LoWPAN interfaces.

    Cc: David S. Miller
    Cc: Alexey Kuznetsov
    Cc: James Morris
    Cc: Hideaki YOSHIFUJI
    Cc: Patrick McHardy
    Acked-by: Hannes Frederic Sowa
    Reviewed-by: Stefan Schmidt
    Signed-off-by: Alexander Aring
    Signed-off-by: David S. Miller

    Alexander Aring
     

13 Apr, 2016

1 commit

  • This patch changes the naming for interface private data for lowpan
    intefaces. The current private data scheme is:

    -------------------------------------------------
    | 6LoWPAN Generic | LinkLayer 6LoWPAN |
    -------------------------------------------------

    the current naming schemes are:

    - 6LoWPAN Generic:
    - lowpan_priv
    - LinkLayer 6LoWPAN:
    - BTLE
    - lowpan_dev
    - 802.15.4:
    - lowpan_dev_info

    the new naming scheme with this patch will be:

    - 6LoWPAN Generic:
    - lowpan_dev
    - LinkLayer 6LoWPAN:
    - BTLE
    - lowpan_btle_dev
    - 802.15.4:
    - lowpan_802154_dev

    Signed-off-by: Alexander Aring
    Reviewed-by: Stefan Schmidt
    Acked-by: Jukka Rissanen
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

24 Feb, 2016

1 commit

  • This patch introduce support for IPHC stateful address compression. It
    will offer the context table via one debugfs entry.
    This debugfs has and directory for each cid entry for the context table.
    Inside each cid directory there exists the following files:

    - "active": If the entry is added or deleted. The context table is
    original a list implementation, this flag will indicate if the
    context is part of list or not.
    - "prefix": The ipv6 prefix.
    - "prefix_length": The prefix length for the prefix.
    - "compression": The compression flag according RFC6775.

    This part should be moved into sysfs after some testing time.

    Also the debugfs entry contains a "show" file which is a pretty-printout
    for the current context table information.

    Reviewed-by: Stefan Schmidt
    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

20 Dec, 2015

1 commit

  • This patches moves the debugfs interface related register after
    netdevice register. The function lowpan_dev_debugfs_init will use
    "dev->name" which can be before register_netdevice a format string.
    The function register_netdevice will evaluate the format string if
    necessary and replace "dev->name" to the real interface name.

    Reported-by: Lukasz Duda
    Signed-off-by: Alexander Aring
    Acked-by: Lukasz Duda
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

10 Dec, 2015

2 commits

  • This patch will introduce a 6lowpan entry into the debugfs if enabled.
    Inside this 6lowpan directory we create a subdirectories of all 6lowpan
    interfaces to offer a per interface debugfs support.

    Reviewed-by: Stefan Schmidt
    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     
  • This patch introduces register and unregister functionality for lowpan
    interfaces. While register a lowpan interface there are several things
    which need to be initialize by the 6lowpan subsystem. Upcoming
    functionality need to register/unregister per interface components e.g.
    debugfs entry.

    Reviewed-by: Stefan Schmidt
    Signed-off-by: Alexander Aring
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

08 Oct, 2015

1 commit

  • This patch moves values for all lowpan interface to the shared
    implementation of 6lowpan. This patch also quietly fixes the forgotten
    IFF_NO_QUEUE flag for the bluetooth 6LoWPAN interface. An identically
    commit is 4afbc0d ("net: 6lowpan: convert to using IFF_NO_QUEUE") which
    wasn't changed for bluetooth 6lowpan.

    All 6lowpan interfaces should be virtual with IFF_NO_QUEUE, using EUI64
    address length, the mtu size is 1280 (IPV6_MIN_MTU) and the netdev type
    is ARPHRD_6LOWPAN.

    Signed-off-by: Alexander Aring
    Acked-by: Jukka Rissanen
    Signed-off-by: Marcel Holtmann

    Alexander Aring
     

12 Aug, 2015

2 commits

  • This patch moves module_init of 6lowpan module into core functionality
    of 6lowpan module. To load the ipv6 module at probing of the 6lowpan
    module should be core functionality. Loading next header compression
    modules is iphc specific. Nevertheless we only support IPHC for the
    generic 6LoWPAN branch right now so we can put it into the core
    functionality. If possible new compression formats are introduced nhc
    should load only when iphc is build.

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

    Alexander Aring
     
  • This patch introduced the 6lowpan netdev private data struct. We name it
    lowpan_priv and it's placed at the beginning of netdev private data. All
    lowpan interfaces should allocate this room at first of netdev private
    data. 6LoWPAN LL private data can be allocate by additional netdev private
    data, e.g. dev->priv_size should be "sizeof(struct lowpan_priv) +
    sizeof(LL_LOWPAN_PRIVATE_DATA)".

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

    Alexander Aring