| Both sides previous revision Previous revision Next revision | Previous revision |
| toh:mellanox:spectrum [2024/10/29 20:43] – Create device page tk154 | toh:mellanox:spectrum [2024/10/30 14:37] (current) – Adjust installation steps tk154 |
|---|
| ^ Mellanox Spectrum SN2700 ^ | ^ Mellanox Spectrum SN2700 ^ |
| | {{media:mellanox:sn2700.png?400|Mellanox Spectrum SN2700}} | | | {{media:mellanox:sn2700.png?400|Mellanox Spectrum SN2700}} | |
| | |
| | ^ Mellanox Spectrum SN3700 ^ |
| | | {{media:mellanox:sn3700.png?400|Mellanox Spectrum SN3700}} | |
| |
| \\ | \\ |
| "rotate": true, | "rotate": true, |
| "shownColumns": ["brand", "model", "supportedcurrentrel", "oemdevicehomepageurl", "forumsearch", "deviceid"], | "shownColumns": ["brand", "model", "supportedcurrentrel", "oemdevicehomepageurl", "forumsearch", "deviceid"], |
| "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN2.*$"} | "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN.*$"} |
| } --> | } --> |
| |
| "rotate": true, | "rotate": true, |
| "shownColumns": ["model", "cpu", "cpumhz", "cpucores", "rammb", "flashmb", "ethernet1gports", "commentsnetworkports", "usbports", "commentsusbsataports"], | "shownColumns": ["model", "cpu", "cpumhz", "cpucores", "rammb", "flashmb", "ethernet1gports", "commentsnetworkports", "usbports", "commentsusbsataports"], |
| "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN2.*$"} | "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN.*$"} |
| } --> | } --> |
| |
| "paging": false, | "paging": false, |
| "shownColumns": ["model", "supportedcurrentrel", "firmwareopenwrtsnapshotinstallurl", "firmwareopenwrtsnapshotupgradeurl"], | "shownColumns": ["model", "supportedcurrentrel", "firmwareopenwrtsnapshotinstallurl", "firmwareopenwrtsnapshotupgradeurl"], |
| "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN2.*$"} | "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN.*$"} |
| } --> | } --> |
| |
| Unfortunately, there is currently no pre-built OpenWrt image for this target in the Firmware Selector. There are two options to obtain an image and set up a working OpenWrt system on this device: | Unfortunately, there is currently no pre-built OpenWrt image for this target in the Firmware Selector. There are two options to obtain an image and set up a working OpenWrt system on this device: |
| * You can build your image manually following the instructions described [[:toh:mellanox:spectrum_sn2000_series#image_configuration|here]]. | * You can build your image manually following the instructions described [[:toh:mellanox:spectrum#image_configuration|here]]. |
| * You can also obtain a generic x86_64 snapshot image from the Firmware Selector [[https://downloads.openwrt.org/snapshots/targets/x86/64/openwrt-x86-64-generic-ext4-combined-efi.img.gz|here]]. After you have installed the image on the device and after every ''sysupgrade'', you need to install the required packages as described [[:toh:mellanox:spectrum_sn2000_series#install_required_packages|here]]. | * You can also obtain a generic x86_64 snapshot image from the Firmware Selector [[https://downloads.openwrt.org/snapshots/targets/x86/64/openwrt-x86-64-generic-ext4-combined-efi.img.gz|here]]. After you have installed the image on the device and after every ''sysupgrade'', you need to install the required packages as described [[:toh:mellanox:spectrum#install_required_packages|here]]. |
| \\ | \\ |
| Flashing the image is done as you do it with any other x86 target: https://openwrt.org/docs/guide-user/installation/openwrt_x86#installation.\\ | Flashing the image is done as you do it with any other x86 target: https://openwrt.org/docs/guide-user/installation/openwrt_x86#installation.\\ |
| The instructions on this page will show you how to install OpenWrt on the switch by flashing it from a USB device. You have to connect the host PC to the serial port of the network switch to navigate through the BIOS and the installation steps. The parameters of the serial connection can be found [[:toh:mellanox:spectrum_sn2000_series#serial|here]]. | The instructions on this page will show you how to install OpenWrt on the switch by flashing it from a USB device. You have to connect the host PC to the serial port of the network switch to navigate through the BIOS and the installation steps. The parameters of the serial connection can be found [[:toh:mellanox:spectrum#serial|here]]. |
| |
| <WRAP center round info 60%> | <WRAP center round info 60%> |
| |
| <WRAP center round info 60%> | <WRAP center round info 60%> |
| The USB device will serve as a kind of Live USB. If you already have a Live USB from another Linux distribution, you can also use that and skip to the [[:toh:mellanox:spectrum_sn2000_series#copying_and_flashing_the_image|next step]]. | The USB device will serve as a kind of Live USB. If you already have a Live USB from another Linux distribution, you can also use that and skip to the [[:toh:mellanox:spectrum#copying_and_flashing_the_image|next step]]. |
| </WRAP> | </WRAP> |
| \\ | \\ |
| As mentioned, the root partition size might be only 104 MiB if you used a default x86_64 image (configuration). To increase it and the filesystem, please follow the steps of the following link: https://openwrt.org/docs/guide-user/installation/openwrt_x86#expanding_root_partition_and_filesystem. | As mentioned, the root partition size might be only 104 MiB if you used a default x86_64 image (configuration). To increase it and the filesystem, please follow the steps of the following link: https://openwrt.org/docs/guide-user/installation/openwrt_x86#expanding_root_partition_and_filesystem. |
| |
| If you haven't used a manually built image for the installation, you must proceed with the following [[:toh:mellanox:spectrum_sn2000_series#install_required_packages|section]] to install all required packages. | If you haven't used a manually built image for the installation, you must proceed with the following [[:toh:mellanox:spectrum#install_required_packages|section]] to install all required packages. |
| |
| \\ | \\ |
| <code>opkg update</code> | <code>opkg update</code> |
| \\ | \\ |
| After that, you can install the packages required for the QSFP ports, LEDs, and hardware watchdog to work: | After that, you can install the packages required for the QSFP ports, LEDs, and hardware watchdog to work.\\ |
| <code>opkg install mlxsw_spectrum-firmware kmod-mlxfw kmod-mlxsw-core kmod-mlxsw-i2c kmod-mlxsw-minimal kmod-mlxsw-pci kmod-mlxsw-spectrum kmod-mlx_wdt kmod-leds-mlxcpld</code> | Depending on the Switch's Spectrum Series, you need the following firmware package: |
| | * Spectrum (SN2000) Series: ''mlxsw_spectrum-firmware'' |
| | * Spectrum-2 (SN3000) Series: ''mlxsw_spectrum2-firmware'' |
| | * Spectrum-3 (SN4000) Series: ''mlxsw_spectrum3-firmware'' |
| | * Spectrum-4 (SN5000) Series: ''mlxsw_spectrum4-firmware'' |
| | |
| | So for a Mellanox Spectrum SN2100, you would install its firmware package via the following command: |
| | <code>opkg install mlxsw_spectrum-firmware</code> |
| | \\ |
| | Then you can install the drivers: |
| | <code>opkg install kmod-mlxsw-spectrum kmod-mlx_wdt kmod-leds-mlxcpld</code> |
| \\ | \\ |
| If you also want to monitor the temperature of the CPU, RAM, and SSD drive, install the following additional packages: | If you also want to monitor the temperature of the CPU, RAM, and SSD drive, install the following additional packages: |
| \\ | \\ |
| For the QSFP ports, LEDs, and hardware watchdog to work, you have to select the following packages: | For the QSFP ports, LEDs, and hardware watchdog to work, you have to select the following packages: |
| * **Firmware**: ''mlxsw_spectrum-firmware'' | * **Firmware**: |
| * **Kernel modules -> Network Devices**: ''kmod-mlxfw'', ''kmod-mlxsw-core'', ''kmod-mlxsw-i2c'', ''kmod-mlxsw-minimal'', ''kmod-mlxsw-pci'', ''kmod-mlxsw-spectrum'' | * ''mlxsw_spectrum-firmware'' for a Spectrum (SN2000 Series) Switch |
| | * ''mlxsw_spectrum2-firmware'' for a Spectrum-2 (SN3000 Series) Switch |
| | * ''mlxsw_spectrum3-firmware'' for a Spectrum-3 (SN4000 Series) Switch |
| | * ''mlxsw_spectrum4-firmware'' for a Spectrum-4 (SN5000 Series) Switch |
| | |
| | * **Kernel modules -> Network Devices**: ''kmod-mlxsw-spectrum'' |
| * **Kernel modules -> LED modules**: ''kmod-leds-mlxcpld'' | * **Kernel modules -> LED modules**: ''kmod-leds-mlxcpld'' |
| * **Kernel modules -> Other modules**: ''kmod-mlx_wdt'' | * **Kernel modules -> Other modules**: ''kmod-mlx_wdt'' |
| * **Kernel modules -> Other modules**: ''kmod-mlxreg-sn2201'' (SN2201), ''kmod-mlxreg-lc'' (SN4800) | * **Kernel modules -> Other modules**: ''kmod-mlxreg-sn2201'' (SN2201), ''kmod-mlxreg-lc'' (SN4800) |
| \\ | \\ |
| It isn't mandatory, but you should also unselect ''Use Console Terminal (in addition to Serial)'' under the **Target Images** section to avoid possible problems while using the serial console.\\ | It isn't mandatory, but you should also unselect ''Use Console Terminal (in addition to Serial)'' under the **Target Images** section to avoid possible problems while using the serial console. |
| | \\ |
| You can also append the following configuration symbols to the **''.config''** file after you have selected the generic ''x86_64'' target inside make **''make menuconfig''**: | You can also append the following configuration symbols to the **''.config''** file after you have selected the generic ''x86_64'' target inside make **''make menuconfig''**: |
| <code> | <code> |
| | # Spectrum (SN2000) Series Firmware |
| CONFIG_PACKAGE_mlxsw_spectrum-firmware=y | CONFIG_PACKAGE_mlxsw_spectrum-firmware=y |
| |
| CONFIG_PACKAGE_kmod-mlxfw=y | # Spectrum-2 (SN3000) Series Firmware |
| CONFIG_PACKAGE_kmod-mlxsw-core=y | CONFIG_PACKAGE_mlxsw_spectrum2-firmware=y |
| CONFIG_PACKAGE_kmod-mlxsw-i2c=y | |
| CONFIG_PACKAGE_kmod-mlxsw-minimal=y | |
| CONFIG_PACKAGE_kmod-mlxsw-pci=y | |
| CONFIG_PACKAGE_kmod-mlxsw-spectrum=y | |
| |
| | # Spectrum-3 (SN4000) Series Firmware |
| | CONFIG_PACKAGE_mlxsw_spectrum3-firmware=y |
| | |
| | # Spectrum-4 (SN5000) Series Firmware |
| | CONFIG_PACKAGE_mlxsw_spectrum4-firmware=y |
| | |
| | # Drivers |
| | CONFIG_PACKAGE_kmod-mlxsw-spectrum=y |
| CONFIG_PACKAGE_kmod-leds-mlxcpld=y | CONFIG_PACKAGE_kmod-leds-mlxcpld=y |
| CONFIG_PACKAGE_kmod-mlx_wdt=y | CONFIG_PACKAGE_kmod-mlx_wdt=y |
| CONFIG_PACKAGE_kmod-mlxreg=y | CONFIG_PACKAGE_kmod-mlxreg=y |
| |
| # For SN2201 | # For SN2201 Hardware Monitoring |
| CONFIG_PACKAGE_kmod-mlxreg-sn2201=y | CONFIG_PACKAGE_kmod-mlxreg-sn2201=y |
| |
| # For SN4800 | # For SN4800 Hardware Monitoring |
| CONFIG_PACKAGE_kmod-mlxreg-lc=y | CONFIG_PACKAGE_kmod-mlxreg-lc=y |
| |
| |
| If you want to use the generic ''x86_64'' snapshot image from the Firmware Selector, log in via SSH and enter the following commands.\\ | If you want to use the generic ''x86_64'' snapshot image from the Firmware Selector, log in via SSH and enter the following commands.\\ |
| :!: But remember that the QSFP ports won't work anymore after the switch has rebooted, so you must repeat the steps described [[:toh:mellanox:spectrum_sn2000_series#install_required_packages|here]] after the ''sysupgrade'' has finished. | :!: But remember that the QSFP ports won't work anymore after the switch has rebooted, so you must repeat the steps described [[:toh:mellanox:spectrum#install_required_packages|here]] after the ''sysupgrade'' has finished. |
| <code> | <code> |
| cd /tmp | cd /tmp |
| |
| ==== Buttons ==== | ==== Buttons ==== |
| The Mellanox Spectrum SN2000 Series has the following buttons: | The Mellanox Spectrum Switches have the following buttons: |
| |
| ^ BUTTON ^ Event ^ | ^ BUTTON ^ Event ^ |
| "rotate": true, | "rotate": true, |
| "shownColumns": ["brand", "model", "version", "devicetype", "availability", "supportedsincecommit", "supportedsincerel", "supportedcurrentrel", "unsupported_functions", "bootloader", "cpu", "target", "cpumhz", "flashmb", "rammb", "switch", "ethernet100mports", "ethernet1gports", "commentsnetworkports", "modem", "vlan", "wlan24ghz", "wlan50ghz", "wlanhardware", "wlancomments", "detachableantennas", "usbports", "sataports", "commentsusbsataports", "serial", "jtag", "ledcount", "buttoncount", "powersupply", "deviceid", "owrt_forum_topic_url", "wikideviurl", "oemdevicehomepageurl", "firmwareoemstockurl", "firmwareopenwrtinstallurl", "firmwareopenwrtupgradeurl", "comments"], | "shownColumns": ["brand", "model", "version", "devicetype", "availability", "supportedsincecommit", "supportedsincerel", "supportedcurrentrel", "unsupported_functions", "bootloader", "cpu", "target", "cpumhz", "flashmb", "rammb", "switch", "ethernet100mports", "ethernet1gports", "commentsnetworkports", "modem", "vlan", "wlan24ghz", "wlan50ghz", "wlanhardware", "wlancomments", "detachableantennas", "usbports", "sataports", "commentsusbsataports", "serial", "jtag", "ledcount", "buttoncount", "powersupply", "deviceid", "owrt_forum_topic_url", "wikideviurl", "oemdevicehomepageurl", "firmwareoemstockurl", "firmwareopenwrtinstallurl", "firmwareopenwrtupgradeurl", "comments"], |
| "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN2.*$"} | "filterColumns": {"brand": "^Mellanox$", "model": "^Spectrum SN.*$"} |
| } --> | } --> |
| |
| **Insert photo of PCB with markings for serial port** | **Insert photo of PCB with markings for serial port** |
| |
| Serial connection parameters for Mellanox Spectrum SN2000 Series: | Serial connection parameters for Mellanox Spectrum Switches: |
| |
| ^ Parameter ^ Setting ^ | ^ Parameter ^ Setting ^ |