The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/phy/brcm,brcmstb-usb-phy.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/phy/brcm,brcmstb-usb-phy.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: Broadcom STB USB PHY
    8 
    9 description: Broadcom's PHY that handles EHCI/OHCI and/or XHCI
   10 
   11 maintainers:
   12   - Al Cooper <alcooperx@gmail.com>
   13   - Rafał Miłecki <rafal@milecki.pl>
   14 
   15 properties:
   16   compatible:
   17     enum:
   18       - brcm,bcm4908-usb-phy
   19       - brcm,bcm7211-usb-phy
   20       - brcm,bcm7216-usb-phy
   21       - brcm,brcmstb-usb-phy
   22 
   23   reg:
   24     minItems: 1
   25     items:
   26       - description: the base CTRL register
   27       - description: XHCI EC register
   28       - description: XHCI GBL register
   29       - description: USB PHY register
   30       - description: USB MDIO register
   31       - description: BDC register
   32 
   33   reg-names:
   34     minItems: 1
   35     items:
   36       - const: ctrl
   37       - const: xhci_ec
   38       - const: xhci_gbl
   39       - const: usb_phy
   40       - const: usb_mdio
   41       - const: bdc_ec
   42 
   43   power-domains:
   44     maxItems: 1
   45 
   46   clocks:
   47     minItems: 1
   48     maxItems: 2
   49 
   50   clock-names:
   51     minItems: 1
   52     items:
   53       - const: sw_usb
   54       - const: sw_usb3
   55 
   56   interrupts:
   57     description: wakeup interrupt
   58 
   59   interrupt-names:
   60     const: wake
   61 
   62   brcm,ipp:
   63     $ref: /schemas/types.yaml#/definitions/uint32
   64     description: Invert Port Power
   65     minimum: 0
   66     maximum: 1
   67 
   68   brcm,ioc:
   69     $ref: /schemas/types.yaml#/definitions/uint32
   70     description: Invert Over Current detection
   71     minimum: 0
   72     maximum: 1
   73 
   74   dr_mode:
   75     description: PHY Device mode. If this property is not defined, the PHY will
   76       default to "host" mode.
   77     enum:
   78       - host
   79       - peripheral
   80       - drd
   81       - typec-pd
   82 
   83   brcm,syscon-piarbctl:
   84     description: phandle to syscon for handling config registers
   85     $ref: /schemas/types.yaml#/definitions/phandle
   86 
   87   brcm,has-xhci:
   88     description: Indicates the PHY has an XHCI PHY.
   89     type: boolean
   90 
   91   brcm,has-eohci:
   92     description: Indicates the PHY has an EHCI/OHCI PHY.
   93     type: boolean
   94 
   95   "#phy-cells":
   96     description: |
   97       Cell allows setting the type of the PHY. Possible values are:
   98       - PHY_TYPE_USB2 for USB1.1/2.0 PHY
   99       - PHY_TYPE_USB3 for USB3.x PHY
  100     const: 1
  101 
  102 required:
  103   - reg
  104   - "#phy-cells"
  105 
  106 anyOf:
  107   - required:
  108       - brcm,has-xhci
  109   - required:
  110       - brcm,has-eohci
  111 
  112 allOf:
  113   - if:
  114       properties:
  115         compatible:
  116           contains:
  117             enum:
  118               - const: brcm,bcm4908-usb-phy
  119               - const: brcm,brcmstb-usb-phy
  120     then:
  121       properties:
  122         reg:
  123           minItems: 1
  124           maxItems: 2
  125   - if:
  126       properties:
  127         compatible:
  128           contains:
  129             const: brcm,bcm7211-usb-phy
  130     then:
  131       properties:
  132         reg:
  133           minItems: 5
  134           maxItems: 6
  135         reg-names:
  136           minItems: 5
  137           maxItems: 6
  138   - if:
  139       properties:
  140         compatible:
  141           contains:
  142             const: brcm,bcm7216-usb-phy
  143     then:
  144       properties:
  145         reg:
  146           minItems: 3
  147           maxItems: 3
  148         reg-names:
  149           minItems: 3
  150           maxItems: 3
  151 
  152 additionalProperties: false
  153 
  154 examples:
  155   - |
  156     #include <dt-bindings/phy/phy.h>
  157 
  158     usb-phy@f0470200 {
  159         compatible = "brcm,brcmstb-usb-phy";
  160         reg = <0xf0470200 0xb8>,
  161               <0xf0471940 0x6c0>;
  162         #phy-cells = <1>;
  163         dr_mode = "host";
  164         brcm,ioc = <1>;
  165         brcm,ipp = <1>;
  166         brcm,has-xhci;
  167         brcm,has-eohci;
  168         clocks = <&usb20>, <&usb30>;
  169         clock-names = "sw_usb", "sw_usb3";
  170     };
  171   - |
  172     #include <dt-bindings/phy/phy.h>
  173 
  174     usb-phy@29f0200 {
  175         compatible = "brcm,bcm7211-usb-phy";
  176         reg = <0x29f0200 0x200>,
  177               <0x29c0880 0x30>,
  178               <0x29cc100 0x534>,
  179               <0x2808000 0x24>,
  180               <0x2980080 0x8>;
  181         reg-names = "ctrl",
  182             "xhci_ec",
  183             "xhci_gbl",
  184             "usb_phy",
  185             "usb_mdio";
  186         brcm,ioc = <0x0>;
  187         brcm,ipp = <0x0>;
  188         interrupts = <0x30>;
  189         interrupt-parent = <&vpu_intr1_nosec_intc>;
  190         interrupt-names = "wake";
  191         #phy-cells = <0x1>;
  192         brcm,has-xhci;
  193         brcm,syscon-piarbctl = <&syscon_piarbctl>;
  194         clocks = <&scmi_clk 256>;
  195         clock-names = "sw_usb";
  196     };

Cache object: 88d8ad4c0fb7c138cef371d661814521


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.