Changeset 56c0930 in mainline for uspace/lib/net/ieee80211/ieee80211.c


Ignore:
Timestamp:
2015-02-20T14:33:29Z (9 years ago)
Author:
Jan Kolarik <kolarik@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
4cb0148
Parents:
ab365c4
Message:

Started writing TX and RX handlers, VIF init, setting RX filter, PLL init and calibration, some corrections. Added HW values array initialization, registered diagnostic polling fibril. But still not receiving any packets…

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/net/ieee80211/ieee80211.c

    rab365c4 r56c0930  
    3737
    3838#include <errno.h>
    39 #include <nic.h>
     39#include <byteorder.h>
    4040
    4141#include <ieee80211_impl.h>
     
    4848static driver_ops_t ieee80211_nic_driver_ops;
    4949
     50bool ieee80211_is_data_frame(ieee80211_header_t *header)
     51{
     52        return (header->frame_ctrl &
     53                host2uint16_t_le(IEEE80211_FRAME_CTRL_FRAME_TYPE)) ==
     54                host2uint16_t_le(IEEE80211_FRAME_CTRL_DATA_FRAME);
     55}
     56
    5057static int ieee80211_open(ddf_fun_t *fun)
    5158{
     
    5360        ieee80211_dev_t *ieee80211_dev = nic_get_specific(nic_data);
    5461       
     62        if(ieee80211_dev->started) {
     63                return EOK;
     64        } else {
     65                ieee80211_dev->started = true;
     66        }
     67       
    5568        int rc = ieee80211_dev->ops->start(ieee80211_dev);
    5669        if(rc != EOK)
    5770                return rc;
     71       
     72        /*
     73        rc = ieee80211_dev->ops->scan(ieee80211_dev);
     74        if(rc != EOK)
     75                return rc;
     76         */
    5877       
    5978        return EOK;
     
    7089        /* IEEE802.11 start operation must be implemented. */
    7190        if(!ieee80211_ops->start)
     91                return EINVAL;
     92       
     93        /* IEEE802.11 TX handler must be implemented. */
     94        if(!ieee80211_ops->tx_handler)
    7295                return EINVAL;
    7396       
     
    93116        ieee80211_dev->ddf_dev = ddf_dev;
    94117        ieee80211_dev->driver_data = driver_data;
     118        ieee80211_dev->started = false;
     119        ieee80211_dev->current_op_mode = IEEE80211_OPMODE_STATION;
    95120       
    96121        /* Bind NIC to device */
Note: See TracChangeset for help on using the changeset viewer.