summaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2022-05-26net: e1000: Depend on CONFIG_PCISean Anderson
This driver depends on PCI. Update the Kconfig accordingly. Signed-off-by: Sean Anderson <[email protected]> Reviewed-by: Tim Harvey <[email protected]> Reviewed-by: Stefan Roese <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-05-23spi: spi_flash_probe_bus_cs() rely on DT for spi speed and modePatrice Chotard
Now, spi_flash_probe_bus_cs() relies on DT for spi speed and mode and logically calls spi_get_bus_and_cs(). In case spi mode and speed are not read from DT, make usage of spi_flash_probe() instead. To sum-up: - Previous call tree was: spi_flash_probe() -> spi_flash_probe_bus_cs() -> spi_get_bus_and_cs() - Current call tree is: spi_flash_probe() -> _spi_get_bus_and_cs() spi_flash_probe_bus_cs() -> spi_get_bus_and_cs() This patch impacts the following : - cmd/sf.c: if spi mode and/or speed is passed in argument of do_spi_flash_probe(), call spi_flash_probe() otherwise call spi_flash_probe_bus_cs(). - drivers/net/fm/fm.c: as by default spi speed and mode was set to 0 and a comment indicates that speed and mode are read from DT, use spi_flash_probe_bus_cs(). - drivers/net/pfe_eth/pfe_firmware.c: spi speed and mode are not read from DT by all platforms using this driver, so keep legacy and replace spi_flash_probe_bus_cs() by spi_flash_probe(); - drivers/net/sni_netsec.c : spi speed and mode are not read from DT, so replace spi_flash_probe_bus_cs() by spi_flash_probe(). - drivers/usb/gadget/max3420_udc.c: Can't find any platform which make usage of this driver, nevertheless, keep legacy and replace spi_get_bus_and_cs() by _spi_get_bus_and_cs(). - env/sf.c: a comment indicates that speed and mode are read from DT. So use spi_flash_probe_bus_cs(). Signed-off-by: Patrice Chotard <[email protected]> Cc: Marek Behun <[email protected]> Cc: Jagan Teki <[email protected]> Cc: Vignesh R <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]> Cc: Lukasz Majewski <[email protected]> Cc: Marek Vasut <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stefan Roese <[email protected]> Cc: "Pali Rohár" <[email protected]> Cc: Konstantin Porotchkin <[email protected]> Cc: Igal Liberman <[email protected]> Cc: Bin Meng <[email protected]> Cc: Pratyush Yadav <[email protected]> Cc: Sean Anderson <[email protected]> Cc: Anji J <[email protected]> Cc: Biwen Li <[email protected]> Cc: Priyanka Jain <[email protected]> Cc: Chaitanya Sakinam <[email protected]>
2022-05-04net: mvneta: Drop unneeded macroMarek Behún
Macro MVNETA_GMAC_FORCE_LINK_UP can be dropped from value assignment in fixed link case, since it's value is written into the register later in the function for link-down-to-link-up case. The value is written as MVNETA_GMAC_FORCE_LINK_DOWN | MVNETA_GMAC_FORCE_LINK_PASS, and so the macro definition can also be dropped. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Disable fixed PHY code if PHY_FIXED is not compiled inMarek Behún
Guard the code handling the fixed PHY case by CONFIG_IS_ENABLED(PHY_FIXED). Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Drop fixed_link member from private structMarek Behún
Since this member is checked only at two places drop it and inline it's usage. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Write PHY address just before enabling HW pollingMarek Behún
Write PHY address just before enabling HW polling of the PHY. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Convert to use PHY_FIXED for fixed-linkMarek Behún
Stop parsing fixed-link in the MAC driver. Instead support only PHY mode and let the fixed PHY driver handle the fixed-link case. Enable CONFIG_PHY_FIXED for mvneta boards that need it: Turris Omnia and ESPRESSObin. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Rename CONFIG_NR_CPUS to MVNETA_NR_CPUSMarek Behún
The CONFIG_* macros are reserved for Kconfig. This was probably done when this driver was being imported from Linux. Rename the macro. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Don't check for CONFIG_PHYLIBMarek Behún
Drop checking for CONFIG_PHYLIB in mvneta, this is already done in Kconfig. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Drop unnecessary spaceMarek Behún
Drop unnecessary space in mvneta_adjust_link(). Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Use bool instead of int for boolean variableMarek Behún
Use the bool type instead of int for status_change variable. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Drop one indentation level in mvneta_adjust_link()Marek Behún
Drop one indentation level in the mvneta_adjust_link() function. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Fix unused variable warning if DM_GPIO is disabledMarek Behún
The `ret` variable in mvneta_probe() is unused if DM_GPIO is disabled. Since the variable is used only once after assigning value, we can inline the usage and drop the variable. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Don't register MDIO busMarek Behún
This MDIO bus is now handled by a proper mvmdio DM driver. Remove it from mvneta. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Remember fixed link instead of PHY address in priv dataMarek Behún
We don't need to remember PHY address anymore, because since using DM MDIO for connecting PHY, the address is parsed by mdio-uclass from the ofnode. But the driver uses a special value of the address to signal fixed link usage. Drop phyaddr add fixed_link in driver private structure. This simplifies code a little. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Use DM MDIO API for connecting PHYMarek Behún
Use the modern DM MDIO API for connecting PHY in the mvneta driver. This requires enabling MVMDIO driver in several config files. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Fix 10Mbps speedMarek Behún
In mvneta_adjust_link() we need to set MII_SPEED bit only if PHY reports the speed at 100Mbps. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: mvneta: Get rid of platdataMarek Behún
Drop .of_to_plat() from the mvneta driver and parse the two properties in .probe(). Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-05-04net: Add ethernet support for MIPS OcteonStefan Roese
This patchs adds the ethernet & MDIO driver for the MIPS Octeon II / III SoC platform. Please note that these drivers are based on the 2013 U-Boot version from Marvell and make use of the platform supported helper functions for the ethernet functionality, including stuff like SFP handling. Signed-off-by: Stefan Roese <[email protected]> Cc: Ramon Fried <[email protected]> Cc: Joe Hershberger <[email protected]>
2022-05-03pci: Add mask parameter to dm_pci_map_bar()Andrew Scull
Add a mask parameter to control the lookup of the PCI region from which the mapping can be made. Signed-off-by: Andrew Scull <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2022-05-03pci: Map bars with offset and lengthAndrew Scull
Evolve dm_pci_map_bar() to include an offset and length parameter. These allow a portion of the memory to be mapped and range checks to be applied. Passing both the offset and length as zero results in the previous behaviour and this is used to migrate the previous callers. Signed-off-by: Andrew Scull <[email protected]> Reviewed-by: Bin Meng <[email protected]>
2022-05-02net: marvell: mvgbe: Set PHY page 0 before phy_connectTony Dinh
For most Kirkwood boards, the PHY page is already set to page 0 (in register 22) before phy_connect is invoked. But some board like the Zyxel NSA310S (which uses the network chip MV88E1318S), the PHY page is not set to page 0. There seems to be some bad data remained in register 22 when the uclass MVGBE about to invoke phy_connect(). This patch enables the uclass MVGBE to always set the PHY page to 0 before phy_connect. For reference, please see this discussion: [RFC PATCH v2] arm: kirkwood: nsa310s: Use Marvell uclass mvgbe and PHY driver for DM Ethernet. https://lists.denx.de/pipermail/u-boot/2022-April/480946.html This patch has been tested with the following Kirkwood boards: NSA310S (88F6702, network chip MV88E1318S) Sheevaplug (88F6281, network chip MV88E1318) Pogo V4 (88F6192, network chip 88E1116R) GF Home(88F6281, network chip 88E1116R) Dreamplug (88F6281, network chip MV88E1318) Dell Kace M300 (88F6282, network chip MV88E1318) - out of tree u-boot Signed-off-by: Tony Dinh <[email protected]>
2022-04-21net: mvneta: add SFP TX disable handlingRobert Marko
Add support for handling SFP TX disable for MVNETA in the same fashion as to what MVPP2 is doing in order to enable using SFP-s. This allows using ethernet on SFP only boards. Signed-off-by: Robert Marko <[email protected]> Reviewed-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2022-04-15Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-netTom Rini
- DM9000 DM support - tftp server bug fix - mdio ofnode support functions - Various phy fixes and improvements. [trini: Fixup merge conflicts in drivers/net/phy/ethernet_id.c drivers/net/phy/phy.c include/phy.h]
2022-04-13net: dm9000: Add Kconfig entryMarek Vasut
Add Kconfig entry for the DM9000 MAC. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Add DM supportMarek Vasut
Add support for U-Boot DM and DT probing. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Receive one packet per recv callMarek Vasut
Instead of reading out the entire FIFO and possibly overwriting U-Boot memory, read out one packet per recv call, pass it to U-Boot network stack, and repeat. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Split non-DM specific bits from common codeMarek Vasut
Split network handling functions into non-DM specific parts and common code in preparation for conversion to DM. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Pass private data around for IOMarek Vasut
Pass private data into IO accessors and use the base addresses of IO and DATA window from the private data instead of using the hard coded macros DM9000_IO/DM9000_DATA. Currently both the DM9000_IO and DM9000_DATA are assigned to the respecive private data fields for the non-DM case backward compatibility. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Drop dm9000.h and staticize SROM accessMarek Vasut
Dispose of dm9000.h because none of the function prototypes declared in it are called anywhere in the codebase. Staticize dm9000_read_srom_word() because it is now called only from within the dm9000 driver. Drop dm9000_write_srom_word() because it is no longer used. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Drop static device private dataMarek Vasut
Allocate driver private data dynamically in its init function and drop the static driver private data variable. Pass the dynamic private data throughout the driver. This is done in preparation for DM conversion. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Rename board_info to dm9000_privMarek Vasut
Rename board_info structure to dm9000_priv to make it clear what this structure really contains, the driver private data. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Reorder and staticizeMarek Vasut
Reorder the driver functions to get rid of forward declarations. Staticize whatever is possible. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Checkpatch cleanupMarek Vasut
Fix checkpatch errors and warnings. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Drop volatilesMarek Vasut
Remove volatile keyword usage from arrays, they are not really volatile in any way, so this keyword is misused here. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Turn DM9000_DMP_PACKET() into a functionMarek Vasut
Rework DM9000_DMP_PACKET() into dm9000_dump_packet() function, this brings better type checking. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Drop unused dump_regs()Marek Vasut
Drop unused function dump_regs() because it is unused. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Make RxLen and RxStatus lowercaseMarek Vasut
Rename variables to lowercase to be consistent with coding style. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Replace DM9000_DBG() with debug()Marek Vasut
Use standard debug() macro to print debug messages instead of reinventing driver-specific macro again. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13net: dm9000: Make accessor names lowercaseMarek Vasut
Make accessor names lowercase to be consistent with coding style. No functional change. Reviewed-by: Ramon Fried <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Cc: Joe Hershberger <[email protected]> Cc: Ramon Fried <[email protected]>
2022-04-13driver: net: ti: keystone_net: Change priv member typeMarek Behún
Change type of private struct member mdio_base from void * to phys_addr_t. This allows us to drop 2 casts. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-13driver: net: ti: keystone_net: Convert to ofnode functionsMarek Behún
Convert fdt parsing functions to ofnode parsing functions. Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-13driver: net: ti: keystone_net: Deduplicate codeMarek Behún
Deduplicate common code in ks2_eth_bind_slaves(). Signed-off-by: Marek Behún <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-12net: phy: nxp-tja11xx: Add NXP TJA11xx PHY driverMichael Trimarchi
Add driver for the NXP TJA1100 and TJA1101 PHYs. These PHYs are special BroadRReach 100BaseT1 PHYs used in automotive. Signed-off-by: Michael Trimarchi <[email protected]> Signed-off-by: Ariel D'Alessandro <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-12net: phy: Add phy_modify() accessorAriel D'Alessandro
Add read-modify-write unlocked accessor for accessing a PHY register. Signed-off-by: Ariel D'Alessandro <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-12phy: nxp-c45-tja11xx: Rename functions to be c45 tja11xx specificAriel D'Alessandro
This driver supports NXP C45 TJA11XX PHYs, but there're also other NXP TJA11XX PHYs. Let's rename functions in this driver to be c45 variant specific, so further drivers can be introduced adding support for NXP TJA11XX PHYs. Signed-off-by: Ariel D'Alessandro <[email protected]>
2022-04-12ARM: dts: net: dwc_eth_qos: Fix i.MX8MP compatible stringMarek Vasut
The correct compatible string for i.MX8MP variant of DWC EQoS MAC is "nxp,imx8mp-dwmac-eqos", use it. Drop the two current users of the current wrong compatible string to avoid breaking them. Signed-off-by: Marek Vasut <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: Marcel Ziswiler <[email protected]> Cc: Peng Fan <[email protected]> Cc: Stefano Babic <[email protected]> Reviewed-by: Fabio Estevam <[email protected]> Tested-by: Marcel Ziswiler <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-10phy: adin: add driver for Analog Devices ADIN1300 PHYNate Drude
The current implementation configures RGMII using device tree phy-mode property and then calls genphy_config adin_config_rgmii_mode is derived from: https://github.com/varigit/linux-imx/blob/lf-5.10.y_var04/drivers/net/phy/adin.c#L218-L262 Signed-off-by: Nate Drude <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-10net: eth-phy: prevent undesired de-assertion of phy-reset on requestTim Harvey
When gpio_request_by_name allocates a gpio output it by default will de-assert the gpio which for phy-reset will take the PHY out of reset. As this occurs before eth_phy_reset is called to assert the reset line it can cause undesired affects if reset timings are not properly met. Configure the gpio with GPIOD_IS_OUT_ACTIVE so that reset is kept active (reset asserted) to avoid this. Cc: Sean Anderson <[email protected]> Signed-off-by: Tim Harvey <[email protected]> Acked-by: Joe Hershberger <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2022-04-10net: fec: prevent undesired de-assertion of phy-reset on requestTim Harvey
When gpio_request_by_name allocates a gpio output it by default will de-assert the gpio which for phy-reset will take the PHY out of reset. As this occurs before fec_gpio_reset is called to assert the reset line it can cause undesired affects if reset timings are not properly met. Configure the gpio with GPIOD_IS_OUT_ACTIVE so that reset is kept active (reset asserted) to avoid this. Cc: Sean Anderson <[email protected]> Signed-off-by: Tim Harvey <[email protected]> Acked-by: Joe Hershberger <[email protected]> Tested-by: Adam Ford <[email protected]> #imx8mm-beacon Reviewed-by: Ramon Fried <[email protected]>