Lines Matching refs:hw_voter
22 .hw_voter = {
118 static bool is_mminfra_ready(struct mminfra_hw_voter *hw_voter) in is_mminfra_ready() argument
120 if (!hw_voter) in is_mminfra_ready()
123 return !!(mmio_read_32(hw_voter->done_bits) & MMINFRA_DONE); in is_mminfra_ready()
126 static int mminfra_hwv_power_ctrl(struct mminfra_hw_voter *hw_voter, bool is_on) in mminfra_hwv_power_ctrl() argument
131 vote_mask = BIT(hw_voter->en_shift); in mminfra_hwv_power_ctrl()
132 vote_ofs = is_on ? hw_voter->set_ofs : hw_voter->clr_ofs; in mminfra_hwv_power_ctrl()
138 mmio_write_32(hw_voter->base + vote_ofs, vote_mask); in mminfra_hwv_power_ctrl()
140 val = mmio_read_32(hw_voter->base + hw_voter->en_ofs); in mminfra_hwv_power_ctrl()
146 is_on, hw_voter->base + hw_voter->en_ofs, val); in mminfra_hwv_power_ctrl()
158 if (is_mminfra_ready(hw_voter)) in mminfra_hwv_power_ctrl()
165 hw_voter->done_bits, val); in mminfra_hwv_power_ctrl()
191 if (is_mminfra_ready(&mminfra_pwr_ctrl.hw_voter)) { in mminfra_get_if_in_use()
192 ret = mminfra_hwv_power_ctrl(&mminfra_pwr_ctrl.hw_voter, true); in mminfra_get_if_in_use()
224 mminfra_hwv_power_ctrl(&mminfra_pwr_ctrl.hw_voter, false); in mminfra_put()