diff options
author | Marc Kleine-Budde <mkl@pengutronix.de> | 2018-10-08 09:02:38 +0200 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2019-09-04 13:29:14 +0200 |
commit | ffd956eef69b212a724b1cc4cdc61828f3ad9104 (patch) | |
tree | c5366f9a90ed84c736c32ddc03c854299f456cc9 /drivers/uio | |
parent | 3f15035606934a499975e4a5879a9499f072c179 (diff) | |
download | linux-ffd956eef69b212a724b1cc4cdc61828f3ad9104.tar.bz2 |
can: introduce CAN midlayer private and allocate it automatically
This patch introduces the CAN midlayer private structure ("struct
can_ml_priv") which should be used to hold protocol specific per device
data structures. For now it's only member is "struct can_dev_rcv_lists".
The CAN midlayer private is allocated via alloc_netdev()'s private and
assigned to "struct net_device::ml_priv" during device creation. This is
done transparently for CAN drivers using alloc_candev(). The slcan, vcan
and vxcan drivers which are not using alloc_candev() have been adopted
manually. The memory layout of the netdev_priv allocated via
alloc_candev() will looke like this:
+-------------------------+
| driver's priv |
+-------------------------+
| struct can_ml_priv |
+-------------------------+
| array of struct sk_buff |
+-------------------------+
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/uio')
0 files changed, 0 insertions, 0 deletions