Hello.

On 10/23/2015 6:51 PM, Rolf Peukert wrote:

Add a function that sets up necessary data structures. In older kernels
this was done in a board_ file. To support initialization via a DT, this
now needs to be included in the probe() function.
Also declare a new device 'compatible' name (am35x-musb) to
differentiate it from omap3-musb.

Signed-off-by: Rolf Peukert <rolf.peuk...@imms.de>
---
  drivers/usb/musb/am35x.c | 73
++++++++++++++++++++++++++++++++++++++++++++++++
  1 file changed, 73 insertions(+)

diff --git a/drivers/usb/musb/am35x.c b/drivers/usb/musb/am35x.c
index c41fe58..3c1477a 100644
--- a/drivers/usb/musb/am35x.c
+++ b/drivers/usb/musb/am35x.c
@@ -462,6 +462,59 @@ static const struct platform_device_info
am35x_dev_info = {
        .dma_mask       = DMA_BIT_MASK(32),
  };

+static struct musb_hdrc_platform_data *am35x_get_config(
+       struct platform_device *pdev)
+{
[...]
+       /* Read settings from device tree */
+       np = pdev->dev.of_node;
+       if (np) {
+               of_property_read_u32(np, "mode", (u32 *)&pdata->mode);
+               of_property_read_u32(np, "interface-type",
+                               (u32 *)&bdata->interface_type);
+               of_property_read_u32(np, "num-eps", (u32 *)&config->num_eps);
+               of_property_read_u32(np, "ram-bits", (u32 *)&config->ram_bits);
+               of_property_read_u32(np, "power", (u32 *)&pdata->power);
+
+               ret = of_property_read_u32(np, "multipoint", &val);
+               if (!ret && val)
+                       config->multipoint = true;

These are common MUSB traits, so I think should be parsed by a generic function. If at all -- they might be determined from the "compatible" prop.

MBR, Sergei

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to