Hello On 11/18/2017 04:55 PM, Jian-Hong Pan wrote: > There are more functions and operations which must be used or implemented > in each IEEE 802.15.4 device driver, but are not mentioned in the Device > drivers API section of Documentation/networking/ieee802154.txt. Therefore, > I want to fulfill the missed part into the documentation with this patch. > > Signed-off-by: Jian-Hong Pan <starnight@xxxxxxxxxxxx> > --- > Documentation/networking/ieee802154.txt | 40 +++++++++++++++++++++++++++++++++ > 1 file changed, 40 insertions(+) > > diff --git a/Documentation/networking/ieee802154.txt b/Documentation/networking/ieee802154.txt > index 057e9fdbfac9..e74d8e1da0e2 100644 > --- a/Documentation/networking/ieee802154.txt > +++ b/Documentation/networking/ieee802154.txt > @@ -97,6 +97,46 @@ The include/net/mac802154.h defines following functions: > - void ieee802154_unregister_hw(struct ieee802154_hw *hw): > freeing registered PHY > > + - void ieee802154_rx_irqsafe(struct ieee802154_hw *hw, struct sk_buff *skb, > + u8 lqi): > + telling 802.15.4 module there is a new received frame in the skb with > + the RF Link Quality Indicator (LQI) from the hardware device > + > + - void ieee802154_xmit_complete(struct ieee802154_hw *hw, struct sk_buff *skb, > + bool ifs_handling): > + telling 802.15.4 module the frame in the skb is or going to be > + transmitted through the hardware device > + > +The device driver must implement the following callbacks in the IEEE 802.15.4 > +operations structure at least: > +struct ieee802154_ops { > + ... > + int (*start)(struct ieee802154_hw *hw); > + void (*stop)(struct ieee802154_hw *hw); > + ... > + int (*xmit_async)(struct ieee802154_hw *hw, struct sk_buff *skb); > + int (*ed)(struct ieee802154_hw *hw, u8 *level); > + int (*set_channel)(struct ieee802154_hw *hw, u8 page, u8 channel); > + ... > +}; > + > + - int start(struct ieee802154_hw *hw): > + handler that 802.15.4 module calls for the hardware device initialization. > + > + - void stop(struct ieee802154_hw *hw): > + handler that 802.15.4 module calls for the hardware device cleanup. > + > + - int xmit_async(struct ieee802154_hw *hw, struct sk_buff *skb): > + handler that 802.15.4 module calls for each frame in the skb going to be > + transmitted through the hardware device. > + > + - int ed(struct ieee802154_hw *hw, u8 *level): > + handler that 802.15.4 module calls for Energy Detection from the hardware > + device. > + > + - int set_channel(struct ieee802154_hw *hw, u8 page, u8 channel): > + set radio for listening on specific channel of the hardware device. > + > Moreover IEEE 802.15.4 device operations structure should be filled. > > Fake drivers This patch has been applied to the wpan-next tree and will be part of the next pull request to net-next. Thanks! regards Stefan Schmidt -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html