| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * linux/drivers/net/ethernet/ethoc.c |
|---|
| 3 | 4 | * |
|---|
| 4 | 5 | * Copyright (C) 2007-2008 Avionic Design Development GmbH |
|---|
| 5 | 6 | * Copyright (C) 2008-2009 Avionic Design GmbH |
|---|
| 6 | | - * |
|---|
| 7 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 8 | | - * it under the terms of the GNU General Public License version 2 as |
|---|
| 9 | | - * published by the Free Software Foundation. |
|---|
| 10 | 7 | * |
|---|
| 11 | 8 | * Written by Thierry Reding <thierry.reding@avionic-design.de> |
|---|
| 12 | 9 | */ |
|---|
| .. | .. |
|---|
| 180 | 177 | * struct ethoc - driver-private device structure |
|---|
| 181 | 178 | * @iobase: pointer to I/O memory region |
|---|
| 182 | 179 | * @membase: pointer to buffer memory region |
|---|
| 180 | + * @big_endian: just big or little (endian) |
|---|
| 183 | 181 | * @num_bd: number of buffer descriptors |
|---|
| 184 | 182 | * @num_tx: number of send buffers |
|---|
| 185 | 183 | * @cur_tx: last send buffer written |
|---|
| .. | .. |
|---|
| 192 | 190 | * @msg_enable: device state flags |
|---|
| 193 | 191 | * @lock: device lock |
|---|
| 194 | 192 | * @mdio: MDIO bus for PHY access |
|---|
| 193 | + * @clk: clock |
|---|
| 195 | 194 | * @phy_id: address of attached PHY |
|---|
| 195 | + * @old_link: previous link info |
|---|
| 196 | + * @old_duplex: previous duplex info |
|---|
| 196 | 197 | */ |
|---|
| 197 | 198 | struct ethoc { |
|---|
| 198 | 199 | void __iomem *iobase; |
|---|
| .. | .. |
|---|
| 721 | 722 | return err; |
|---|
| 722 | 723 | } |
|---|
| 723 | 724 | |
|---|
| 724 | | - phy->advertising &= ~(ADVERTISED_1000baseT_Full | |
|---|
| 725 | | - ADVERTISED_1000baseT_Half); |
|---|
| 726 | | - phy->supported &= ~(SUPPORTED_1000baseT_Full | |
|---|
| 727 | | - SUPPORTED_1000baseT_Half); |
|---|
| 725 | + phy_set_max_speed(phy, SPEED_100); |
|---|
| 728 | 726 | |
|---|
| 729 | 727 | return 0; |
|---|
| 730 | 728 | } |
|---|
| .. | .. |
|---|
| 875 | 873 | return -ENOSYS; |
|---|
| 876 | 874 | } |
|---|
| 877 | 875 | |
|---|
| 878 | | -static void ethoc_tx_timeout(struct net_device *dev) |
|---|
| 876 | +static void ethoc_tx_timeout(struct net_device *dev, unsigned int txqueue) |
|---|
| 879 | 877 | { |
|---|
| 880 | 878 | struct ethoc *priv = netdev_priv(dev); |
|---|
| 881 | 879 | u32 pending = ethoc_read(priv, INT_SOURCE); |
|---|
| .. | .. |
|---|
| 1021 | 1019 | |
|---|
| 1022 | 1020 | /** |
|---|
| 1023 | 1021 | * ethoc_probe - initialize OpenCores ethernet MAC |
|---|
| 1024 | | - * pdev: platform device |
|---|
| 1022 | + * @pdev: platform device |
|---|
| 1025 | 1023 | */ |
|---|
| 1026 | 1024 | static int ethoc_probe(struct platform_device *pdev) |
|---|
| 1027 | 1025 | { |
|---|
| .. | .. |
|---|
| 1093 | 1091 | priv = netdev_priv(netdev); |
|---|
| 1094 | 1092 | priv->netdev = netdev; |
|---|
| 1095 | 1093 | |
|---|
| 1096 | | - priv->iobase = devm_ioremap_nocache(&pdev->dev, netdev->base_addr, |
|---|
| 1094 | + priv->iobase = devm_ioremap(&pdev->dev, netdev->base_addr, |
|---|
| 1097 | 1095 | resource_size(mmio)); |
|---|
| 1098 | 1096 | if (!priv->iobase) { |
|---|
| 1099 | 1097 | dev_err(&pdev->dev, "cannot remap I/O memory space\n"); |
|---|
| .. | .. |
|---|
| 1102 | 1100 | } |
|---|
| 1103 | 1101 | |
|---|
| 1104 | 1102 | if (netdev->mem_end) { |
|---|
| 1105 | | - priv->membase = devm_ioremap_nocache(&pdev->dev, |
|---|
| 1103 | + priv->membase = devm_ioremap(&pdev->dev, |
|---|
| 1106 | 1104 | netdev->mem_start, resource_size(mem)); |
|---|
| 1107 | 1105 | if (!priv->membase) { |
|---|
| 1108 | 1106 | dev_err(&pdev->dev, "cannot remap memory space\n"); |
|---|
| .. | .. |
|---|
| 1156 | 1154 | const void *mac; |
|---|
| 1157 | 1155 | |
|---|
| 1158 | 1156 | mac = of_get_mac_address(pdev->dev.of_node); |
|---|
| 1159 | | - if (mac) |
|---|
| 1157 | + if (!IS_ERR(mac)) |
|---|
| 1160 | 1158 | ether_addr_copy(netdev->dev_addr, mac); |
|---|
| 1161 | 1159 | priv->phy_id = -1; |
|---|
| 1162 | 1160 | } |
|---|