====================
net: Add WWAN link creation support
Most of the modern WWAN modems are able to support multiple network
contexts, allowing user to connect to different APNs (e.g. Internet,
MMS, etc...). These contexts are usually dynamically configured via
a control channel such as MBIM, QMI or AT.
Each context is naturally represented as a network link/device, and
the muxing of these links is usually vendor/bus specific (QMAP, MBIM,
intel iosm...). Today some drivers create a static collection of
netdevs at init time, some relies on VLAN link for associating a context
(cdc-mbim), some exposes sysfs attribute for dynamically creating
additional netdev (qmi_wwan add_mux attr) or relies on vendor specific
link type (rmnet) for performing the muxing... so there is no generic
way to handle WWAN links, making user side integration painful.
This series introduces a generic WWAN link management interface to the
WWAN framework, allowing user to dynamically create and remove WWAN
links through rtnetlink ('wwan' type). The underlying 'muxing' vendor
implementation is completely abstracted.
The idea is to use this interface for upcoming WWAN drivers (intel
iosm) and to progressively integrate support into existing ones
(qmi_wwan, cdc-mbim, mhi_net, etc...).
v2: - Squashed Johannes and Sergey changes
- Added IFLA_PARENT_DEV_BUS_NAME attribute
- reworded commit message + introduce Sergey's comment
v3: - Added basic new interface user to this series (mhi_net)
- Moved IFLA_PARENT_DEV_NAME nla_policy introduction to right patch
- Added cover letter
- moved kdoc to .c file
====================
Signed-off-by: David S. Miller <davem@davemloft.net>