Skip to content

M1 Max (j316c): USB-C dock in non-Thunderbolt mode never connects USB on 7.2 (data-role swap EPERM, then root ports "not attached") #664

Open

Description

@Brams-s

Hardware: MacBookPro18,2 (t6001, j316c); dock on the port served by cd321x at i2c 0-003b / dwc3 f02280000.usb / atcphy f03000000; ThinkPad Thunderbolt 3 Dock Gen 2 (partner type hub, no altmodes listed).
Kernel: asahi-7.2.12-3 (Arch Linux ARM package 7.2.12.asahi3-1); worked on asahi-7.1.13-3 with a replug.

Steps:

  1. Refuse TB mode on the port: echo no > /sys/class/typec/port3/port3.1/active (udev rule at boot).
  2. Boot with dock attached: data_role = host [device]; echo host > data_role -> EPERM.
  3. Power-cycle dock, replug: swap accepted, xhci-hcd.3.auto registers usb1/usb2, but usb1-port1 and usb2-port1 stay not attached; no downstream devices.

Expected: dock hub enumerates as on 7.1.13.
Extra: driver unbind/rebind recovery used on 7.1 now hard-resets the machine; oops trace from unbinding thunderbolt_apple attached.

Oops when the dock is replugged after unbinding the thunderbolt-apple-nhi/-acio devices:

Call trace:
 apple_cio_tbt_switch_set+0x154/0x480 [thunderbolt_apple] (P)
 typec_thunderbolt_switch_set+0x30/0x50 [typec]
 cd321x_update_work+0x4f8/0x6c0 [tps6598x_core]
 process_one_work+0x168/0x4d0
 worker_thread+0x18c/0x2f8
 kthread+0x120/0x148
 ret_from_fork+0x10/0x20

Downstream report with history (7.1.13 package regression): omacom/omarchy-mac#506

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions