diff options
Diffstat (limited to 'drivers/net/can/dev/netlink.c')
| -rw-r--r-- | drivers/net/can/dev/netlink.c | 28 | 
1 files changed, 14 insertions, 14 deletions
| diff --git a/drivers/net/can/dev/netlink.c b/drivers/net/can/dev/netlink.c index 867f6be31230..e38c2566aff4 100644 --- a/drivers/net/can/dev/netlink.c +++ b/drivers/net/can/dev/netlink.c @@ -8,20 +8,17 @@  #include <net/rtnetlink.h>  static const struct nla_policy can_policy[IFLA_CAN_MAX + 1] = { -	[IFLA_CAN_STATE]	= { .type = NLA_U32 }, -	[IFLA_CAN_CTRLMODE]	= { .len = sizeof(struct can_ctrlmode) }, -	[IFLA_CAN_RESTART_MS]	= { .type = NLA_U32 }, -	[IFLA_CAN_RESTART]	= { .type = NLA_U32 }, -	[IFLA_CAN_BITTIMING]	= { .len = sizeof(struct can_bittiming) }, -	[IFLA_CAN_BITTIMING_CONST] -				= { .len = sizeof(struct can_bittiming_const) }, -	[IFLA_CAN_CLOCK]	= { .len = sizeof(struct can_clock) }, -	[IFLA_CAN_BERR_COUNTER]	= { .len = sizeof(struct can_berr_counter) }, -	[IFLA_CAN_DATA_BITTIMING] -				= { .len = sizeof(struct can_bittiming) }, -	[IFLA_CAN_DATA_BITTIMING_CONST] -				= { .len = sizeof(struct can_bittiming_const) }, -	[IFLA_CAN_TERMINATION]	= { .type = NLA_U16 }, +	[IFLA_CAN_STATE] = { .type = NLA_U32 }, +	[IFLA_CAN_CTRLMODE] = { .len = sizeof(struct can_ctrlmode) }, +	[IFLA_CAN_RESTART_MS] = { .type = NLA_U32 }, +	[IFLA_CAN_RESTART] = { .type = NLA_U32 }, +	[IFLA_CAN_BITTIMING] = { .len = sizeof(struct can_bittiming) }, +	[IFLA_CAN_BITTIMING_CONST] = { .len = sizeof(struct can_bittiming_const) }, +	[IFLA_CAN_CLOCK] = { .len = sizeof(struct can_clock) }, +	[IFLA_CAN_BERR_COUNTER] = { .len = sizeof(struct can_berr_counter) }, +	[IFLA_CAN_DATA_BITTIMING] = { .len = sizeof(struct can_bittiming) }, +	[IFLA_CAN_DATA_BITTIMING_CONST]	= { .len = sizeof(struct can_bittiming_const) }, +	[IFLA_CAN_TERMINATION] = { .type = NLA_U16 },  };  static int can_validate(struct nlattr *tb[], struct nlattr *data[], @@ -189,6 +186,8 @@ static int can_changelink(struct net_device *dev, struct nlattr *tb[],  		memcpy(&priv->data_bittiming, &dbt, sizeof(dbt)); +		can_calc_tdco(dev); +  		if (priv->do_set_data_bittiming) {  			/* Finally, set the bit-timing registers */  			err = priv->do_set_data_bittiming(dev); @@ -355,6 +354,7 @@ static void can_dellink(struct net_device *dev, struct list_head *head)  struct rtnl_link_ops can_link_ops __read_mostly = {  	.kind		= "can", +	.netns_refund	= true,  	.maxtype	= IFLA_CAN_MAX,  	.policy		= can_policy,  	.setup		= can_setup, | 
