mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-02-22 13:34:23 -05:00
net: stmmac: Extend CSR calc support
Add support for CSR clock range up to 800 MHz. Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Reviewed-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk> Signed-off-by: Jan Petrous (OSS) <jan.petrous@oss.nxp.com> Link: https://patch.msgid.link/20241205-upstream_s32cc_gmac-v8-2-ec1d180df815@oss.nxp.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
committed by
Jakub Kicinski
parent
31cdd84182
commit
c8fab05d02
@@ -257,6 +257,8 @@ struct stmmac_safety_stats {
|
||||
#define CSR_F_150M 150000000
|
||||
#define CSR_F_250M 250000000
|
||||
#define CSR_F_300M 300000000
|
||||
#define CSR_F_500M 500000000
|
||||
#define CSR_F_800M 800000000
|
||||
|
||||
#define MAC_CSR_H_FRQ_MASK 0x20
|
||||
|
||||
|
||||
@@ -325,6 +325,10 @@ static void stmmac_clk_csr_set(struct stmmac_priv *priv)
|
||||
priv->clk_csr = STMMAC_CSR_150_250M;
|
||||
else if ((clk_rate >= CSR_F_250M) && (clk_rate <= CSR_F_300M))
|
||||
priv->clk_csr = STMMAC_CSR_250_300M;
|
||||
else if ((clk_rate >= CSR_F_300M) && (clk_rate < CSR_F_500M))
|
||||
priv->clk_csr = STMMAC_CSR_300_500M;
|
||||
else if ((clk_rate >= CSR_F_500M) && (clk_rate < CSR_F_800M))
|
||||
priv->clk_csr = STMMAC_CSR_500_800M;
|
||||
}
|
||||
|
||||
if (priv->plat->flags & STMMAC_FLAG_HAS_SUN8I) {
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
#define STMMAC_CSR_35_60M 0x3 /* MDC = clk_scr_i/26 */
|
||||
#define STMMAC_CSR_150_250M 0x4 /* MDC = clk_scr_i/102 */
|
||||
#define STMMAC_CSR_250_300M 0x5 /* MDC = clk_scr_i/124 */
|
||||
#define STMMAC_CSR_300_500M 0x6 /* MDC = clk_scr_i/204 */
|
||||
#define STMMAC_CSR_500_800M 0x7 /* MDC = clk_scr_i/324 */
|
||||
|
||||
/* MTL algorithms identifiers */
|
||||
#define MTL_TX_ALGORITHM_WRR 0x0
|
||||
|
||||
Reference in New Issue
Block a user