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

Commit e57ebc1d authored by Felipe Balbi's avatar Felipe Balbi
Browse files

usb: dwc3: gadget: pretty print link states



this makes it slightly easier to read link state
change interrupt logs.

Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent 40cc57c7
Loading
Loading
Loading
Loading
+41 −3
Original line number Diff line number Diff line
@@ -302,6 +302,42 @@ static const char *dwc3_gadget_ep_cmd_string(u8 cmd)
	}
}

static const char *dwc3_gadget_link_string(enum dwc3_link_state link_state)
{
	switch (link_state) {
	case DWC3_LINK_STATE_U0:
		return "U0";
	case DWC3_LINK_STATE_U1:
		return "U1";
	case DWC3_LINK_STATE_U2:
		return "U2";
	case DWC3_LINK_STATE_U3:
		return "U3";
	case DWC3_LINK_STATE_SS_DIS:
		return "SS.Disabled";
	case DWC3_LINK_STATE_RX_DET:
		return "RX.Detect";
	case DWC3_LINK_STATE_SS_INACT:
		return "SS.Inactive";
	case DWC3_LINK_STATE_POLL:
		return "Polling";
	case DWC3_LINK_STATE_RECOV:
		return "Recovery";
	case DWC3_LINK_STATE_HRESET:
		return "Hot Reset";
	case DWC3_LINK_STATE_CMPLY:
		return "Compliance";
	case DWC3_LINK_STATE_LPBK:
		return "Loopback";
	case DWC3_LINK_STATE_RESET:
		return "Reset";
	case DWC3_LINK_STATE_RESUME:
		return "Resume";
	default:
		return "UNKNOWN link state\n";
	}
}

int dwc3_send_gadget_generic_command(struct dwc3 *dwc, int cmd, u32 param)
{
	u32		timeout = 500;
@@ -2449,8 +2485,6 @@ static void dwc3_gadget_linksts_change_interrupt(struct dwc3 *dwc,
		}
	}

	dwc->link_state = next;

	switch (next) {
	case DWC3_LINK_STATE_U1:
		if (dwc->speed == USB_SPEED_SUPER)
@@ -2468,7 +2502,11 @@ static void dwc3_gadget_linksts_change_interrupt(struct dwc3 *dwc,
		break;
	}

	dev_vdbg(dwc->dev, "%s link %d\n", __func__, dwc->link_state);
	dev_vdbg(dwc->dev, "link change: %s [%d] -> %s [%d]\n",
			dwc3_gadget_link_string(dwc->link_state),
			dwc->link_state, dwc3_gadget_link_string(next), next);

	dwc->link_state = next;
}

static void dwc3_gadget_hibernation_interrupt(struct dwc3 *dwc,