1. 19 2月, 2014 1 次提交
  2. 16 1月, 2014 1 次提交
  3. 14 4月, 2013 1 次提交
    • T
      net: mvmdio: add select PHYLIB · 2e0cbf2c
      Thomas Petazzoni 提交于
      The mvmdio driver uses the phylib API, so it should select the PHYLIB
      symbol, otherwise, a build with mvmdio (but without mvneta) fails to
      build with undefined symbols such as mdiobus_unregister, mdiobus_free,
      etc.
      
      The mvneta driver does not use the phylib API directly, so it does not
      need to select PHYLIB. It already selects the mvmdio driver anyway.
      
      Historically, this problem is due to the fact that the PHY handling
      was originally part of mvneta, and was later moved to a separate
      driver, without updating the Kconfig select statements
      accordingly. And since there was no functional reason to use mvmdio
      without mvneta, this case was not tested.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Reported-by: NFengguang Wu <fengguang.wu@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2e0cbf2c
  4. 13 4月, 2013 1 次提交
  5. 22 3月, 2013 1 次提交
    • F
      mv643xx_eth: convert to use the Marvell Orion MDIO driver · c3a07134
      Florian Fainelli 提交于
      This patch converts the Marvell MV643XX ethernet driver to use the
      Marvell Orion MDIO driver. As a result, PowerPC and ARM platforms
      registering the Marvell MV643XX ethernet driver are also updated to
      register a Marvell Orion MDIO driver. This driver voluntarily overlaps
      with the Marvell Ethernet shared registers because it will use a subset
      of this shared register (shared_base + 0x4 to shared_base + 0x84). The
      Ethernet driver is also updated to look up for a PHY device using the
      Orion MDIO bus driver.
      
      For ARM and PowerPC we register a single instance of the "mvmdio" driver
      in the system like it used to be done with the use of the "shared_smi"
      platform_data cookie on ARM.
      
      Note that it is safe to register the mvmdio driver only for the "ge00"
      instance of the driver because this "ge00" interface is guaranteed to
      always be explicitely registered by consumers of
      arch/arm/plat-orion/common.c and other instances (ge01, ge10 and ge11)
      were all pointing their shared_smi to ge00. For PowerPC the in-tree
      Device Tree Source files mention only one MV643XX ethernet MAC instance
      so the MDIO bus driver is registered only when id == 0.
      Signed-off-by: NFlorian Fainelli <florian@openwrt.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c3a07134
  6. 16 11月, 2012 2 次提交
    • T
      net: mvneta: driver for Marvell Armada 370/XP network unit · c5aff182
      Thomas Petazzoni 提交于
      This patch contains a new network driver for the network unit of the
      ARM Marvell Armada 370 and the Armada XP. Both SoCs use the PJ4B
      processor, a Marvell-developed ARM core that implements the ARMv7
      instruction set.
      
      Compared to previous ARM Marvell SoCs (Kirkwood, Orion, Discovery),
      the network unit in Armada 370 and Armada XP is highly different. This
      is the reason why this new 'mvneta' driver is needed, while the older
      ARM Marvell SoCs use the 'mv643xx_eth' driver.
      
      Here is an overview of the most important hardware changes that
      require a new, specific, driver for the network unit of Armada 370/XP:
      
       - The new network unit has a completely different design and layout
         for the RX and TX descriptors. They are now organized as a simple
         array (each RX and TX queue has base address and size of this
         array) rather than a linked list as in the old SoCs.
      
       - The new network unit has a different RXQ and TXQ management: this
         management is done using special read/write counter registers,
         while in the Old SocS, it was done using the Ownership bit in RX
         and TX descriptors.
      
       - The new network unit has different interrupt registers
      
       - The new network unit way of cleaning of interrupts is not done by
         writing to the cause register, but by updating per-queue counters
      
       - The new network unit has different GMAC registers (link, speed,
         duplex configuration) and different WRR registers.
      
       - The new network unit has lots of new units like PnC (Parser and
         Classifier), PMT, BM (Memory Buffer Management), xPON, and more.
      
      The driver proposed in the current patch only handles the basic
      features. Additional hardware features will progressively be supported
      as needed.
      
      This code has originally been written by Rami Rosen
      <rosenr@marvell.com>, and then reviewed and cleaned up by Thomas
      Petazzoni <thomas.petazzoni@free-electrons.com>.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      c5aff182
    • T
      net: mvmdio: new Marvell MDIO driver · fc8f5ade
      Thomas Petazzoni 提交于
      This patch adds a separate driver for the MDIO interface of the
      Marvell Ethernet controllers. There are two reasons to have a separate
      driver rather than including it inside the MAC driver itself:
      
       *) The MDIO interface is shared by all Ethernet ports, so a driver
          must guarantee non-concurrent accesses to this MDIO interface. The
          most logical way is to have a separate driver that handles this
          single MDIO interface, used by all Ethernet ports.
      
       *) The MDIO interface is the same between the existing mv643xx_eth
          driver and the new mvneta driver. Even though it is for now only
          used by the mvneta driver, it will in the future be used by the
          mv643xx_eth driver as well.
      Signed-off-by: NThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Acked-by: NDavid S. Miller <davem@davemloft.net>
      fc8f5ade
  7. 27 8月, 2011 1 次提交
    • J
      drivers/net/ethernet/*: Enabled vendor Kconfig options · 88f07484
      Jeff Kirsher 提交于
      Based on finds for Stephen Rothwell, where current defconfig's
      enable a ethernet driver and it is not compiled due to the newly
      added NET_VENDOR_* component of Kconfig.
      
      This patch enables all the "new" Kconfig options so that current
      defconfig's will continue to compile the expected drivers.  In
      addition, by enabling all the new Kconfig options does not add
      any un-expected options.
      
      CC: Stephen Rothwll <sfc@canb.auug.org.au>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      88f07484
  8. 12 8月, 2011 1 次提交