mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-10-31 05:54:26 -04:00 
			
		
		
		
	Import commits from upstream Linux replacing some downstream patches.
Move accepted patches from pending-{5.15,6.1} to backport-{5.15,6.1}.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
		
	
			
		
			
				
	
	
		
			133 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			5.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From a1c9f7d1d24e90294f6a6755b137fcf306851e93 Mon Sep 17 00:00:00 2001
 | |
| From: Daniel Golle <daniel@makrotopia.org>
 | |
| Date: Tue, 25 Jul 2023 01:53:28 +0100
 | |
| Subject: [PATCH 104/250] net: ethernet: mtk_eth_soc: convert clock bitmap to
 | |
|  u64
 | |
| 
 | |
| The to-be-added MT7988 SoC adds many new clocks which need to be
 | |
| controlled by the Ethernet driver, which will result in their total
 | |
| number exceeding 32.
 | |
| Prepare by converting clock bitmaps into 64-bit types.
 | |
| 
 | |
| Signed-off-by: Daniel Golle <daniel@makrotopia.org>
 | |
| Link: https://lore.kernel.org/r/6960a39bb0078cf84d7642a9558e6a91c6cc9df3.1690246066.git.daniel@makrotopia.org
 | |
| Signed-off-by: Jakub Kicinski <kuba@kernel.org>
 | |
| ---
 | |
|  drivers/net/ethernet/mediatek/mtk_eth_soc.h | 96 +++++++++++----------
 | |
|  1 file changed, 49 insertions(+), 47 deletions(-)
 | |
| 
 | |
| --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
 | |
| +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
 | |
| @@ -666,54 +666,56 @@ enum mtk_clks_map {
 | |
|  	MTK_CLK_MAX
 | |
|  };
 | |
|  
 | |
| -#define MT7623_CLKS_BITMAP	(BIT(MTK_CLK_ETHIF) | BIT(MTK_CLK_ESW) |  \
 | |
| -				 BIT(MTK_CLK_GP1) | BIT(MTK_CLK_GP2) | \
 | |
| -				 BIT(MTK_CLK_TRGPLL))
 | |
| -#define MT7622_CLKS_BITMAP	(BIT(MTK_CLK_ETHIF) | BIT(MTK_CLK_ESW) |  \
 | |
| -				 BIT(MTK_CLK_GP0) | BIT(MTK_CLK_GP1) | \
 | |
| -				 BIT(MTK_CLK_GP2) | \
 | |
| -				 BIT(MTK_CLK_SGMII_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CK) | \
 | |
| -				 BIT(MTK_CLK_ETH2PLL))
 | |
| +#define MT7623_CLKS_BITMAP	(BIT_ULL(MTK_CLK_ETHIF) | BIT_ULL(MTK_CLK_ESW) |  \
 | |
| +				 BIT_ULL(MTK_CLK_GP1) | BIT_ULL(MTK_CLK_GP2) | \
 | |
| +				 BIT_ULL(MTK_CLK_TRGPLL))
 | |
| +#define MT7622_CLKS_BITMAP	(BIT_ULL(MTK_CLK_ETHIF) | BIT_ULL(MTK_CLK_ESW) |  \
 | |
| +				 BIT_ULL(MTK_CLK_GP0) | BIT_ULL(MTK_CLK_GP1) | \
 | |
| +				 BIT_ULL(MTK_CLK_GP2) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CK) | \
 | |
| +				 BIT_ULL(MTK_CLK_ETH2PLL))
 | |
|  #define MT7621_CLKS_BITMAP	(0)
 | |
|  #define MT7628_CLKS_BITMAP	(0)
 | |
| -#define MT7629_CLKS_BITMAP	(BIT(MTK_CLK_ETHIF) | BIT(MTK_CLK_ESW) |  \
 | |
| -				 BIT(MTK_CLK_GP0) | BIT(MTK_CLK_GP1) | \
 | |
| -				 BIT(MTK_CLK_GP2) | BIT(MTK_CLK_FE) | \
 | |
| -				 BIT(MTK_CLK_SGMII_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CK) | \
 | |
| -				 BIT(MTK_CLK_ETH2PLL) | BIT(MTK_CLK_SGMIITOP))
 | |
| -#define MT7981_CLKS_BITMAP	(BIT(MTK_CLK_FE) | BIT(MTK_CLK_GP2) | BIT(MTK_CLK_GP1) | \
 | |
| -				 BIT(MTK_CLK_WOCPU0) | \
 | |
| -				 BIT(MTK_CLK_SGMII_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CK))
 | |
| -#define MT7986_CLKS_BITMAP	(BIT(MTK_CLK_FE) | BIT(MTK_CLK_GP2) | BIT(MTK_CLK_GP1) | \
 | |
| -				 BIT(MTK_CLK_WOCPU1) | BIT(MTK_CLK_WOCPU0) | \
 | |
| -				 BIT(MTK_CLK_SGMII_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII_CDR_FB) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_TX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_RX_250M) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| -				 BIT(MTK_CLK_SGMII2_CDR_FB))
 | |
| +#define MT7629_CLKS_BITMAP	(BIT_ULL(MTK_CLK_ETHIF) | BIT_ULL(MTK_CLK_ESW) |  \
 | |
| +				 BIT_ULL(MTK_CLK_GP0) | BIT_ULL(MTK_CLK_GP1) | \
 | |
| +				 BIT_ULL(MTK_CLK_GP2) | BIT_ULL(MTK_CLK_FE) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CK) | \
 | |
| +				 BIT_ULL(MTK_CLK_ETH2PLL) | BIT_ULL(MTK_CLK_SGMIITOP))
 | |
| +#define MT7981_CLKS_BITMAP	(BIT_ULL(MTK_CLK_FE) | BIT_ULL(MTK_CLK_GP2) | \
 | |
| +				 BIT_ULL(MTK_CLK_GP1) | \
 | |
| +				 BIT_ULL(MTK_CLK_WOCPU0) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CK))
 | |
| +#define MT7986_CLKS_BITMAP	(BIT_ULL(MTK_CLK_FE) | BIT_ULL(MTK_CLK_GP2) | \
 | |
| +				 BIT_ULL(MTK_CLK_GP1) | \
 | |
| +				 BIT_ULL(MTK_CLK_WOCPU1) | BIT_ULL(MTK_CLK_WOCPU0) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII_CDR_FB) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_TX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_RX_250M) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_REF) | \
 | |
| +				 BIT_ULL(MTK_CLK_SGMII2_CDR_FB))
 | |
|  
 | |
|  enum mtk_dev_state {
 | |
|  	MTK_HW_INIT,
 | |
| @@ -1046,7 +1048,7 @@ struct mtk_soc_data {
 | |
|  	const struct mtk_reg_map *reg_map;
 | |
|  	u32             ana_rgc3;
 | |
|  	u64		caps;
 | |
| -	u32		required_clks;
 | |
| +	u64		required_clks;
 | |
|  	bool		required_pctl;
 | |
|  	u8		offload_version;
 | |
|  	u8		hash_offset;
 |