Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[device/Arista] Add support for the 7280CR3-32P4 #2910

Merged
merged 6 commits into from
May 18, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions device/arista/x86_64-arista_7280cr3_32d4
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# name lanes alias index speed
Ethernet0 1,2 Ethernet1/1 1 100000
Ethernet4 3,4 Ethernet2/1 2 100000
Ethernet8 5,6 Ethernet3/1 3 100000
Ethernet12 7,8 Ethernet4/1 4 100000
Ethernet16 9,10 Ethernet5/1 5 100000
Ethernet20 11,12 Ethernet6/1 6 100000
Ethernet24 13,14 Ethernet7/1 7 100000
Ethernet28 15,16 Ethernet8/1 8 100000
Ethernet32 17,18 Ethernet9/1 9 100000
Ethernet36 19,20 Ethernet10/1 10 100000
Ethernet40 21,22 Ethernet11/1 11 100000
Ethernet44 23,24 Ethernet12/1 12 100000
Ethernet48 25,26 Ethernet13/1 13 100000
Ethernet52 27,28 Ethernet14/1 14 100000
Ethernet56 29,30 Ethernet15/1 15 100000
Ethernet60 31,32 Ethernet16/1 16 100000
Ethernet64 73,74 Ethernet17/1 17 100000
Ethernet68 75,76 Ethernet18/1 18 100000
Ethernet72 77,78 Ethernet19/1 19 100000
Ethernet76 79,80 Ethernet20/1 20 100000
Ethernet80 65,66 Ethernet21/1 21 100000
Ethernet84 67,68 Ethernet22/1 22 100000
Ethernet88 69,70 Ethernet23/1 23 100000
Ethernet92 71,72 Ethernet24/1 24 100000
Ethernet96 57,58 Ethernet25/1 25 100000
Ethernet100 59,60 Ethernet26/1 26 100000
Ethernet104 61,62 Ethernet27/1 27 100000
Ethernet108 63,64 Ethernet28/1 28 100000
Ethernet112 49,50 Ethernet29/1 29 100000
Ethernet116 51,52 Ethernet30/1 30 100000
Ethernet120 53,54 Ethernet31/1 31 100000
Ethernet124 55,56 Ethernet32/1 32 100000
Ethernet128 33,34,35,36,37,38,39,40 Ethernet33/1 33 400000
Ethernet132 41,42,43,44,45,46,47,48 Ethernet34/1 34 400000
Ethernet136 89,90,91,92,93,94,95,96 Ethernet35/1 35 400000
Ethernet140 81,82,83,84,85,86,87,88 Ethernet36/1 36 400000
1 change: 1 addition & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/default_sku
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Arista-7280CR3-C32P4 t1
10 changes: 10 additions & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/fancontrol
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
INTERVAL=5
DEVPATH=hwmon2=devices/pci0000:00/0000:00:09.0 hwmon4=devices/pci0000:00/0000:00:09.0/i2c-56/56-004c
DEVNAME=hwmon2=scd_fan_p3 hwmon4=max6658
FCTEMPS=hwmon2/pwm6=hwmon4/temp1_input hwmon2/pwm5=hwmon4/temp1_input hwmon2/pwm4=hwmon4/temp1_input hwmon2/pwm4=hwmon4/temp1_input hwmon2/pwm2=hwmon4/temp1_input hwmon2/pwm1=hwmon4/temp1_input
FCFANS=hwmon2/pwm6=hwmon2/fan6_input hwmon2/pwm5=hwmon2/fan5_input hwmon2/pwm4=hwmon2/fan4_input hwmon2/pwm3=hwmon2/fan3_input hwmon2/pwm2=hwmon2/fan2_input hwmon2/pwm1=hwmon2/fan1_input
MINTEMP=hwmon2/pwm6=50 hwmon2/pwm5=50 hwmon2/pwm4=50 hwmon2/pwm3=50 hwmon2/pwm2=50 hwmon2/pwm1=50
MINPWM=hwmon2/pwm6=128 hwmon2/pwm5=128 hwmon2/pwm4=128 hwmon2/pwm3=128 hwmon2/pwm2=128 hwmon2/pwm1=128
MAXTEMP=hwmon2/pwm6=60 hwmon2/pwm5=60 hwmon2/pwm4=60 hwmon2/pwm3=60 hwmon2/pwm2=60 hwmon2/pwm1=60
MINSTART=hwmon2/pwm6=128 hwmon2/pwm5=128 hwmon2/pwm4=128 hwmon2/pwm3=128 hwmon2/pwm2=128 hwmon2/pwm1=128
MINSTOP=hwmon2/pwm6=128 hwmon2/pwm5=128 hwmon2/pwm4=128 hwmon2/pwm3=128 hwmon2/pwm2=128 hwmon2/pwm1=128
1 change: 1 addition & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/platform_reboot
8 changes: 8 additions & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/plugins/eeprom.py
Original file line number Diff line number Diff line change
@@ -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" % str(e))

board = arista_eeprom.getTlvInfoDecoder()
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/usr/bin/env python

try:
import arista.utils.sonic_leds as arista_leds
except ImportError as e:
raise ImportError("%s - required module not found" % str(e))

LedControl = arista_leds.getLedControl()
8 changes: 8 additions & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/plugins/psuutil.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# psuutil.py

try:
import arista.utils.sonic_psu as arista_psuutil
except ImportError as e:
raise ImportError("%s - required module not found" % str(e))

PsuUtil = arista_psuutil.getPsuUtil()
8 changes: 8 additions & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/plugins/sfputil.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/usr/bin/env python

try:
import arista.utils.sonic_sfputil as arista_sfputil
except ImportError as e:
raise ImportError("%s - required module not found" % str(e))

SfpUtil = arista_sfputil.getSfpUtil()
66 changes: 66 additions & 0 deletions device/arista/x86_64-arista_7280cr3_32p4/sensors.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# libsensors configuration file for DCS-7280CR3-32P4
# ------------------------------------------------#

bus "i2c-8" "SCD 0000:02:00.0 SMBus master 0 bus 0"
bus "i2c-14" "SCD 0000:02:00.0 SMBus master 0 bus 6"
bus "i2c-15" "SCD 0000:02:00.0 SMBus master 0 bus 7"
bus "i2c-56" "SCD 0000:00:09.0 SMBus master 0 bus 0"

chip "tmp468-i2c-8-48"
label temp1 "Board sensor"
label temp2 "Front air (inlet) sensor"
label temp3 "Rear air sensor"
label temp4 "Front left sensor"
label temp5 "Front right sensor"
label temp6 "Rear left sensor"
label temp7 "Rear right sensor"
label temp8 "Asic temp sensor 1"
label temp9 "Asic temp sensor 2"

set temp1_max 75
set temp1_crit 80
set temp2_max 65
set temp2_crit 75
set temp3_max 65
set temp3_crit 75
ignore temp4
ignore temp5
ignore temp6
ignore temp7
set temp8_max 100
set temp8_crit 110
set temp9_max 100
set temp9_crit 110

chip "pmbus-i2c-14-58"
label temp1 "Power supply 1 hotspot sensor"
label temp2 "Power supply 1 inlet temp sensor"
label temp3 "Power supply 1 exhaust temp sensor"

# setting maximum and critical thresholds is not supported for this psu
# fault and warning limits defined internally by hardware

ignore fan2
ignore fan3
ignore fan4

chip "pmbus-i2c-15-58"
label temp1 "Power supply 2 hotspot sensor"
label temp2 "Power supply 2 inlet temp sensor"
label temp3 "Power supply 2 exhaust temp sensor"

# setting maximum and critical thresholds is not supported for this psu
# fault and warning limits defined internally by hardware

ignore fan2
ignore fan3
ignore fan4

chip "max6658-i2c-56-4c"
label temp1 "Back panel temp sensor 1"
label temp2 "Back panel temp sensor 2"

set temp1_max 75
set temp1_crit 85
set temp2_max 75
set temp2_crit 85
15 changes: 13 additions & 2 deletions files/Aboot/boot0.j2
Original file line number Diff line number Diff line change
Expand Up @@ -255,8 +255,13 @@ platform_specific() {
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
if [ "$sid" = "Smartsville" ]; then
aboot_machine=arista_7280cr3_32p4
flash_size=7382
fi
if [ "$platform" = "rook" ] || [ "$platform" = "magpie" ] ||
[ "$platform" = "woodpecker" ]; then
echo "tsc=reliable pcie_ports=native" >>/tmp/append
echo "rhash_entries=1 usb-storage.delay_use=0" >>/tmp/append
if [ -x /bin/readprefdl ]; then
readprefdl -f /tmp/.system-prefdl -d > /mnt/flash/.system-prefdl
Expand All @@ -266,6 +271,12 @@ platform_specific() {
fi
echo "reassign_prefmem" >> /tmp/append
fi
if [ "$platform" = "rook" ] || [ "$platform" = "magpie" ]; then
echo "iommu=on intel_iommu=on" >>/tmp/append
fi
if [ "$platform" = "woodpecker" ]; then
echo "amd_iommu=off modprobe.blacklist=snd_hda_intel,hdaudio" >> /tmp/append
fi

if [ $flash_size -ge 28000 ]; then
varlog_size=4096
Expand Down