# Bring up Ethernet The following figure shows the workflow to bring up Ethernet on the reference kits. VBackground-1 Solid.1000 Page-1 Sheet.1034 Sheet.4 Assign MAC address Assign MAC address Sheet.20 Configure MTU size Configure MTU size Sheet.1000 Assign IP address Assign IP address Sheet.1032 Sheet.1033 Ethernet bringup workflow Tab QCS6490 Tab QCS9075 Tab QCS8275 - *class* tabincludedirective - Note - Flash the corresponding [CDT](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-250403001134/ReleaseNote.html#release-specific-information) on the device to ensure that the correct configuration is used for Ethernet bringup. - The QPS615 MAC driver and kernel configuration are enabled by default in the source code. - To bring up hardware configurations other than the configuration provided by Qualcomm, see [Bring up alternate hardware enablement](https://docs.qualcomm.com/doc/80-70018-26/topic/bring_up-ethernet.html#bring-up-alt-hardware-enablement). To bring up Ethernet functionality on RB3 Gen 2 Development Kit, do the following: > > > 1. The RB3 Gen 2 Development Kit comes with a [preconfigured MAC address](https://docs.qualcomm.com/doc/80-70018-26/topic/configure-ethernet-features.html#verify-preconfigured-mac). Skip this step if you choose to use the same MAC address. > > > > > > > > > Alternatively, to modify the preconfigured MAC address on the device, perform the following steps: > > > > 1. Bring down the interface. > > > > > > > > > > > > > > > ifconfig down > > > Copy to clipboard > > > > > > > > > For example: > > > > > > > > > ifconfig enP1p5s0f0 down > > > Copy to clipboard > > 2. Assign the MAC address. > > > > > > > > > > > > > > > ifconfig hw ether > > > Copy to clipboard > > > > > > > > > For example: > > > > > > > > > ifconfig enP15s0f0 hw ether XX:XX:XX:YY:YY:YY > > > Copy to clipboard > > 3. Bring up the interface. > > > > > > > > > > > > > > > ifconfig up > > > Copy to clipboard > > > > > > > > > For example: > > > > > > > > > ifconfig enP1p5s0f0 169.254.227.235 up > > > Copy to clipboard > > > > > > > > Sample output: > > > > > > ifconfig > > enP1p5s0f0 Link encap:Ethernet **HWaddr XX:XX:XX:YY:YY:YY** > > inet addr:169.254.227.235 Bcast:169.254.255.255 Mask:255.255.0.0 > > inet6 addr: fe80::533c:8ed6:557:3860/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:19 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:36 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:3416 (3.3 KiB) TX bytes:5559 (5.4 KiB) > > Interrupt:249 > > Copy to clipboard > > > > > > > > > > > > Note > > > > > > This MAC address is valid only for the current boot cycle. On rebooting the device, the MAC address is updated with the address from persistent storage as described in Verify preconfigured MAC address. > 2. When the device is connected to a public network, the DHCP server connected to the network assigns the IP address automatically. No specific configuration is required. > > > > > > > > > Alternatively, you can assign a static IP address. > > > > > > ifconfig > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig enP1p5s0f0 169.254.227.235 > > Copy to clipboard > > > > > > Sample output: > > > > > > ifconfig > > enP1p5s0f0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > **inet addr:169.254.227.235** Bcast:169.254.255.255 Mask:255.255.0.0 > > inet6 addr: fe80::533c:8ed6:557:3860/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:19 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:36 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:3416 (3.3 KiB) TX bytes:5559 (5.4 KiB) > > Interrupt:249 > > Copy to clipboard > > > > > > > > > > > > Note > > > > > > This IP address is valid only for the current boot cycle. On rebooting the device, the IP address isn’t retained. > 3. Configure the MTU size for the data packets over the Ethernet interface. > > > > > > > > > ifconfig down > > > > ifconfig mtu > > > > ifconfig up > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig enP1p5s0f0 down > > > > ifconfig enP1p5s0f0 mtu 1500 > > > > ifconfig enP1p5s0f0 up > > Copy to clipboard > > > > > > Sample output: > > > > > > ifconfig > > enP1p5s0f0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > inet addr:169.254.227.235 Bcast:169.254.255.255 Mask:255.255.0.0 > > inet6 addr: fe80::533c:8ed6:557:3860/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST **MTU:1500** Metric:1 > > RX packets:19 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:36 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:3416 (3.3 KiB) TX bytes:5559 (5.4 KiB) > > Interrupt:249 > > Copy to clipboard ## Bring up alternate hardware enablement You can attach MAC/PHY components other than the hardware configuration provided by Qualcomm and bring them up. To replace QPS615 with other PCIe based MAC/PHY, see [PCIe software support for QPS615 switch](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-8/pcie.html#sub$pcie-software-support-feature-for-qps615). Note You must obtain the MAC/PHY driver and firmware from the respective vendor. Qualcomm isn’t responsible for these configuration changes. ### Retain QPS615 PCIe and replace QEP8121/AQR113C To retain QPS615 PCIe and replace QEP8121/AQR113C with other PHY components, do the following: 1. Based on the attached PHY recommendations, update all the parameters in the `arch/arm64/boot/dts/qcom/qcs6490-addons-rb3gen2.dtsi` file. 2. Compile the software. Sample code for QEP PHY: qep_vreg: qep_vreg { compatible = "regulator-fixed"; regulator-name = "qep_vreg"; gpio = <&pm7325_gpios 8 0>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; enable-active-high; }; qps615_eth1,qps615_eth1@pcie1_rp { reg = <0x100 0x0 0x0 0x0 0x0>; pinctrl-names = "default"; pinctrl-0 = <&napa_intn_wol_sig>; qcom,phy-rst-gpio = <1>; interrupts-extended = <&tlmm 101 IRQ_TYPE_EDGE_FALLING>; interrupt-names = "wol_irq"; phy-supply = <&qep_vreg>; qcom,phy-rst-delay-us = <20000>; #address-cells = <1>; #size-cells = <1>; }; Copy to clipboard After flashing the modified software, the QPS615 driver scans the physical devices connected to it and matches the device tree information in the `qcs6490-addons-rb3gen2.dtsi` file. Note A PHY may fail to load due to mismatch between the configuration in the `.dtsi` file and actual recommendations for the PHY. In such cases, you must update the configuration in the `.dtsi` file accordingly. ## AQR PHY enablement Though AQR PHY for 10 GbE is optional, it’s validated on reference RB3 Gen 2 Development Kit. You must flash the PHY firmware to the hardware only once. However, when the AQR PHY is detected, the PHY driver is enabled by default. Qualcomm verified the following AQR PHY firmware on RB3 Gen 2 Development Kit: - Marvell firmware: `AQR-G4_v5.6.1-QR_Marvell_NoSwap_XFI_ID44874_VER1836.cld` - Marvell proprietary flashburn tool is recommended for flashing Marvell AQR113 PHY. - Contact Marvell Technology, Inc. to obtain the AQR PHY firmware. ### Detect the PHY To detect the PHY, do the following: 1. Update the AQR PHY parameters in the `arch/arm64/boot/dts/qcom/qcs6490-addons-rb3gen2.dtsi` file. 2. Compile the software. Sample code for AQR PHY: aqr_vreg: aqr_vreg { compatible = "regulator-fixed"; regulator-name = "aqr_vreg"; gpio = <&pm7250b_gpios 4 0>; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; enable-active-high; }; qps615_eth0,qps615_eth0@pcie1_rp { reg = <0x0 0x0 0x0 0x0 0x0>; pinctrl-names = "default"; pinctrl-0 = <&aqr_intn_wol_sig>; qcom,phy-rst-gpio = <0>; interrupts-extended = <&tlmm 141 IRQ_TYPE_EDGE_FALLING>; interrupt-names = "wol_irq"; phy-supply = <&aqr_vreg>; qcom,phy-rst-delay-us = <221000>; #address-cells = <1>; #size-cells = <1>; }; Copy to clipboard - *class* tabincludedirective - Note Flash the corresponding [CDT](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-250403001134/ReleaseNote.html#release-specific-information) on the device to ensure that the correct configuration is used for Ethernet bringup. To bring up Ethernet functionality on IQ-9075 EVK, do the following: > > > 1. The IQ-9075 EVK comes with a MAC address. Skip this step if you choose to use the same MAC address. > > > > > > > > > Alternatively, you can change the MAC address on the device. > > > > > > ifconfig hw ether > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 hw ether XX:XX:XX:YY:YY:YY > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet **HWaddr XX:XX:XX:YY:YY:YY** > > inet6 addr: fe80::34c9:27f8:b0b0:b036/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:34 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:453 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:10176 (9.9 KiB) TX bytes:74668 (72.9 KiB) > > Interrupt:36 > > Copy to clipboard > > > > > > 2. When the device is connected to a public network, the DHCP server connected to the network assigns the IP address automatically. Skip this step if you choose to use the IP address assigned by the network. > > > > > > > > > Alternatively, you can assign a static IP address. > > > > > > ifconfig > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 192.168.1.1 > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > inet6 addr: fe80::34c9:27f8:b0b0:b036/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:34 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:453 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:10176 (9.9 KiB) TX bytes:74668 (72.9 KiB) > > Interrupt:36 > > Copy to clipboard > > > > > > 3. Configure the MTU size for the data packets over the Ethernet interface. > > > > > > > > > ifconfig down > > > > ifconfig mtu > > > > ifconfig up > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 down > > > > ifconfig eth0 mtu 1500 > > > > ifconfig eth0 up > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > inet6 addr: fe80::34c9:27f8:b0b0:b036/64 Scope:Link > > UP BROADCAST RUNNING MULTICAST **MTU:1500** Metric:1 > > RX packets:34 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:453 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:10176 (9.9 KiB) TX bytes:74668 (72.9 KiB) > > Interrupt:36 > > Copy to clipboard - *class* tabincludedirective - Note Flash the corresponding [CDT](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-250403001134/ReleaseNote.html#release-specific-information) on the device to ensure that the correct configuration is used for Ethernet bringup. To bring up Ethernet functionality on IQ-8 Beta EVK, do the following: > > > 1. The IQ-8 Beta EVK comes with a MAC address. Skip this step if you choose to use the same MAC address. > > > > > > > > > Alternatively, you can modify the MAC address on the device. > > > > > > ifconfig hw ether > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 hw ether XX:XX:XX:YY:YY:YY > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet **HWaddr XX:XX:XX:YY:YY:YY** > > inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:57 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:192 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:11403 (11.1 KiB) TX bytes:31620 (30.8 KiB) > > Interrupt:61 > > Copy to clipboard > > > > > > 2. When the device is connected to a public network, the DHCP server connected to the network assigns the IP address automatically. Skip this step if you choose to use the IP address assigned by the network. > > > > > > > > > Alternatively, you can assign a static IP address. > > > > > > ifconfig > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 192.168.1.1 > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > **inet addr:192.168.1.1** Bcast:192.168.1.255 Mask:255.255.255.0 > > UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 > > RX packets:57 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:192 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:11403 (11.1 KiB) TX bytes:31620 (30.8 KiB) > > Interrupt:61 > > Copy to clipboard > > > > > > 3. Configure the MTU size for the data packets over the Ethernet interface. > > > > > > > > > ifconfig down > > > > ifconfig mtu > > > > ifconfig up > > Copy to clipboard > > > > > > For example: > > > > > > ifconfig eth0 down > > > > ifconfig eth0 mtu 1500 > > > > ifconfig eth0 up > > Copy to clipboard > > > > > > Sample output: > > > > > > eth0 Link encap:Ethernet HWaddr XX:XX:XX:YY:YY:YY > > inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 > > UP BROADCAST RUNNING MULTICAST **MTU:1500** Metric:1 > > RX packets:57 errors:0 dropped:0 overruns:0 frame:0 > > TX packets:192 errors:0 dropped:0 overruns:0 carrier:0 > > collisions:0 txqueuelen:1000 > > RX bytes:11403 (11.1 KiB) TX bytes:31620 (30.8 KiB) > > Interrupt:61 > > Copy to clipboard Last Published: Apr 10, 2025 [Previous Topic Tools for Ethernet operations](https://docs.qualcomm.com/bundle/publicresource/80-70018-26/topics/tools-for-ethernet-operations.md) [Next Topic Configure Ethernet features](https://docs.qualcomm.com/bundle/publicresource/80-70018-26/topics/configure-ethernet-features.md)