summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/sunplus
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/sunplus')
-rw-r--r--drivers/net/ethernet/sunplus/spl2sw_desc.c5
-rw-r--r--drivers/net/ethernet/sunplus/spl2sw_phy.c6
2 files changed, 7 insertions, 4 deletions
diff --git a/drivers/net/ethernet/sunplus/spl2sw_desc.c b/drivers/net/ethernet/sunplus/spl2sw_desc.c
index 3f0d9f78b37d..f6b42cda693a 100644
--- a/drivers/net/ethernet/sunplus/spl2sw_desc.c
+++ b/drivers/net/ethernet/sunplus/spl2sw_desc.c
@@ -129,8 +129,9 @@ int spl2sw_rx_descs_init(struct spl2sw_common *comm)
u32 i, j;
for (i = 0; i < RX_DESC_QUEUE_NUM; i++) {
- comm->rx_skb_info[i] = kcalloc(comm->rx_desc_num[i], sizeof(*rx_skbinfo),
- GFP_KERNEL | GFP_DMA);
+ comm->rx_skb_info[i] = kzalloc_objs(*rx_skbinfo,
+ comm->rx_desc_num[i],
+ GFP_KERNEL | GFP_DMA);
if (!comm->rx_skb_info[i])
goto mem_alloc_fail;
diff --git a/drivers/net/ethernet/sunplus/spl2sw_phy.c b/drivers/net/ethernet/sunplus/spl2sw_phy.c
index 6f899e48f51d..a4889c52e00e 100644
--- a/drivers/net/ethernet/sunplus/spl2sw_phy.c
+++ b/drivers/net/ethernet/sunplus/spl2sw_phy.c
@@ -79,12 +79,14 @@ int spl2sw_phy_connect(struct spl2sw_common *comm)
void spl2sw_phy_remove(struct spl2sw_common *comm)
{
struct net_device *ndev;
+ struct spl2sw_mac *mac;
int i;
for (i = 0; i < MAX_NETDEV_NUM; i++)
if (comm->ndev[i]) {
ndev = comm->ndev[i];
- if (ndev)
- phy_disconnect(ndev->phydev);
+ mac = netdev_priv(ndev);
+ phy_disconnect(ndev->phydev);
+ of_node_put(mac->phy_node);
}
}