Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
81e6536
wip: MT6589 USB bringup
akku1139 Jan 11, 2026
d1c5a65
arm: defconfig: lenovo-blade: add usb related configs
akku1139 Jan 11, 2026
5a9c458
arm: dts: mediatek: lenovo-blade-b8000-f: add usb pio note
akku1139 Jan 12, 2026
cde6c23
arm: dts: mediatek: mt6589: fix pinctrl reg
akku1139 Jan 12, 2026
1b1d0dd
arm: dts: mt6589: restore usb clocks
akku1139 Jan 12, 2026
c1fd146
wip: usb
akku1139 Jan 12, 2026
12db921
arm: dts: mediatek: mt6589-lenovo-blade-b8000-f: fix gpio pin
akku1139 Jan 18, 2026
e57c729
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jan 18, 2026
fe967ea
arm: configs: lenovo-blade_defconfig: enable debugfs
akku1139 Jan 18, 2026
7fa57ea
wip: wip
akku1139 Jan 18, 2026
f2c9aa1
wip: mt6589 pinctrl-v2
akku1139 Jan 25, 2026
3c4cc40
pinctrl: mediatek: common-v2: add DRV_GRP5 in enum
akku1139 Feb 26, 2026
004391f
pinctrl: mediatek: common-v2: add DRV_GRP5 def
akku1139 Feb 26, 2026
01b5f6f
wip: todo
akku1139 Feb 26, 2026
aea071b
pinctrl: mediatek: mt6589: fix drive
akku1139 Feb 26, 2026
ea5a903
pinctrl: mediatek: mt6589: fix fix
akku1139 Feb 26, 2026
0854556
REVERT: pinctrl: mediatek: common-v1: introduce per-function
akku1139 Mar 2, 2026
b6969bf
dt-bindings: mfd: syscon: remove mediatek,mt6589-pctl-[ab]-syscfg
akku1139 Mar 2, 2026
67219cf
dt-bindings: pinctrl: mediatek: remove mediatek,mt6589-pinctrl
akku1139 Mar 2, 2026
8372fbc
pinctrl: mediatek: mt6589: wip wip
akku1139 Mar 2, 2026
b2a1643
pinctrl: mediatek: mt6589: add R0
akku1139 Mar 2, 2026
7847327
pinctrl: mediatek: mt6589: cleanup
akku1139 Mar 2, 2026
48679c1
arm: dts: mediatek: mt6589: change pio to v2
akku1139 Mar 2, 2026
9f74dcf
arm: dts: mediatek: mt6589: DRV+SR
akku1139 Mar 2, 2026
676a820
arm: dts: mediatek: mt6589: reduce lines
akku1139 Mar 2, 2026
a50aafc
pinctrl: mediatek: mt6589: reduce more lines
akku1139 Mar 2, 2026
9afe5bf
pinctrl: mediatek: mt6589: note
akku1139 Mar 2, 2026
b2feb53
dt-bindings: pinctrl: mediatek: add mt6589 pinctrl (wip)
akku1139 Mar 2, 2026
e51be8b
pinctrl: mediatek: mt6589: remove tdsel/rdsel
akku1139 Mar 2, 2026
b0edaf6
pinctrl: mediatek: mt6589: clean
akku1139 Mar 2, 2026
36f10e6
pinctrl: mediatek: mt6589: cleanup header
akku1139 Mar 2, 2026
f0fee11
pinctrl: mediatek: mt6589: add funcs
akku1139 Mar 2, 2026
b3a8531
clk: mediatek: mt6589: reindex clock ids
akku1139 Mar 3, 2026
6d26bc1
pinctrl: mediatek: mt6589: fix
akku1139 Mar 3, 2026
39506e8
Merge branch 'dev/v6.16/mt6589-pinctrl-v2' into dev/v6.16/mt6589-usb
akku1139 Mar 3, 2026
8cea307
arm: dts: mediatek: mt6589-lenovo-blade-b8000-f: gpio note
akku1139 Mar 4, 2026
4a86207
arm: dts: mediatek: mt6589: lenovo-blade-b8000-f: remove dbg
akku1139 Mar 4, 2026
76a458b
pinctrl: mediatek: mt6589: fix eintmux
akku1139 Mar 4, 2026
d5c242a
Merge remote-tracking branch 'origin/dev/v6.16/mt6589-pinctrl-v2' int…
akku1139 Mar 4, 2026
325d7b1
arm: dts: mediatek: fix eint34 conflict
akku1139 Mar 4, 2026
cd1217e
arm: dts: mediatek: mt6589: lenovo-blade-b8000-f: fix?
akku1139 Mar 4, 2026
dfc5dfe
arm: dts: mediatek: mt6589: Dr. clk26m technique (but not working)
akku1139 Mar 4, 2026
ab55ba9
arm: dts: mediatek: mt6589: lenovo-blade-b8000-f: fix pin
akku1139 Mar 4, 2026
f6eae3f
arm: dts: mediatek: mt6589: yes, usb is not working
akku1139 Mar 4, 2026
628d073
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Mar 8, 2026
9c09aae
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Mar 14, 2026
d33ef6e
arm: defconfig: lenovo-blade: fix merge miss
akku1139 Mar 17, 2026
36e47e9
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Mar 17, 2026
a226579
arm: dts: mediatek: lenovo-b8000-f: fix pio macro
akku1139 Mar 17, 2026
fd1ff1d
arm: defconfig: lenovo-blade: usb usb usb
akku1139 Mar 17, 2026
ad1de90
arm: dts: mediatek: mt6589: usb usb usb usb
akku1139 Mar 17, 2026
f0f3485
arm: dts: mediatek: mt6589: add usb resets
akku1139 Mar 24, 2026
7371de7
arm: defconfig: lenovo-blade: fix for usb ethernet
akku1139 Apr 6, 2026
83e242a
wip wip lol
akku1139 Apr 6, 2026
dd5d066
arm: dts: mt6589: disable usb1
akku1139 Apr 6, 2026
334e77f
arm: defconfig: lenovo-blade: add more usb features
akku1139 Apr 6, 2026
cc422e3
some fix
akku1139 Apr 6, 2026
53d4d17
wip: phy: mediatek: tphy: Support phone products
Dinolek Jul 6, 2025
3f1ff8a
arm: dts: mediatek: b8000-f: set usb peripheral only
akku1139 Jun 21, 2026
2187630
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 21, 2026
07bee28
Revert "wip: phy: mediatek: tphy: Support phone products"
akku1139 Jun 21, 2026
77a6853
arm: dts: mediatek: mt6589-lenovo-b8000-f: disable connector
akku1139 Jun 21, 2026
9d41e07
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 21, 2026
5741c13
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 21, 2026
ef2dab2
dt-bindings: phy: mediatek,tphy: add MT6589 compatible
akku1139 Jun 25, 2026
cc085d9
arm: dts: mediatek: mt6589: update usb node for fixed driver
akku1139 Jun 25, 2026
a511714
arm: dts: mediatek: add MT6320 regulator
akku1139 Jun 25, 2026
8046ea5
dt-bindings: usb: mediatek,musb: add vusb-supply
akku1139 Jun 25, 2026
087cc28
usb: musb: mediatek: add vusb power supply support
akku1139 Jun 25, 2026
4e5a5a1
arm: dts: mediatek: fix regulators
akku1139 Jun 25, 2026
78821d3
phy: mediatek: tphy: add support for MT6589
akku1139 Jun 25, 2026
88ad6ee
phy: mediatek: tphy: enhance MT6589 workarounds (untested)
akku1139 Jun 26, 2026
7bbd2dc
phy: mediatek: tphy: add mt6589 downstream notes
akku1139 Jun 26, 2026
048a167
arm: dts: mt6320: regulator some fix
akku1139 Jun 26, 2026
6d6d8f5
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 26, 2026
90b2f34
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 30, 2026
249a53b
Merge branch 'blade/v6.16' into dev/v6.16/mt6589-usb
akku1139 Jun 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 38 additions & 2 deletions Documentation/devicetree/bindings/phy/mediatek,tphy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ description: |
u2 port2 0x1800 U2PHY_COM
...

Some V1 SoCs (e.g. MT6589) have the FMREG bank at a non-standard
offset (0x0f00 instead of 0x0100). These use a separate reg entry
with name "legacy-fm".

Version 2/3:
port offset bank
u2 port0 0x0000 MISC
Expand Down Expand Up @@ -95,14 +99,27 @@ properties:
deprecated: true
- const: mediatek,mt2712-u3phy
deprecated: true
- const: mediatek,mt6589-tphy
- const: mediatek,mt8173-u3phy

reg:
description:
Register shared by multiple ports, exclude port's private register.
It is needed for T-PHY V1, such as mt2701 and mt8173, but not for
T-PHY V2/V3, such as mt2712.
maxItems: 1
Some V1 SoCs (e.g. MT6589) require a second register range for the
legacy frequency meter block.
minItems: 1
maxItems: 2

reg-names:
description:
Names for the shared register ranges.
minItems: 1
maxItems: 2
items:
- const: sif
- const: legacy-fm

"#address-cells":
enum: [1, 2]
Expand Down Expand Up @@ -330,4 +347,23 @@ examples:
};
};

...
- |
#include <dt-bindings/phy/phy.h>
t-phy@11220000 {
compatible = "mediatek,mt6589-tphy", "mediatek,generic-tphy-v1";
reg = <0x11220000 0x0800>,
<0x11220f00 0x0100>;
reg-names = "sif", "legacy-fm";
mediatek,src-ref-clk-mhz = <48>;
mediatek,src-coef = <22>;
#address-cells = <1>;
#size-cells = <1>;
ranges;

u2port0: usb-phy@11220800 {
reg = <0x11220800 0x0100>;
clocks = <&topckgen CLK_TOP_UNIVPLL_D26>;
clock-names = "ref";
#phy-cells = <1>;
};
};
5 changes: 5 additions & 0 deletions Documentation/devicetree/bindings/usb/mediatek,musb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ properties:
- enum:
- mediatek,mt8516-musb
- mediatek,mt2701-musb
- mediatek,mt6589-musb
- mediatek,mt7623-musb
- const: mediatek,mtk-musb

Expand Down Expand Up @@ -67,6 +68,9 @@ properties:
description: Connector for dual role switch
type: object

vusb-supply:
description: Regulator for USB 3.3V power

dependencies:
usb-role-switch: [ connector ]
connector: [ usb-role-switch ]
Expand Down Expand Up @@ -103,6 +107,7 @@ examples:
<&pericfg CLK_PERI_USB_SLV>;
clock-names = "main","mcu","univpll";
power-domains = <&scpsys MT2701_POWER_DOMAIN_IFR_MSC>;
vusb-supply = <&usb_vusb>;
usb-role-switch;

connector {
Expand Down
245 changes: 245 additions & 0 deletions arch/arm/boot/dts/mediatek/mt6320.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,250 @@
linux,keycodes = <KEY_HOME>;
};
};

mt6320regulator: mt6320regulator {
compatible = "mediatek,mt6320-regulator";

/* BUCK regulators */
mt6320_buck_vproc: buck_vproc {
regulator-name = "vproc";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1493750>;
regulator-ramp-delay = <12500>;
regulator-always-on;
};

mt6320_buck_vsram: buck_vsram {
regulator-name = "vsram";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1493750>;
regulator-ramp-delay = <12500>;
regulator-always-on;
};

mt6320_buck_vcore: buck_vcore {
regulator-name = "vcore";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1493750>;
regulator-ramp-delay = <12500>;
regulator-always-on;
};

mt6320_buck_vm: buck_vm {
regulator-name = "vm";
regulator-min-microvolt = <700000>;
regulator-max-microvolt = <1493750>;
regulator-ramp-delay = <12500>;
regulator-always-on;
};

mt6320_buck_vio18: buck_vio18 {
regulator-name = "vio18";
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <2120000>;
regulator-ramp-delay = <25000>;
regulator-always-on;
};

mt6320_buck_vpa: buck_vpa {
regulator-name = "vpa";
regulator-min-microvolt = <500000>;
regulator-max-microvolt = <3650000>;
};

mt6320_buck_vrf18: buck_vrf18 {
regulator-name = "vrf18";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1825000>;
regulator-ramp-delay = <25000>;
};

/* TODO: add GPU OD */
mt6320_buck_vrf18_2: buck_vrf18_2 {
regulator-name = "vrf18_2";
regulator-min-microvolt = <1050000>;
regulator-max-microvolt = <1825000>;
regulator-ramp-delay = <25000>;
};

/* Analog LDOs */
mt6320_ldo_vrf28: ldo_vrf28 {
regulator-name = "vrf28";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2850000>;
regulator-enable-ramp-delay = <100>;
};

mt6320_ldo_vtcxo: ldo_vtcxo {
regulator-name = "vtcxo";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <90>;
regulator-always-on;
};

mt6320_ldo_va: ldo_va {
regulator-name = "va";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2500000>;
regulator-enable-ramp-delay = <216>;
regulator-always-on;
};

mt6320_ldo_va28: ldo_va28 {
regulator-name = "va28";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <216>;
regulator-always-on;
};

mt6320_ldo_vcama: ldo_vcama {
regulator-name = "vcama";
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vrf28_2: ldo_vrf28_2 {
regulator-name = "vrf28_2";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2850000>;
regulator-enable-ramp-delay = <100>;
};

mt6320_ldo_vtcxo_2: ldo_vtcxo_2 {
regulator-name = "vtcxo_2";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <2850000>;
regulator-enable-ramp-delay = <90>;
};

/* Digital LDOs */
mt6320_ldo_vio28: ldo_vio28 {
regulator-name = "vio28";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-enable-ramp-delay = <216>;
regulator-always-on;
};

mt6320_ldo_vusb: ldo_vusb {
regulator-name = "vusb";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
regulator-boot-on;
};

mt6320_ldo_vmc1: ldo_vmc1 {
regulator-name = "vmc1";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <36>;
regulator-boot-on;
};

mt6320_ldo_vmch1: ldo_vmch1 {
regulator-name = "vmch1";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <36>;
regulator-boot-on;
};

mt6320_ldo_vemc_3v3: ldo_vemc_3v3 {
regulator-name = "vemc_3v3";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <36>;
regulator-boot-on;
};

mt6320_ldo_vemc_1v8: ldo_vemc_1v8 {
regulator-name = "vemc_1v8";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <36>;
regulator-boot-on;
};

mt6320_ldo_vgp1: ldo_vgp1 {
regulator-name = "vgp1";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vgp2: ldo_vgp2 {
regulator-name = "vgp2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vgp3: ldo_vgp3 {
regulator-name = "vgp3";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vgp4: ldo_vgp4 {
regulator-name = "vgp4";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vgp5: ldo_vgp5 {
regulator-name = "vgp5";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vgp6: ldo_vgp6 {
regulator-name = "vgp6";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vsim1: ldo_vsim1 {
regulator-name = "vsim1";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vsim2: ldo_vsim2 {
regulator-name = "vsim2";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <216>;
};

mt6320_ldo_vibr: ldo_vibr {
regulator-name = "vibr";
regulator-min-microvolt = <1200000>;
regulator-max-microvolt = <3300000>;
regulator-enable-ramp-delay = <36>;
};

mt6320_ldo_vrtc: ldo_vrtc {
regulator-name = "vrtc";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
regulator-always-on;
};

mt6320_ldo_vast: ldo_vast {
regulator-name = "vast";
regulator-min-microvolt = <900000>;
regulator-max-microvolt = <1200000>;
regulator-enable-ramp-delay = <216>;
};
};
};
};
Loading