mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
256 lines
8.7 KiB
256 lines
8.7 KiB
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/mfd/mediatek,mt6360.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: MT6360 PMIC from MediaTek Integrated |
|
|
|
maintainers: |
|
- Gene Chen <[email protected]> |
|
|
|
description: | |
|
MT6360 is a PMIC device with the following sub modules. |
|
It is interfaced to host controller using I2C interface. |
|
|
|
This document describes the binding for PMIC device and its sub module. |
|
|
|
properties: |
|
compatible: |
|
const: mediatek,mt6360 |
|
|
|
reg: |
|
maxItems: 1 |
|
|
|
wakeup-source: true |
|
|
|
interrupts: |
|
maxItems: 1 |
|
|
|
interrupt-names: |
|
const: IRQB |
|
|
|
interrupt-controller: true |
|
|
|
"#interrupt-cells": |
|
const: 1 |
|
description: |
|
The first cell is the IRQ number. |
|
|
|
regulators: |
|
$ref: /schemas/regulator/mt6360-regulator.yaml# |
|
|
|
charger: |
|
$ref: /schemas/power/supply/mt6360_charger.yaml# |
|
|
|
tcpc: |
|
$ref: /schemas/usb/mediatek,mt6360-tcpc.yaml# |
|
|
|
led-controller: |
|
$ref: /schemas/leds/leds-mt6360.yaml# |
|
|
|
required: |
|
- compatible |
|
- reg |
|
- interrupts |
|
- interrupt-controller |
|
- "#interrupt-cells" |
|
|
|
additionalProperties: |
|
type: object |
|
|
|
examples: |
|
- | |
|
#include <dt-bindings/interrupt-controller/irq.h> |
|
#include <dt-bindings/regulator/mediatek,mt6360-regulator.h> |
|
#include <dt-bindings/leds/common.h> |
|
#include <dt-bindings/usb/pd.h> |
|
i2c { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
pmic@34 { |
|
compatible = "mediatek,mt6360"; |
|
reg = <0x34>; |
|
wakeup-source; |
|
interrupts-extended = <&gpio26 0 IRQ_TYPE_LEVEL_LOW>; |
|
interrupt-names = "IRQB"; |
|
interrupt-controller; |
|
#interrupt-cells = <1>; |
|
|
|
mt6360_charger: charger { |
|
compatible = "mediatek,mt6360-chg"; |
|
richtek,vinovp-microvolt = <14500000>; |
|
|
|
otg_vbus_regulator: usb-otg-vbus-regulator { |
|
regulator-compatible = "usb-otg-vbus"; |
|
regulator-name = "usb-otg-vbus"; |
|
regulator-min-microvolt = <4425000>; |
|
regulator-max-microvolt = <5825000>; |
|
}; |
|
}; |
|
|
|
led-controller { |
|
compatible = "mediatek,mt6360-led"; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
multi-led@0 { |
|
reg = <0>; |
|
function = LED_FUNCTION_INDICATOR; |
|
color = <LED_COLOR_ID_RGB>; |
|
led-max-microamp = <24000>; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
led@0 { |
|
reg = <0>; |
|
color = <LED_COLOR_ID_RED>; |
|
}; |
|
led@1 { |
|
reg = <1>; |
|
color = <LED_COLOR_ID_GREEN>; |
|
}; |
|
led@2 { |
|
reg = <2>; |
|
color = <LED_COLOR_ID_BLUE>; |
|
}; |
|
}; |
|
led@3 { |
|
reg = <3>; |
|
function = LED_FUNCTION_INDICATOR; |
|
color = <LED_COLOR_ID_WHITE>; |
|
led-max-microamp = <150000>; |
|
}; |
|
led@4 { |
|
reg = <4>; |
|
function = LED_FUNCTION_FLASH; |
|
color = <LED_COLOR_ID_WHITE>; |
|
function-enumerator = <1>; |
|
led-max-microamp = <200000>; |
|
flash-max-microamp = <500000>; |
|
flash-max-timeout-us = <1024000>; |
|
}; |
|
led@5 { |
|
reg = <5>; |
|
function = LED_FUNCTION_FLASH; |
|
color = <LED_COLOR_ID_WHITE>; |
|
function-enumerator = <2>; |
|
led-max-microamp = <200000>; |
|
flash-max-microamp = <500000>; |
|
flash-max-timeout-us = <1024000>; |
|
}; |
|
}; |
|
|
|
regulators { |
|
compatible = "mediatek,mt6360-regulator"; |
|
LDO_VIN3-supply = <&BUCK2>; |
|
buck1 { |
|
regulator-compatible = "BUCK1"; |
|
regulator-name = "mt6360,buck1"; |
|
regulator-min-microvolt = <300000>; |
|
regulator-max-microvolt = <1300000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP |
|
MT6360_OPMODE_ULP>; |
|
}; |
|
BUCK2: buck2 { |
|
regulator-compatible = "BUCK2"; |
|
regulator-name = "mt6360,buck2"; |
|
regulator-min-microvolt = <300000>; |
|
regulator-max-microvolt = <1300000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP |
|
MT6360_OPMODE_ULP>; |
|
}; |
|
ldo6 { |
|
regulator-compatible = "LDO6"; |
|
regulator-name = "mt6360,ldo6"; |
|
regulator-min-microvolt = <500000>; |
|
regulator-max-microvolt = <2100000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
ldo7 { |
|
regulator-compatible = "LDO7"; |
|
regulator-name = "mt6360,ldo7"; |
|
regulator-min-microvolt = <500000>; |
|
regulator-max-microvolt = <2100000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
ldo1 { |
|
regulator-compatible = "LDO1"; |
|
regulator-name = "mt6360,ldo1"; |
|
regulator-min-microvolt = <1200000>; |
|
regulator-max-microvolt = <3600000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
ldo2 { |
|
regulator-compatible = "LDO2"; |
|
regulator-name = "mt6360,ldo2"; |
|
regulator-min-microvolt = <1200000>; |
|
regulator-max-microvolt = <3600000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
ldo3 { |
|
regulator-compatible = "LDO3"; |
|
regulator-name = "mt6360,ldo3"; |
|
regulator-min-microvolt = <1200000>; |
|
regulator-max-microvolt = <3600000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
ldo5 { |
|
regulator-compatible = "LDO5"; |
|
regulator-name = "mt6360,ldo5"; |
|
regulator-min-microvolt = <2700000>; |
|
regulator-max-microvolt = <3600000>; |
|
regulator-allowed-modes = <MT6360_OPMODE_NORMAL |
|
MT6360_OPMODE_LP>; |
|
}; |
|
}; |
|
|
|
tcpc { |
|
compatible = "mediatek,mt6360-tcpc"; |
|
interrupts-extended = <&gpio26 3 IRQ_TYPE_LEVEL_LOW>; |
|
interrupt-names = "PD_IRQB"; |
|
|
|
connector { |
|
compatible = "usb-c-connector"; |
|
label = "USB-C"; |
|
data-role = "dual"; |
|
power-role = "dual"; |
|
try-power-role = "sink"; |
|
source-pdos = <PDO_FIXED(5000, 1000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; |
|
sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_DUAL_ROLE | PDO_FIXED_DATA_SWAP)>; |
|
op-sink-microwatt = <10000000>; |
|
|
|
ports { |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
port@0 { |
|
reg = <0>; |
|
endpoint { |
|
remote-endpoint = <&usb_hs>; |
|
}; |
|
}; |
|
port@1 { |
|
reg = <1>; |
|
endpoint { |
|
remote-endpoint = <&usb_ss>; |
|
}; |
|
}; |
|
port@2 { |
|
reg = <2>; |
|
endpoint { |
|
remote-endpoint = <&dp_aux>; |
|
}; |
|
}; |
|
}; |
|
}; |
|
}; |
|
}; |
|
};
|
|
|