114 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			114 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
 | |
| %YAML 1.2
 | |
| ---
 | |
| $id: http://devicetree.org/schemas/reset/socionext,uniphier-glue-reset.yaml#
 | |
| $schema: http://devicetree.org/meta-schemas/core.yaml#
 | |
| 
 | |
| title: Socionext UniPhier peripheral core reset in glue layer
 | |
| 
 | |
| description: |
 | |
|   Some peripheral core reset belongs to its own glue layer. Before using
 | |
|   this core reset, it is necessary to control the clocks and resets to
 | |
|   enable this layer. These clocks and resets should be described in each
 | |
|   property.
 | |
| 
 | |
| maintainers:
 | |
|   - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
 | |
| 
 | |
| properties:
 | |
|   compatible:
 | |
|     enum:
 | |
|       - socionext,uniphier-pro4-usb3-reset
 | |
|       - socionext,uniphier-pro5-usb3-reset
 | |
|       - socionext,uniphier-pxs2-usb3-reset
 | |
|       - socionext,uniphier-ld20-usb3-reset
 | |
|       - socionext,uniphier-pxs3-usb3-reset
 | |
|       - socionext,uniphier-nx1-usb3-reset
 | |
|       - socionext,uniphier-pro4-ahci-reset
 | |
|       - socionext,uniphier-pxs2-ahci-reset
 | |
|       - socionext,uniphier-pxs3-ahci-reset
 | |
| 
 | |
|   reg:
 | |
|     maxItems: 1
 | |
| 
 | |
|   "#reset-cells":
 | |
|     const: 1
 | |
| 
 | |
|   clocks:
 | |
|     minItems: 1
 | |
|     maxItems: 2
 | |
| 
 | |
|   clock-names: true
 | |
| 
 | |
|   resets:
 | |
|     minItems: 1
 | |
|     maxItems: 2
 | |
| 
 | |
|   reset-names: true
 | |
| 
 | |
| allOf:
 | |
|   - if:
 | |
|       properties:
 | |
|         compatible:
 | |
|           contains:
 | |
|             enum:
 | |
|               - socionext,uniphier-pro4-usb3-reset
 | |
|               - socionext,uniphier-pro5-usb3-reset
 | |
|               - socionext,uniphier-pro4-ahci-reset
 | |
|     then:
 | |
|       properties:
 | |
|         clocks:
 | |
|           minItems: 2
 | |
|           maxItems: 2
 | |
|         clock-names:
 | |
|           items:
 | |
|             - const: gio
 | |
|             - const: link
 | |
|         resets:
 | |
|           minItems: 2
 | |
|           maxItems: 2
 | |
|         reset-names:
 | |
|           items:
 | |
|             - const: gio
 | |
|             - const: link
 | |
|     else:
 | |
|       properties:
 | |
|         clocks:
 | |
|           maxItems: 1
 | |
|         clock-names:
 | |
|           const: link
 | |
|         resets:
 | |
|           maxItems: 1
 | |
|         reset-names:
 | |
|           const: link
 | |
| 
 | |
| additionalProperties: false
 | |
| 
 | |
| required:
 | |
|   - compatible
 | |
|   - reg
 | |
|   - "#reset-cells"
 | |
|   - clocks
 | |
|   - clock-names
 | |
|   - resets
 | |
|   - reset-names
 | |
| 
 | |
| examples:
 | |
|   - |
 | |
|     usb-glue@65b00000 {
 | |
|         compatible = "simple-mfd";
 | |
|         #address-cells = <1>;
 | |
|         #size-cells = <1>;
 | |
|         ranges = <0 0x65b00000 0x400>;
 | |
| 
 | |
|         usb_rst: reset@0 {
 | |
|             compatible = "socionext,uniphier-ld20-usb3-reset";
 | |
|             reg = <0x0 0x4>;
 | |
|             #reset-cells = <1>;
 | |
|             clock-names = "link";
 | |
|             clocks = <&sys_clk 14>;
 | |
|             reset-names = "link";
 | |
|             resets = <&sys_rst 14>;
 | |
|         };
 | |
|     };
 |