Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: qcom: branch: Clean up branch enable registers

Prefix the "branch enable" registers with CBCR_ to be closer to what
they are actually called in Qualcomm terms, use GENMASK instead of
shifting values around and adjust their usage accordingly.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230208091340.124641-5-konrad.dybcio@linaro.org

authored by

Konrad Dybcio and committed by
Bjorn Andersson
b96fbb03 5ab6561d

+8 -9
+5 -5
drivers/clk/qcom/clk-branch.c
··· 44 44 u32 val; 45 45 u32 mask; 46 46 47 - mask = BRANCH_NOC_FSM_STATUS_MASK << BRANCH_NOC_FSM_STATUS_SHIFT; 48 - mask |= BRANCH_CLK_OFF; 47 + mask = CBCR_NOC_FSM_STATUS; 48 + mask |= CBCR_CLK_OFF; 49 49 50 50 regmap_read(br->clkr.regmap, br->halt_reg, &val); 51 51 52 52 if (enabling) { 53 53 val &= mask; 54 - return (val & BRANCH_CLK_OFF) == 0 || 55 - val == BRANCH_NOC_FSM_STATUS_ON; 54 + return (val & CBCR_CLK_OFF) == 0 || 55 + FIELD_GET(CBCR_NOC_FSM_STATUS, val) == FSM_STATUS_ON; 56 56 } else { 57 - return val & BRANCH_CLK_OFF; 57 + return val & CBCR_CLK_OFF; 58 58 } 59 59 } 60 60
+3 -4
drivers/clk/qcom/clk-branch.h
··· 39 39 }; 40 40 41 41 /* Branch clock common bits for HLOS-owned clocks */ 42 - #define BRANCH_CLK_OFF BIT(31) 43 - #define BRANCH_NOC_FSM_STATUS_SHIFT 28 44 - #define BRANCH_NOC_FSM_STATUS_MASK 0x7 45 - #define BRANCH_NOC_FSM_STATUS_ON (0x2 << BRANCH_NOC_FSM_STATUS_SHIFT) 42 + #define CBCR_CLK_OFF BIT(31) 43 + #define CBCR_NOC_FSM_STATUS GENMASK(30, 28) 44 + #define FSM_STATUS_ON BIT(1) 46 45 #define CBCR_FORCE_MEM_CORE_ON BIT(14) 47 46 #define CBCR_FORCE_MEM_PERIPH_ON BIT(13) 48 47 #define CBCR_FORCE_MEM_PERIPH_OFF BIT(12)