1
0
Fork 0
alistair23-linux/drivers/net/ethernet/ti
Grygorii Strashko 8a2c9a5ab4 net: ethernet: ti: cpts: rework initialization/deinitialization
The current implementation CPTS initialization and deinitialization
(represented by cpts_register/unregister()) does too many static
initialization from .ndo_open(), which is reasonable to do once at probe
time instead, and also require caller to allocate memory for struct cpts,
which is internal for CPTS driver in general.

This patch splits CPTS initialization and deinitialization on two parts:

- static initializtion cpts_create()/cpts_release() which expected to be
executed when parent driver is probed/removed;

- dynamic part cpts_register/unregister() which expected to be executed
when network device is opened/closed.

As result, current code of CPTS parent driver - CPSW - will be simplified
(and it also will allow simplify adding support for Keystone 2 devices in
the future), plus more initialization errors will be catched earlier. In
addition, this change allows to clean up cpts.h for the case when CPTS is
disabled.

Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-12-07 11:13:47 -05:00
..
Kconfig net: ethernet: ti: allow cpts to be built separately 2016-12-07 11:13:46 -05:00
Makefile net: ethernet: ti: allow cpts to be built separately 2016-12-07 11:13:46 -05:00
cpmac.c net: deprecate eth_change_mtu, remove usage 2016-10-13 09:36:57 -04:00
cpsw-common.c net: cpsw: Fix ethernet regression for dm814x 2015-11-20 10:46:33 -05:00
cpsw-phy-sel.c net: ethernet: ti: cpsw: fix device and of_node leaks 2016-11-07 13:17:30 -05:00
cpsw.c net: ethernet: ti: cpts: rework initialization/deinitialization 2016-12-07 11:13:47 -05:00
cpsw.h net: ethernet: ti: cpsw: remove rx_descs property 2016-06-17 21:27:57 -07:00
cpsw_ale.c net: cpsw: remove two unused global functions 2015-05-25 18:19:09 -04:00
cpsw_ale.h net: cpsw: remove two unused global functions 2015-05-25 18:19:09 -04:00
cpts.c net: ethernet: ti: cpts: rework initialization/deinitialization 2016-12-07 11:13:47 -05:00
cpts.h net: ethernet: ti: cpts: rework initialization/deinitialization 2016-12-07 11:13:47 -05:00
davinci_cpdma.c net: ethernet: ti: davinci_cpdma: add missing EXPORTs 2016-12-03 15:27:38 -05:00
davinci_cpdma.h net: ethernet: ti: davinci_cpdma: add set rate for a channel 2016-11-30 14:37:13 -05:00
davinci_emac.c net: ethernet: ti: davinci_emac: fix fixed-link phydev and of-node leaks 2016-11-29 23:17:02 -05:00
davinci_mdio.c drivers: net: davinci_mdio: enable pm runtime auto for ti cpsw-mdio 2016-06-28 08:57:19 -04:00
netcp.h netcp: add more __le32 annotations 2015-12-11 19:34:39 -05:00
netcp_core.c net: netcp: replace IS_ERR_OR_NULL by IS_ERR 2016-11-16 23:26:36 -05:00
netcp_ethss.c net: ti: netcp_ethss: use new api ethtool_{get|set}_link_ksettings 2016-10-12 01:40:25 -04:00
netcp_sgmii.c net: netcp: Fixes SGMII reset on network interface shutdown 2015-07-27 01:14:26 -07:00
netcp_xgbepcsr.c net: netcp: Enhance GBE driver to support 10G Ethernet 2015-01-19 15:07:39 -05:00
tlan.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-10-14 10:00:27 -04:00
tlan.h tlan: Don't scream if no link 2014-07-07 17:06:52 -07:00