123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- SAMSUNG USB-PHY controllers
- ** Samsung's usb 2.0 phy transceiver
- The Samsung's usb 2.0 phy transceiver is used for controlling
- usb 2.0 phy for s3c-hsotg as well as ehci-s5p and ohci-exynos
- usb controllers across Samsung SOCs.
- TODO: Adding the PHY binding with controller(s) according to the under
- development generic PHY driver.
- Required properties:
- Exynos4210:
- - compatible : should be "samsung,exynos4210-usb2phy"
- - reg : base physical address of the phy registers and length of memory mapped
- region.
- - clocks: Clock IDs array as required by the controller.
- - clock-names: names of clock correseponding IDs clock property as requested
- by the controller driver.
- Exynos5250:
- - compatible : should be "samsung,exynos5250-usb2phy"
- - reg : base physical address of the phy registers and length of memory mapped
- region.
- Optional properties:
- - #address-cells: should be '1' when usbphy node has a child node with 'reg'
- property.
- - #size-cells: should be '1' when usbphy node has a child node with 'reg'
- property.
- - ranges: allows valid translation between child's address space and parent's
- address space.
- - The child node 'usbphy-sys' to the node 'usbphy' is for the system controller
- interface for usb-phy. It should provide the following information required by
- usb-phy controller to control phy.
- - reg : base physical address of PHY_CONTROL registers.
- The size of this register is the total sum of size of all PHY_CONTROL
- registers that the SoC has. For example, the size will be
- '0x4' in case we have only one PHY_CONTROL register (e.g.
- OTHERS register in S3C64XX or USB_PHY_CONTROL register in S5PV210)
- and, '0x8' in case we have two PHY_CONTROL registers (e.g.
- USBDEVICE_PHY_CONTROL and USBHOST_PHY_CONTROL registers in exynos4x).
- and so on.
- Example:
- - Exynos4210
- usbphy@125B0000 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "samsung,exynos4210-usb2phy";
- reg = <0x125B0000 0x100>;
- ranges;
- clocks = <&clock 2>, <&clock 305>;
- clock-names = "xusbxti", "otg";
- usbphy-sys {
- /* USB device and host PHY_CONTROL registers */
- reg = <0x10020704 0x8>;
- };
- };
- ** Samsung's usb 3.0 phy transceiver
- Starting exynso5250, Samsung's SoC have usb 3.0 phy transceiver
- which is used for controlling usb 3.0 phy for dwc3-exynos usb 3.0
- controllers across Samsung SOCs.
- Required properties:
- Exynos5250:
- - compatible : should be "samsung,exynos5250-usb3phy"
- - reg : base physical address of the phy registers and length of memory mapped
- region.
- - clocks: Clock IDs array as required by the controller.
- - clock-names: names of clocks correseponding to IDs in the clock property
- as requested by the controller driver.
- Optional properties:
- - #address-cells: should be '1' when usbphy node has a child node with 'reg'
- property.
- - #size-cells: should be '1' when usbphy node has a child node with 'reg'
- property.
- - ranges: allows valid translation between child's address space and parent's
- address space.
- - The child node 'usbphy-sys' to the node 'usbphy' is for the system controller
- interface for usb-phy. It should provide the following information required by
- usb-phy controller to control phy.
- - reg : base physical address of PHY_CONTROL registers.
- The size of this register is the total sum of size of all PHY_CONTROL
- registers that the SoC has. For example, the size will be
- '0x4' in case we have only one PHY_CONTROL register (e.g.
- OTHERS register in S3C64XX or USB_PHY_CONTROL register in S5PV210)
- and, '0x8' in case we have two PHY_CONTROL registers (e.g.
- USBDEVICE_PHY_CONTROL and USBHOST_PHY_CONTROL registers in exynos4x).
- and so on.
- Example:
- usbphy@12100000 {
- compatible = "samsung,exynos5250-usb3phy";
- reg = <0x12100000 0x100>;
- #address-cells = <1>;
- #size-cells = <1>;
- ranges;
- clocks = <&clock 1>, <&clock 286>;
- clock-names = "ext_xtal", "usbdrd30";
- usbphy-sys {
- /* USB device and host PHY_CONTROL registers */
- reg = <0x10040704 0x8>;
- };
- };
|