Page MenuHomeFreeBSD

iwm: switch to ieee80211_add_channel()
ClosedPublic

Authored by avos on Apr 29 2016, 3:49 PM.
Tags
None
Referenced Files
F101908498: D6150.id15737.diff
Tue, Nov 5, 11:57 AM
F101908094: D6150.id15789.diff
Tue, Nov 5, 11:51 AM
F101908052: D6150.id15735.diff
Tue, Nov 5, 11:50 AM
Unknown Object (File)
Thu, Oct 17, 3:00 AM
Unknown Object (File)
Oct 1 2024, 4:06 AM
Unknown Object (File)
Sep 27 2024, 2:08 PM
Unknown Object (File)
Sep 12 2024, 1:24 PM
Unknown Object (File)
Sep 10 2024, 3:39 PM
Subscribers

Details

Summary
  • Switch to ieee80211_add_channel().
  • Parse/set more channel flags (DFS, NOADHOC).
  • Add ic_getradiocaps() method.
Test Plan

Needs testing (ifconfig wlan0 create wlandev iwm0 up && ifconfig wlan0 list chan; the output should not differ).

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

avos retitled this revision from to iwm: switch to ieee80211_add_channel().
avos updated this object.
avos edited the test plan for this revision. (Show Details)
avos added a reviewer: adrian.
avos set the repository for this revision to rS FreeBSD src repository - subversion.
sys/dev/iwm/if_iwmvar.h
200 ↗(On Diff #15735)

We should use a #define size or something here, otherwise when we move to 11n /someone/ will forget to bump it. :-P

sys/dev/iwm/if_iwmvar.h
200 ↗(On Diff #15735)

maybe, I should put iwm_nvm_channels[] somewhere in if_iwmreg.h (and use it size here directly)?

If you do that then it'll likely just get duplicated in each file that includes that .h file.

Just put a _MAX define somewhere, and a compile-time assert in if_iwm.c that the #define is = or larger than the set size. That'll at least fail compilation if someone ups the number of channel entries when we do 11n/11ac.

avos edited edge metadata.

Refresh.

avos added inline comments.
sys/dev/iwm/if_iwm.c
1736 ↗(On Diff #15737)

iwlwifi doesn't enforce this limitation - probably, this (and other limitations) should be set by ieee80211_regdomain(9) (not used right now (except IEEE80211_IOC_REGDOMAIN ioctl)).

adrian edited edge metadata.

looks good, I'll update tonight when you've committed it and report back.

This revision is now accepted and ready to land.Apr 30 2016, 12:25 AM
This revision was automatically updated to reflect the committed changes.
head/sys/dev/iwm/if_iwm.c
175

CTASSERT(9) manpage states that 'The CTASSERT() macro is deprecated and the C11 standard _Static_assert() should be used instead' - so I've replaced CTASSERT() with _Static_assert. No other changes were done.