lantiq: dwc2 parameters for danube
authorBen Mulvihill <ben.mulvihill@gmail.com>
Tue, 8 Nov 2016 21:03:14 +0000 (22:03 +0100)
committerJohn Crispin <john@phrozen.org>
Mon, 21 Nov 2016 10:04:12 +0000 (11:04 +0100)
Parameters for dwc2 on lantiq.

A separate dwc2_core_params structure is defined for danube because danube
fifo sizes are large enough to be autodetected. This is not the case on
arx and vrx.

Signed-off-by: Ben Mulvihill <ben.mulvihill@gmail.com>
target/linux/lantiq/patches-4.4/0041-USB-DWC2-add-ltq-params.patch

index ea3e48c3dd4713f64080baf1899348a0ffde6ebd..68d5f3ff4de6e4e6879d0711b3aa7aba4e7fe3d9 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/usb/dwc2/platform.c
 +++ b/drivers/usb/dwc2/platform.c
-@@ -145,6 +145,34 @@ static int __dwc2_lowlevel_hw_enable(str
+@@ -145,6 +145,62 @@ static int __dwc2_lowlevel_hw_enable(str
        return ret;
  }
  
 +      .ahbcfg                         = GAHBCFG_HBSTLEN_INCR16 << GAHBCFG_HBSTLEN_SHIFT,
 +      .uframe_sched                   = -1,
 +};
++
++static const struct dwc2_core_params params_danube = {
++      .otg_cap                        =  2,   /* non-HNP/non-SRP */
++      .otg_ver                        = -1,
++      .dma_enable                     = -1,
++      .dma_desc_enable                = -1,
++      .speed                          = -1,
++      .enable_dynamic_fifo            = -1,
++      .en_multiple_tx_fifo            = -1,
++      .host_rx_fifo_size              = -1,
++      .host_nperio_tx_fifo_size       = -1,
++      .host_perio_tx_fifo_size        = -1,
++      .max_transfer_size              = -1,
++      .max_packet_count               = -1,
++      .host_channels                  = -1,
++      .phy_type                       = -1,
++      .phy_utmi_width                 = -1,
++      .phy_ulpi_ddr                   = -1,
++      .phy_ulpi_ext_vbus              = -1,
++      .i2c_enable                     = -1,
++      .ulpi_fs_ls                     = -1,
++      .host_support_fs_ls_low_power   = -1,
++      .host_ls_low_power_phy_clk      = -1,
++      .ts_dline                       = -1,
++      .reload_ctl                     = -1,
++      .ahbcfg                         = -1,
++      .uframe_sched                   = -1,
++};
 +
  /**
   * dwc2_lowlevel_hw_enable - enable platform lowlevel hw resources
   * @hsotg: The driver state
-@@ -310,6 +338,8 @@ static int dwc2_driver_remove(struct pla
+@@ -310,6 +366,9 @@ static int dwc2_driver_remove(struct pla
  static const struct of_device_id dwc2_of_match_table[] = {
        { .compatible = "brcm,bcm2835-usb", .data = &params_bcm2835 },
        { .compatible = "rockchip,rk3066-usb", .data = &params_rk3066 },
++      { .compatible = "lantiq,ifxhcd-danube-dwc2", .data = &params_danube },
 +      { .compatible = "lantiq,ifxhcd-arx100-dwc2", .data = &params_ltq },
 +      { .compatible = "lantiq,ifxhcd-xrx200-dwc2", .data = &params_ltq },
        { .compatible = "snps,dwc2", .data = NULL },