1. 09 2月, 2017 2 次提交
  2. 03 2月, 2017 1 次提交
  3. 18 1月, 2017 1 次提交
    • J
      stmmac: add missing of_node_put · a249708b
      Julia Lawall 提交于
      The function stmmac_dt_phy provides several possibilities for initializing
      plat->mdio_node, all of which have the effect of increasing the reference
      count of the assigned value.  This field is not updated elsewhere, so the
      value is live until the end of the lifetime of plat (devm_allocated), just
      after the end of stmmac_remove_config_dt.  Thus, add an of_node_put on
      plat->mdio_node in stmmac_remove_config_dt.  It is possible that the field
      mdio_node is never initialized, but of_node_put is NULL-safe, so it is also
      safe to call of_node_put in that case.
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Acked-by: NAlexandre TORGUE <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a249708b
  4. 16 1月, 2017 1 次提交
  5. 10 1月, 2017 3 次提交
  6. 03 1月, 2017 1 次提交
  7. 09 12月, 2016 4 次提交
    • N
      net: smmac: allow configuring lower pbl values · 4022d039
      Niklas Cassel 提交于
      The driver currently always sets the PBLx8/PBLx4 bit, which means that
      the pbl values configured via the pbl/txpbl/rxpbl DT properties are
      always multiplied by 8/4 in the hardware.
      
      In order to allow the DT to configure lower pbl values, while at the
      same time not changing behavior of any existing device trees using the
      pbl/txpbl/rxpbl settings, add a property to disable the multiplication
      of the pbl by 8/4 in the hardware.
      Suggested-by: NRabin Vincent <rabinv@axis.com>
      Signed-off-by: NNiklas Cassel <niklas.cassel@axis.com>
      Acked-by: NAlexandre Torgue <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4022d039
    • N
      net: stmmac: add support for independent DMA pbl for tx/rx · 89caaa2d
      Niklas Cassel 提交于
      GMAC and newer supports independent programmable burst lengths for
      DMA tx/rx. Add new optional devicetree properties representing this.
      
      To be backwards compatible, snps,pbl will still be valid, but
      snps,txpbl/snps,rxpbl will override the value in snps,pbl if set.
      
      If the IP is synthesized to use the AXI interface, there is a register
      and a matching DT property inside the optional stmmac-axi-config DT node
      for controlling burst lengths, named snps,blen.
      However, using this register, it is not possible to control tx and rx
      independently. Also, this register is not available if the IP was
      synthesized with, e.g., the AHB interface.
      Signed-off-by: NNiklas Cassel <niklas.cassel@axis.com>
      Acked-by: NAlexandre Torgue <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      89caaa2d
    • N
      net: stmmac: stmmac_platform: fix parsing of DT binding · a332e2fa
      Niklas Cassel 提交于
      commit 64c3b252 ("net: stmmac: fixed the pbl setting with DT")
      changed the parsing of the DT binding.
      
      Before 64c3b252, snps,fixed-burst and snps,mixed-burst were parsed
      regardless if the property snps,pbl existed or not.
      After the commit, fixed burst and mixed burst are only parsed if
      snps,pbl exists. Now when snps,aal has been added, it too is only
      parsed if snps,pbl exists.
      
      Since the DT binding does not specify that fixed burst, mixed burst
      or aal depend on snps,pbl being specified, undo changes introduced
      by 64c3b252.
      
      The issue commit 64c3b252 ("net: stmmac: fixed the pbl setting with
      DT") tries to address is solved in another way:
      The databook specifies that all values other than
      1, 2, 4, 8, 16, or 32 results in undefined behavior,
      so snps,pbl = <0> is invalid.
      
      If pbl is 0 after parsing, set pbl to DEFAULT_DMA_PBL.
      This handles the case where the property is omitted, and also handles
      the case where the property is specified without any data.
      Signed-off-by: NNiklas Cassel <niklas.cassel@axis.com>
      Acked-by: NAlexandre Torgue <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a332e2fa
    • N
      net: stmmac: stmmac_platform: use correct setup function for gmac4 · 7cc99fd2
      Niklas Cassel 提交于
      devicetree binding for stmmac states:
      - compatible: Should be "snps,dwmac-<ip_version>", "snps,dwmac"
      	For backwards compatibility: "st,spear600-gmac" is also supported.
      
      Previously, when specifying "snps,dwmac-4.10a", "snps,dwmac" as your
      compatible string, plat_stmmacenet_data would have both has_gmac and
      has_gmac4 set.
      
      This would lead to stmmac_hw_init calling dwmac1000_setup rather than
      dwmac4_setup, resulting in a non-functional driver.
      This happened since the check for has_gmac is done before the check for
      has_gmac4. However, the order should not matter, so it does not make sense
      to have both set.
      
      If something is valid for both, you should do as the stmmac_interrupt does:
      if (priv->plat->has_gmac || priv->plat->has_gmac4) ...
      
      The places where it was obvious that the author actually meant
      if (has_gmac || has_gmac4) rather than if (has_gmac) has been updated.
      Signed-off-by: NNiklas Cassel <niklas.cassel@axis.com>
      Acked-by: NAlexandre TORGUE <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7cc99fd2
  8. 06 12月, 2016 1 次提交
  9. 02 12月, 2016 2 次提交
  10. 10 11月, 2016 1 次提交
  11. 02 9月, 2016 1 次提交
  12. 02 8月, 2016 1 次提交
  13. 28 6月, 2016 1 次提交
  14. 17 6月, 2016 1 次提交
  15. 04 5月, 2016 1 次提交
  16. 03 4月, 2016 1 次提交
  17. 02 4月, 2016 2 次提交
  18. 07 3月, 2016 1 次提交
  19. 04 3月, 2016 1 次提交
  20. 03 3月, 2016 1 次提交
    • G
      stmmac: rework DMA bus setting and introduce new platform AXI structure · afea0365
      Giuseppe Cavallaro 提交于
      This patch restructures the DMA bus settings and this is done
      by introducing a new platform structure used for programming
      the AXI Bus Mode Register inside the DMA module.
      This structure can be populated from device-tree as documented in the
      binding txt file.
      
      After initializing the DMA, the AXI register can be optionally tuned
      for platform drivers based.
      This patch also reworks some parameters to make coherent the DMA
      configuration now that AXI register is introduced.
      For example, the burst_len is managed by using the mentioned axi
      support above; so the snps,burst-len parameter has been removed.
      It makes sense to provide the AAL parameter from DT to Address-Aligned
      Beats inside the Register0 and review the PBL settings when initialize
      the engine.
      
      For PCI glue, rebuilding the story of this setting, it
      was added to align a configuration so not for fixing some
      known problem. No issue raised after this patch.
      It is safe to use the default burst length instead of
      tuning it to the maximum value
      Signed-off-by: NGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: NAlexandre TORGUE <alexandre.torgue@st.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      afea0365
  21. 16 12月, 2015 1 次提交
  22. 01 8月, 2015 1 次提交
    • J
      stmmac: fix missing MODULE_LICENSE in stmmac_platform · ea111545
      Joachim Eastwood 提交于
      Commit 50649ab1 ("stmmac: drop driver from stmmac platform code")
      was a bit overzealous in removing code and dropped the MODULE_*
      macro's that are still needed since stmmac_platform can be a module.
      Fix this by putting the macro's remvoed in 50649ab1 back.
      
      This fixes the following errors when used as a module:
        stmmac_platform: module license 'unspecified' taints kernel.
        Disabling lock debugging due to kernel taint
        stmmac_platform: Unknown symbol devm_kmalloc (err 0)
        stmmac_platform: Unknown symbol stmmac_suspend (err 0)
        stmmac_platform: Unknown symbol platform_get_irq_byname (err 0)
        stmmac_platform: Unknown symbol stmmac_dvr_remove (err 0)
        stmmac_platform: Unknown symbol platform_get_resource (err 0)
        stmmac_platform: Unknown symbol of_get_phy_mode (err 0)
        stmmac_platform: Unknown symbol of_property_read_u32_array (err 0)
        stmmac_platform: Unknown symbol of_alias_get_id (err 0)
        stmmac_platform: Unknown symbol stmmac_resume (err 0)
        stmmac_platform: Unknown symbol stmmac_dvr_probe (err 0)
      
      Fixes: 50649ab1 ("stmmac: drop driver from stmmac platform code")
      Reported-by: NIgor Gnatenko <i.gnatenko.brain@gmail.com>
      Signed-off-by: NJoachim Eastwood <manabian@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ea111545
  23. 29 7月, 2015 4 次提交
  24. 21 7月, 2015 5 次提交
  25. 31 5月, 2015 1 次提交