Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41ba9b9b authored by Vardan Mikayelyan's avatar Vardan Mikayelyan Committed by Felipe Balbi
Browse files

usb: dwc2: Rename hibernation to partial_power_down



No-op change, only rename.

This code was misnamed originally. It was only responsible for partial
power down and not for hibernation.

Rename core_params->hibernation to core_params->power_down,
dwc2_set_param_hibernation() to dwc2_set_param_power_down().

Signed-off-by: default avatarVardan Mikayelyan <mvardan@synopsys.com>
Signed-off-by: default avatarJohn Youn <johnyoun@synopsys.com>
Signed-off-by: default avatarGrigor Tovmasyan <tovmasya@synopsys.com>
Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
parent 7455f8b7
Loading
Loading
Loading
Loading
+7 −7
Original line number Original line Diff line number Diff line
@@ -128,17 +128,17 @@ static int dwc2_restore_global_registers(struct dwc2_hsotg *hsotg)
}
}


/**
/**
 * dwc2_exit_hibernation() - Exit controller from Partial Power Down.
 * dwc2_exit_partial_power_down() - Exit controller from Partial Power Down.
 *
 *
 * @hsotg: Programming view of the DWC_otg controller
 * @hsotg: Programming view of the DWC_otg controller
 * @restore: Controller registers need to be restored
 * @restore: Controller registers need to be restored
 */
 */
int dwc2_exit_hibernation(struct dwc2_hsotg *hsotg, bool restore)
int dwc2_exit_partial_power_down(struct dwc2_hsotg *hsotg, bool restore)
{
{
	u32 pcgcctl;
	u32 pcgcctl;
	int ret = 0;
	int ret = 0;


	if (!hsotg->params.hibernation)
	if (!hsotg->params.power_down)
		return -ENOTSUPP;
		return -ENOTSUPP;


	pcgcctl = dwc2_readl(hsotg->regs + PCGCTL);
	pcgcctl = dwc2_readl(hsotg->regs + PCGCTL);
@@ -182,16 +182,16 @@ int dwc2_exit_hibernation(struct dwc2_hsotg *hsotg, bool restore)
}
}


/**
/**
 * dwc2_enter_hibernation() - Put controller in Partial Power Down.
 * dwc2_enter_partial_power_down() - Put controller in Partial Power Down.
 *
 *
 * @hsotg: Programming view of the DWC_otg controller
 * @hsotg: Programming view of the DWC_otg controller
 */
 */
int dwc2_enter_hibernation(struct dwc2_hsotg *hsotg)
int dwc2_enter_partial_power_down(struct dwc2_hsotg *hsotg)
{
{
	u32 pcgcctl;
	u32 pcgcctl;
	int ret = 0;
	int ret = 0;


	if (!hsotg->params.hibernation)
	if (!hsotg->params.power_down)
		return -ENOTSUPP;
		return -ENOTSUPP;


	/* Backup all registers */
	/* Backup all registers */
@@ -220,7 +220,7 @@ int dwc2_enter_hibernation(struct dwc2_hsotg *hsotg)


	/*
	/*
	 * Clear any pending interrupts since dwc2 will not be able to
	 * Clear any pending interrupts since dwc2 will not be able to
	 * clear them after entering hibernation.
	 * clear them after entering partial_power_down.
	 */
	 */
	dwc2_writel(0xffffffff, hsotg->regs + GINTSTS);
	dwc2_writel(0xffffffff, hsotg->regs + GINTSTS);


+6 −6
Original line number Original line Diff line number Diff line
@@ -421,9 +421,9 @@ enum dwc2_ep0_state {
 *                      case.
 *                      case.
 *                      0 - No (default)
 *                      0 - No (default)
 *                      1 - Yes
 *                      1 - Yes
 * @hibernation:	Specifies whether the controller support hibernation.
 * @power_down:         Specifies whether the controller support power_down.
 *			If hibernation is enabled, the controller will enter
 *			If power_down is enabled, the controller will enter
 *			hibernation in both peripheral and host mode when
 *			power_down in both peripheral and host mode when
 *			needed.
 *			needed.
 *			0 - No (default)
 *			0 - No (default)
 *			1 - Yes
 *			1 - Yes
@@ -498,7 +498,7 @@ struct dwc2_core_params {
	bool reload_ctl;
	bool reload_ctl;
	bool uframe_sched;
	bool uframe_sched;
	bool external_id_pin_ctl;
	bool external_id_pin_ctl;
	bool hibernation;
	bool power_down;
	bool lpm;
	bool lpm;
	bool lpm_clock_gating;
	bool lpm_clock_gating;
	bool besl;
	bool besl;
@@ -1117,8 +1117,8 @@ static inline bool dwc2_is_hs_iot(struct dwc2_hsotg *hsotg)
 */
 */
int dwc2_core_reset(struct dwc2_hsotg *hsotg, bool skip_wait);
int dwc2_core_reset(struct dwc2_hsotg *hsotg, bool skip_wait);
int dwc2_core_reset_and_force_dr_mode(struct dwc2_hsotg *hsotg);
int dwc2_core_reset_and_force_dr_mode(struct dwc2_hsotg *hsotg);
int dwc2_enter_hibernation(struct dwc2_hsotg *hsotg);
int dwc2_enter_partial_power_down(struct dwc2_hsotg *hsotg);
int dwc2_exit_hibernation(struct dwc2_hsotg *hsotg, bool restore);
int dwc2_exit_partial_power_down(struct dwc2_hsotg *hsotg, bool restore);


bool dwc2_force_mode_if_needed(struct dwc2_hsotg *hsotg, bool host);
bool dwc2_force_mode_if_needed(struct dwc2_hsotg *hsotg, bool host);
void dwc2_clear_force_mode(struct dwc2_hsotg *hsotg);
void dwc2_clear_force_mode(struct dwc2_hsotg *hsotg);
+7 −7
Original line number Original line Diff line number Diff line
@@ -321,10 +321,10 @@ static void dwc2_handle_session_req_intr(struct dwc2_hsotg *hsotg)


	if (dwc2_is_device_mode(hsotg)) {
	if (dwc2_is_device_mode(hsotg)) {
		if (hsotg->lx_state == DWC2_L2) {
		if (hsotg->lx_state == DWC2_L2) {
			ret = dwc2_exit_hibernation(hsotg, true);
			ret = dwc2_exit_partial_power_down(hsotg, true);
			if (ret && (ret != -ENOTSUPP))
			if (ret && (ret != -ENOTSUPP))
				dev_err(hsotg->dev,
				dev_err(hsotg->dev,
					"exit hibernation failed\n");
					"exit power_down failed\n");
		}
		}


		/*
		/*
@@ -417,16 +417,16 @@ static void dwc2_handle_wakeup_detected_intr(struct dwc2_hsotg *hsotg)
			/* Clear Remote Wakeup Signaling */
			/* Clear Remote Wakeup Signaling */
			dctl &= ~DCTL_RMTWKUPSIG;
			dctl &= ~DCTL_RMTWKUPSIG;
			dwc2_writel(dctl, hsotg->regs + DCTL);
			dwc2_writel(dctl, hsotg->regs + DCTL);
			ret = dwc2_exit_hibernation(hsotg, true);
			ret = dwc2_exit_partial_power_down(hsotg, true);
			if (ret && (ret != -ENOTSUPP))
			if (ret && (ret != -ENOTSUPP))
				dev_err(hsotg->dev, "exit hibernation failed\n");
				dev_err(hsotg->dev, "exit power_down failed\n");


			call_gadget(hsotg, resume);
			call_gadget(hsotg, resume);
		}
		}
		/* Change to L0 state */
		/* Change to L0 state */
		hsotg->lx_state = DWC2_L0;
		hsotg->lx_state = DWC2_L0;
	} else {
	} else {
		if (hsotg->params.hibernation)
		if (hsotg->params.power_down)
			return;
			return;


		if (hsotg->lx_state != DWC2_L1) {
		if (hsotg->lx_state != DWC2_L1) {
@@ -497,11 +497,11 @@ static void dwc2_handle_usb_suspend_intr(struct dwc2_hsotg *hsotg)
				return;
				return;
			}
			}


			ret = dwc2_enter_hibernation(hsotg);
			ret = dwc2_enter_partial_power_down(hsotg);
			if (ret) {
			if (ret) {
				if (ret != -ENOTSUPP)
				if (ret != -ENOTSUPP)
					dev_err(hsotg->dev,
					dev_err(hsotg->dev,
						"enter hibernation failed\n");
						"enter power_down failed\n");
				goto skip_power_saving;
				goto skip_power_saving;
			}
			}


+1 −1
Original line number Original line Diff line number Diff line
@@ -718,7 +718,7 @@ static int params_show(struct seq_file *seq, void *v)
	print_param_hex(seq, p, ahbcfg);
	print_param_hex(seq, p, ahbcfg);
	print_param(seq, p, uframe_sched);
	print_param(seq, p, uframe_sched);
	print_param(seq, p, external_id_pin_ctl);
	print_param(seq, p, external_id_pin_ctl);
	print_param(seq, p, hibernation);
	print_param(seq, p, power_down);
	print_param(seq, p, lpm);
	print_param(seq, p, lpm);
	print_param(seq, p, lpm_clock_gating);
	print_param(seq, p, lpm_clock_gating);
	print_param(seq, p, besl);
	print_param(seq, p, besl);
+3 −3
Original line number Original line Diff line number Diff line
@@ -3527,7 +3527,7 @@ static irqreturn_t dwc2_hsotg_irq(int irq, void *pw)


		/* This event must be used only if controller is suspended */
		/* This event must be used only if controller is suspended */
		if (hsotg->lx_state == DWC2_L2) {
		if (hsotg->lx_state == DWC2_L2) {
			dwc2_exit_hibernation(hsotg, true);
			dwc2_exit_partial_power_down(hsotg, true);
			hsotg->lx_state = DWC2_L0;
			hsotg->lx_state = DWC2_L0;
		}
		}
	}
	}
@@ -4374,11 +4374,11 @@ static int dwc2_hsotg_vbus_session(struct usb_gadget *gadget, int is_active)
	spin_lock_irqsave(&hsotg->lock, flags);
	spin_lock_irqsave(&hsotg->lock, flags);


	/*
	/*
	 * If controller is hibernated, it must exit from hibernation
	 * If controller is hibernated, it must exit from power_down
	 * before being initialized / de-initialized
	 * before being initialized / de-initialized
	 */
	 */
	if (hsotg->lx_state == DWC2_L2)
	if (hsotg->lx_state == DWC2_L2)
		dwc2_exit_hibernation(hsotg, false);
		dwc2_exit_partial_power_down(hsotg, false);


	if (is_active) {
	if (is_active) {
		hsotg->op_state = OTG_STATE_B_PERIPHERAL;
		hsotg->op_state = OTG_STATE_B_PERIPHERAL;
Loading