[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e4540877-5874-92a0-f15f-bdefc8dc5f8b@linaro.org>
Date: Tue, 18 Apr 2023 13:42:24 +0200
From: neil.armstrong@...aro.org
To: Dmitry Rokosov <ddrokosov@...rdevices.ru>,
gregkh@...uxfoundation.org, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, khilman@...libre.com,
jbrunet@...libre.com, martin.blumenstingl@...glemail.com,
mturquette@...libre.com, vkoul@...nel.org, kishon@...nel.org,
hminas@...opsys.com, Thinh.Nguyen@...opsys.com
Cc: yue.wang@...ogic.com, hanjie.lin@...ogic.com,
kernel@...rdevices.ru, rockosov@...il.com,
linux-usb@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-amlogic@...ts.infradead.org, linux-phy@...ts.infradead.org
Subject: Re: [PATCH v2 2/5] usb: dwc2: support dwc2 IP for Amlogic A1 SoC
family
On 18/04/2023 13:16, Dmitry Rokosov wrote:
> The Amlogic A1 uses dwc2 Synopsys IP as its USB peripheral (gadget)
> endpoint, with different DWC2 parameters when compared to previous
> Amlogic SoCs.
>
> Signed-off-by: Dmitry Rokosov <ddrokosov@...rdevices.ru>
> ---
> drivers/usb/dwc2/params.c | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/drivers/usb/dwc2/params.c b/drivers/usb/dwc2/params.c
> index 9ed9fd956940..098fbfc774ab 100644
> --- a/drivers/usb/dwc2/params.c
> +++ b/drivers/usb/dwc2/params.c
> @@ -161,6 +161,25 @@ static void dwc2_set_amlogic_g12a_params(struct dwc2_hsotg *hsotg)
> p->hird_threshold_en = false;
> }
>
> +static void dwc2_set_amlogic_a1_params(struct dwc2_hsotg *hsotg)
> +{
> + struct dwc2_core_params *p = &hsotg->params;
> +
> + p->otg_caps.hnp_support = false;
> + p->otg_caps.srp_support = false;
> + p->speed = DWC2_SPEED_PARAM_HIGH;
> + p->host_rx_fifo_size = 192;
> + p->host_nperio_tx_fifo_size = 128;
> + p->host_perio_tx_fifo_size = 128;
> + p->phy_type = DWC2_PHY_TYPE_PARAM_UTMI;
> + p->phy_utmi_width = 8;
> + p->ahbcfg = GAHBCFG_HBSTLEN_INCR8 << GAHBCFG_HBSTLEN_SHIFT;
> + p->lpm = false;
> + p->lpm_clock_gating = false;
> + p->besl = false;
> + p->hird_threshold_en = false;
> +}
> +
> static void dwc2_set_amcc_params(struct dwc2_hsotg *hsotg)
> {
> struct dwc2_core_params *p = &hsotg->params;
> @@ -258,6 +277,8 @@ const struct of_device_id dwc2_of_match_table[] = {
> .data = dwc2_set_amlogic_params },
> { .compatible = "amlogic,meson-g12a-usb",
> .data = dwc2_set_amlogic_g12a_params },
> + { .compatible = "amlogic,meson-a1-usb",
> + .data = dwc2_set_amlogic_a1_params },
> { .compatible = "amcc,dwc-otg", .data = dwc2_set_amcc_params },
> { .compatible = "apm,apm82181-dwc-otg", .data = dwc2_set_amcc_params },
> { .compatible = "st,stm32f4x9-fsotg",
Reviewed-by: Neil Armstrong <neil.armstrong@...aro.org>
Powered by blists - more mailing lists