Skip to content
  • Inaky Perez-Gonzalez's avatar
    wimax: basic API: kernel/user messaging, rfkill and reset · 3e65646b
    Inaky Perez-Gonzalez authored
    
    
    Implements the three basic operations provided by the stack's control
    interface to WiMAX devices:
    
    - Messaging channel between user space and driver/device
    
      This implements a direct communication channel between user space
      and the driver/device, by which free form messages can be sent back
      and forth.
    
      This is intended for device-specific features, vendor quirks, etc.
    
    - RF-kill framework integration
    
      Provide most of the RF-Kill integration for WiMAX drivers so that
      all device drivers have to do is after wimax_dev_add() is call
      wimax_report_rfkill_{hw,sw}() to update initial state and then every
      time it changes.
    
      Provides wimax_rfkill() for the kernel to call to set software
      RF-Kill status and/or query current hardware and software switch
      status.
    
      Exports wimax_rfkill() over generic netlink to user space.
    
    - Reset a WiMAX device
    
      Provides wimax_reset() for the kernel to reset a wimax device as
      needed and exports it over generic netlink to user space.
    
    This API is clearly limited, as it still provides no way to do the
    basic scan, connect and disconnect in a hardware independent way.  The
    WiMAX case is more complex than WiFi due to the way networks are
    discovered and provisioned.
    
    The next developments are to add the basic operations so they can be
    offerent by different drivers. However, we'd like to get more vendors
    to jump in and provide feedback of how the user/kernel API/abstraction
    layer should be.
    
    The user space code for the i2400m, as of now, uses the messaging
    channel, but that will change as the API evolves.
    
    Signed-off-by: default avatarInaky Perez-Gonzalez <inaky@linux.intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    3e65646b