diff --git a/device/arista/x86_64-arista_7060dx4_32 b/device/arista/x86_64-arista_7060dx4_32 new file mode 120000 index 0000000000..ac560a1139 --- /dev/null +++ b/device/arista/x86_64-arista_7060dx4_32 @@ -0,0 +1 @@ +x86_64-arista_7060px4_32/ \ No newline at end of file diff --git a/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/port_config.ini b/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/port_config.ini new file mode 100644 index 0000000000..45ef9b7754 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/port_config.ini @@ -0,0 +1,35 @@ +# name lanes alias index speed +Ethernet0 1,2,3,4,5,6,7,8 Ethernet1/1 1 400000 +Ethernet8 9,10,11,12,13,14,15,16 Ethernet2/1 2 400000 +Ethernet16 17,18,19,20,21,22,23,24 Ethernet3/1 3 400000 +Ethernet24 25,26,27,28,29,30,31,32 Ethernet4/1 4 400000 +Ethernet32 33,34,35,36,37,38,39,40 Ethernet5/1 5 400000 +Ethernet40 41,42,43,44,45,46,47,48 Ethernet6/1 6 400000 +Ethernet48 49,50,51,52,53,54,55,56 Ethernet7/1 7 400000 +Ethernet56 57,58,59,60,61,62,63,64 Ethernet8/1 8 400000 +Ethernet64 65,66,67,68,69,70,71,72 Ethernet9/1 9 400000 +Ethernet72 73,74,75,76,77,78,79,80 Ethernet10/1 10 400000 +Ethernet80 81,82,83,84,85,86,87,88 Ethernet11/1 11 400000 +Ethernet88 89,90,91,92,93,94,95,96 Ethernet12/1 12 400000 +Ethernet96 97,98,99,100,101,102,103,104 Ethernet13/1 13 400000 +Ethernet104 105,106,107,108,109,110,111,112 Ethernet14/1 14 400000 +Ethernet112 113,114,115,116,117,118,119,120 Ethernet15/1 15 400000 +Ethernet120 121,122,123,124,125,126,127,128 Ethernet16/1 16 400000 +Ethernet128 129,130,131,132,133,134,135,136 Ethernet17/1 17 400000 +Ethernet136 137,138,139,140,141,142,143,144 Ethernet18/1 18 400000 +Ethernet144 145,146,147,148,149,150,151,152 Ethernet19/1 19 400000 +Ethernet152 153,154,155,156,157,158,159,160 Ethernet20/1 20 400000 +Ethernet160 161,162,163,164,165,166,167,168 Ethernet21/1 21 400000 +Ethernet168 169,170,171,172,173,174,175,176 Ethernet22/1 22 400000 +Ethernet176 177,178,179,180,181,182,183,184 Ethernet23/1 23 400000 +Ethernet184 185,186,187,188,189,190,191,192 Ethernet24/1 24 400000 +Ethernet192 193,194,195,196,197,198,199,200 Ethernet25/1 25 400000 +Ethernet200 201,202,203,204,205,206,207,208 Ethernet26/1 26 400000 +Ethernet208 209,210,211,212,213,214,215,216 Ethernet27/1 27 400000 +Ethernet216 217,218,219,220,221,222,223,224 Ethernet28/1 28 400000 +Ethernet224 225,226,227,228,229,230,231,232 Ethernet29/1 29 400000 +Ethernet232 233,234,235,236,237,238,239,240 Ethernet30/1 30 400000 +Ethernet240 241,242,243,244,245,246,247,248 Ethernet31/1 31 400000 +Ethernet248 249,250,251,252,253,254,255,256 Ethernet32/1 32 400000 +Ethernet256 258 Ethernet33 33 10000 +Ethernet260 257 Ethernet34 34 10000 diff --git a/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/sai.profile b/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/sai.profile new file mode 100644 index 0000000000..2163c4be90 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/Arista-7060PX4-O32/sai.profile @@ -0,0 +1 @@ +SAI_INIT_CONFIG_FILE=/usr/share/sonic/hwsku/th3-a7060px4-o32-32x400G.config.bcm diff --git a/device/arista/x86_64-arista_7060px4_32/default_sku b/device/arista/x86_64-arista_7060px4_32/default_sku new file mode 100644 index 0000000000..810b6667a1 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/default_sku @@ -0,0 +1 @@ +Arista-7060PX4-O32 t1 diff --git a/device/arista/x86_64-arista_7060px4_32/fancontrol b/device/arista/x86_64-arista_7060px4_32/fancontrol new file mode 100644 index 0000000000..e0834b0728 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/fancontrol @@ -0,0 +1,10 @@ +INTERVAL=5 +DEVPATH=hwmon3=devices/pci0000:ff/0000:ff:0b.3/i2c-73/73-004c hwmon4=devices/pci0000:ff/0000:ff:0b.3/i2c-85/85-0060 +DEVNAME=hwmon3=max6658 hwmon4=tehama_cpld +FCTEMPS=hwmon4/pwm5=hwmon3/temp1_input hwmon4/pwm4=hwmon3/temp1_input hwmon4/pwm3=hwmon3/temp1_input hwmon4/pwm2=hwmon3/temp1_input hwmon4/pwm1=hwmon3/temp1_input +FCFANS=hwmon4/pwm5=hwmon4/fan5_input hwmon4/pwm4=hwmon4/fan4_input hwmon4/pwm3=hwmon4/fan3_input hwmon4/pwm2=hwmon4/fan2_input hwmon4/pwm1=hwmon4/fan1_input +MINTEMP=hwmon4/pwm5=50 hwmon4/pwm4=50 hwmon4/pwm3=50 hwmon4/pwm2=50 hwmon4/pwm1=50 +MINPWM=hwmon4/pwm5=128 hwmon4/pwm4=128 hwmon4/pwm3=128 hwmon4/pwm2=128 hwmon4/pwm1=128 +MAXTEMP=hwmon4/pwm5=60 hwmon4/pwm4=60 hwmon4/pwm3=60 hwmon4/pwm2=60 hwmon4/pwm1=60 +MINSTART=hwmon4/pwm5=128 hwmon4/pwm4=128 hwmon4/pwm3=128 hwmon4/pwm2=128 hwmon4/pwm1=128 +MINSTOP=hwmon4/pwm5=128 hwmon4/pwm4=128 hwmon4/pwm3=128 hwmon4/pwm2=128 hwmon4/pwm1=128 diff --git a/device/arista/x86_64-arista_7060px4_32/platform_reboot b/device/arista/x86_64-arista_7060px4_32/platform_reboot new file mode 100755 index 0000000000..9010dcb280 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/platform_reboot @@ -0,0 +1,11 @@ +#!/usr/bin/env python + +from arista import platforms +from arista.utils.sonic_reboot import reboot + +def main(): + # reboot the system + reboot() + +if __name__ == "__main__": + main() diff --git a/device/arista/x86_64-arista_7060px4_32/plugins/eeprom.py b/device/arista/x86_64-arista_7060px4_32/plugins/eeprom.py new file mode 100644 index 0000000000..02c7bc84bc --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/plugins/eeprom.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python + +try: + import arista.utils.sonic_eeprom as arista_eeprom +except ImportError as e: + raise ImportError("%s - required module not found" % e) + +board = arista_eeprom.getTlvInfoDecoder() diff --git a/device/arista/x86_64-arista_7060px4_32/plugins/led_control.py b/device/arista/x86_64-arista_7060px4_32/plugins/led_control.py new file mode 100644 index 0000000000..e1fb4f2618 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/plugins/led_control.py @@ -0,0 +1,6 @@ +try: + import arista.utils.sonic_leds as arista_leds +except ImportError as e: + raise ImportError("%s - required module not found" % e) + +LedControl = arista_leds.getLedControl() diff --git a/device/arista/x86_64-arista_7060px4_32/plugins/psuutil.py b/device/arista/x86_64-arista_7060px4_32/plugins/psuutil.py new file mode 100644 index 0000000000..075f0e049a --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/plugins/psuutil.py @@ -0,0 +1,11 @@ +# psuutil.py +# +# Platform-specific PSU interface for SONiC +# + +try: + import arista.utils.sonic_psu as arista_psuutil +except ImportError as e: + raise ImportError("%s - required module not found" % e) + +PsuUtil = arista_psuutil.getPsuUtil() diff --git a/device/arista/x86_64-arista_7060px4_32/plugins/sfputil.py b/device/arista/x86_64-arista_7060px4_32/plugins/sfputil.py new file mode 100644 index 0000000000..de4de867f0 --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/plugins/sfputil.py @@ -0,0 +1,11 @@ +# sfputil.py +# +# Platform-specific SFP transceiver interface for SONiC +# + +try: + import arista.utils.sonic_sfputil as arista_sfputil +except ImportError as e: + raise ImportError("%s - required module not found" % e) + +SfpUtil = arista_sfputil.getSfpUtil() diff --git a/device/arista/x86_64-arista_7060px4_32/sensors.conf b/device/arista/x86_64-arista_7060px4_32/sensors.conf new file mode 100644 index 0000000000..2168c765fb --- /dev/null +++ b/device/arista/x86_64-arista_7060px4_32/sensors.conf @@ -0,0 +1,34 @@ +# libsensors configuration file for DCS-7060X3-32 +# ------------------------------------------------# + +bus "i2c-9" "SCD 0000:07:00.0 SMBus master 1 bus 0" +bus "i2c-12" "SCD 0000:07:00.0 SMBus master 1 bus 3" +bus "i2c-13" "SCD 0000:07:00.0 SMBus master 1 bus 4" +bus "i2c-73" "SCD 0000:ff:0b.3 SMBus master 0 bus 0" +bus "i2c-85" "SCD 0000:ff:0b.3 SMBus master 3 bus 0" + +chip "max6581-i2c-9-4d" + ignore temp1 + label temp2 "TH3 exhaust temp sensor" + label temp3 "Left edge PCB rear temp sensor" + label temp4 "Inlet temp sensor" + ignore temp5 + ignore temp6 + label temp7 "Diode temp sensor 1" + label temp8 "Diode temp sensor 2" + +chip "pmbus-i2c-12-58" + label temp1 "Power supply 1 hotspot sensor" + label temp2 "Power supply 1 inlet temp sensor" + label temp3 "Power supply 1 exhaust temp sensor" + +chip "pmbus-i2c-13-58" + label temp1 "Power supply 2 hotspot sensor" + label temp2 "Power supply 2 inlet temp sensor" + label temp3 "Power supply 2 exhaust temp sensor" + +chip "max6658-i2c-73-4c" + label temp1 "Back panel temp sensor 1" + label temp2 "Back panel temp sensor 2" + +chip "tehama_cpld-i2c-85-60" diff --git a/device/arista/x86_64-arista_7170_64c/fancontrol b/device/arista/x86_64-arista_7170_64c/fancontrol index 90a078b7c4..7236dbf4d1 100644 --- a/device/arista/x86_64-arista_7170_64c/fancontrol +++ b/device/arista/x86_64-arista_7170_64c/fancontrol @@ -1,6 +1,6 @@ INTERVAL=5 DEVPATH=hwmon2=devices/pci0000:00/0000:00:1c.0/0000:06:00.0/i2c-8/8-004c hwmon4=devices/pci0000:ff/0000:ff:0b.3/i2c-93/93-0060 -DEVNAME=hwmon2=max6658 hwmon4=rook_cpld +DEVNAME=hwmon2=max6658 hwmon4=la_cpld FCTEMPS=hwmon4/pwm4=hwmon2/temp1_input hwmon4/pwm3=hwmon2/temp1_input hwmon4/pwm2=hwmon2/temp1_input hwmon4/pwm1=hwmon2/temp1_input FCFANS=hwmon4/pwm4=hwmon4/fan4_input hwmon4/pwm3=hwmon4/fan3_input hwmon4/pwm2=hwmon4/fan2_input hwmon4/pwm1=hwmon4/fan1_input MINTEMP=hwmon4/pwm4=50 hwmon4/pwm3=50 hwmon4/pwm2=50 hwmon4/pwm1=50 diff --git a/device/arista/x86_64-arista_7170_64c/platform_reboot b/device/arista/x86_64-arista_7170_64c/platform_reboot new file mode 100755 index 0000000000..b8b1a5d7bf --- /dev/null +++ b/device/arista/x86_64-arista_7170_64c/platform_reboot @@ -0,0 +1,11 @@ +#!/usr/bin/env python + +import arista.platforms +from arista.utils.sonic_reboot import reboot + +def main(): + # reboot the system + reboot() + +if __name__ == "__main__": + main() diff --git a/device/arista/x86_64-arista_7260cx3_64/fancontrol b/device/arista/x86_64-arista_7260cx3_64/fancontrol index 2397d6d700..eb64fb3e67 100644 --- a/device/arista/x86_64-arista_7260cx3_64/fancontrol +++ b/device/arista/x86_64-arista_7260cx3_64/fancontrol @@ -1,6 +1,6 @@ INTERVAL=5 DEVPATH=hwmon2=devices/pci0000:00/0000:00:1c.0/0000:06:00.0/i2c-1/1-004c hwmon4=devices/pci0000:ff/0000:ff:0b.3/i2c-85/85-0060 -DEVNAME=hwmon2=max6658 hwmon4=rook_cpld +DEVNAME=hwmon2=max6658 hwmon4=la_cpld FCTEMPS=hwmon4/pwm4=hwmon2/temp1_input hwmon4/pwm3=hwmon2/temp1_input hwmon4/pwm2=hwmon2/temp1_input hwmon4/pwm1=hwmon2/temp1_input FCFANS=hwmon4/pwm4=hwmon4/fan4_input hwmon4/pwm3=hwmon4/fan3_input hwmon4/pwm2=hwmon4/fan2_input hwmon4/pwm1=hwmon4/fan1_input MINTEMP=hwmon4/pwm4=50 hwmon4/pwm3=50 hwmon4/pwm2=50 hwmon4/pwm1=50 diff --git a/files/Aboot/boot0.j2 b/files/Aboot/boot0.j2 index f1d017a82f..f64a2286bc 100644 --- a/files/Aboot/boot0.j2 +++ b/files/Aboot/boot0.j2 @@ -219,6 +219,14 @@ platform_specific() { flash_size=28000 echo "hugepages=128" >> /tmp/append fi + if [ "$sid" = "BlackhawkO" ]; then + aboot_machine=arista_7060px4_32 + flash_size=28000 + fi + if [ "$sid" = "BlackhawkDD" ]; then + aboot_machine=arista_7060dx4_32 + flash_size=28000 + fi if [ "$platform" = "rook" ]; then echo "iommu=on intel_iommu=on tsc=reliable pcie_ports=native" >>/tmp/append echo "rhash_entries=1 usb-storage.delay_use=0" >>/tmp/append diff --git a/platform/barefoot/sonic-platform-modules-arista b/platform/barefoot/sonic-platform-modules-arista index d3ea6f30c1..7e2d714ae7 160000 --- a/platform/barefoot/sonic-platform-modules-arista +++ b/platform/barefoot/sonic-platform-modules-arista @@ -1 +1 @@ -Subproject commit d3ea6f30c11eab2dbbbb477099d9f54dd2a98883 +Subproject commit 7e2d714ae7c072ee587d1cf0356cf548ac4be4a9 diff --git a/platform/broadcom/sonic-platform-modules-arista b/platform/broadcom/sonic-platform-modules-arista index 6c20cf6243..7e2d714ae7 160000 --- a/platform/broadcom/sonic-platform-modules-arista +++ b/platform/broadcom/sonic-platform-modules-arista @@ -1 +1 @@ -Subproject commit 6c20cf62432bedbbf4dbe5452c85cde48aa78294 +Subproject commit 7e2d714ae7c072ee587d1cf0356cf548ac4be4a9