support for MICRO B USB1 in iMX8M Mini

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

support for MICRO B USB1 in iMX8M Mini

1,096 Views
divyeshmarne0
Contributor III

Hi Team,

We are working on IMX8MM bringup activities. We need your help.

Our team has changed design from type C port to MICRO B USB1 in IMX8mm.

So could you please share your inputs that what are the changes required in Kernel and UBOOT to support MICRO B USB1 smoothly . 

0 Kudos
6 Replies

1,092 Views
joanxie
NXP TechSupport
NXP TechSupport
0 Kudos

1,083 Views
divyeshmarne0
Contributor III

Can you share the BSP information on which this U-Boot changes are verified ?

Have you prepare the similar changes for kernel to use USB2.0 without USB TYPE-C ?

If yes, please share patch details.

CHANGES:

U-BOOT:  CONFIG_USB_TCPC=n

Device Tree:

&usbotg1 {
    status = "okay";
};

&usbotg2 {
    status = "okay";

We  did the same changes in U-boot. Do we need to make same changes in Kernel as well ?

Like we have defconfig entry for CONFIG_USB_TCPC  in kernel as well. What should be done with kernel changes?

0 Kudos

1,073 Views
joanxie
NXP TechSupport
NXP TechSupport

in uboot, try to remove CONFIG_USB_TCPC in imx8mm_evk_defconfi  and well as removing the typec_ptn5110_1/2 dependencies in the fsl-imx8mm-evk.dts

so in the kernel, you don't need add  CONFIG_USB_TCPC in the configure file, I don't find CONFIG_USB_TCPC in the kernel configure file

 

1,067 Views
divyeshmarne0
Contributor III

Hi,

In U-BOOT:

Removed CONFIG_USB_TCPC in imx8mm_evk_defconfi 

Removed typec_ptn5110_1/2 dependencies in the fsl-imx8mm-evk.dts

Kernel:

We have the typec_ptn5110_1 dependency in theimx8mm-evk.dtsi as well. Please check below.

ptn5110: tcpc@50 {
compatible = "nxp,ptn5110";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_typec1>;
reg = <0x50>;
interrupt-parent = <&gpio2>;
interrupts = <11 8>;
status = "okay";

port {
typec1_dr_sw: endpoint {
remote-endpoint = <&usb1_drd_sw>;
};
};

typec1_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
power-role = "dual";
data-role = "dual";
try-power-role = "sink";
source-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)>;
sink-pdos = <PDO_FIXED(5000, 3000, PDO_FIXED_USB_COMM)
PDO_VAR(5000, 20000, 3000)>;
op-sink-microwatt = <15000000>;
self-powered;
};
};

Please share details for these changes as well.

File : "arch/arm64/configs/imx_v8_android_defconfig"

CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=y
CONFIG_TYPEC_TCPCI=y
CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_HD3SS3220=m
CONFIG_TYPEC_SWITCH_GPIO=y

 

We have these entries in kernel Defconfig. What value should I assign for these entries

0 Kudos

1,035 Views
joanxie
NXP TechSupport
NXP TechSupport

for kernel, pls refer to the link as below and attached file,

This is an example of enabling USB OTG on MX8MM EVK through micro-USB connector, with role-switch done by the ID pin, bypassing the CC logic and type-C connector.

This is done based on L4.14.78 pre-build image and i.MX8MM EVK(RevB)

"https://community.nxp.com/t5/i-MX-Processors/How-use-USB-as-both-gadget-mode-and-host-mode-usb-USB-O...

 

0 Kudos

1,043 Views
divyeshmarne0
Contributor III

Hi @joanxie ,

any update on above comment?

0 Kudos