While converting Mikrotik RB532 support to use device tree I stumbled over the korina ethernet driver, which used way too many MIPS specific hacks. This series cleans this all up and adds support for device tree. Changes in v4: - improve error returns in mdio_read further - added clock name and improved clk handling - fixed bindind errors Changes in v3: - use readl_poll_timeout_atomic in mdio_wait - return -ETIMEDOUT, if mdio_wait failed - added DT binding and changed name to idt,3243x-emac - fixed usage of of_get_mac_address for net-next Changes in v2: - added device tree support to get rid of idt_cpu_freq - fixed compile test on 64bit archs - fixed descriptor current address handling by storing/using mapped dma addresses (dma controller modifies current address) Thomas Bogendoerfer (10): net: korina: Fix MDIO functions net: korina: Use devres functions net: korina: Remove not needed cache flushes net: korina: Remove nested helpers net: korina: Use DMA API net: korina: Only pass mac address via platform data net: korina: Add support for device tree net: korina: Get mdio input clock via common clock framework net: korina: Make driver COMPILE_TESTable dt-bindings: net: korina: Add DT bindings for IDT 79RC3243x SoCs .../bindings/net/idt,3243x-emac.yaml | 74 +++ arch/mips/rb532/devices.c | 5 +- drivers/net/ethernet/Kconfig | 3 +- drivers/net/ethernet/korina.c | 601 +++++++++++++----- 4 files changed, 511 insertions(+), 172 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/idt,3243x-emac.yaml -- 2.29.2