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

platform/broadcom: Add a new supported device and platform, AS7712-32X #662

Merged
merged 22 commits into from
Jun 15, 2017
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
ab23d5e
platform/broadcom: Add a new supported device and platform, AS7712-32X
pollyhsu2git Jun 2, 2017
22ebc99
Update minigraph.xml
pollyhsu2git Jun 5, 2017
71ac980
Update orchagent.sh
pollyhsu2git Jun 5, 2017
015fb17
Change the HwSku of LeafRouter with the Accton pre
pollyhsu2git Jun 5, 2017
af17731
Update config
pollyhsu2git Jun 5, 2017
2ae9831
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 6, 2017
5338008
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 6, 2017
c0c4846
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 6, 2017
c8cb0f5
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 7, 2017
5b140ec
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 7, 2017
aa2ee3d
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 7, 2017
7f7f94e
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 7, 2017
38a39d9
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 7, 2017
b5849aa
Merge branch 'platform-bcm-as7712' of https://github.com/pollyhsu2git…
pollyhsu2git Jun 7, 2017
5daec8d
Merge branch 'master' into platform-bcm-as7712
lguohan Jun 7, 2017
2a6e088
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 8, 2017
9482a87
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 8, 2017
748c877
[platform/broadcom]: Update Accton-AS7712-32X
pollyhsu2git Jun 8, 2017
3a0c12c
Merge branch 'master' into platform-bcm-as7712
pollyhsu2git Jun 8, 2017
155a397
Merge branch 'master' into platform-bcm-as7712
Jun 11, 2017
896a74d
Merge branch 'master' into platform-bcm-as7712
Jun 15, 2017
86a6e32
Merge branch 'master' into platform-bcm-as7712
Jun 15, 2017
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# name lanes alias
Ethernet0 49,50,51,52 hundredGigE1
Ethernet4 53,54,55,56 hundredGigE2
Ethernet8 57,58,59,60 hundredGigE3
Ethernet12 61,62,63,64 hundredGigE4
Ethernet16 65,66,67,68 hundredGigE5
Ethernet20 69,70,71,72 hundredGigE6
Ethernet24 73,74,75,76 hundredGigE7
Ethernet28 77,78,79,80 hundredGigE8
Ethernet32 33,34,35,36 hundredGigE9
Ethernet36 37,38,39,40 hundredGigE10
Ethernet40 41,42,43,44 hundredGigE11
Ethernet44 45,46,47,48 hundredGigE12
Ethernet48 81,82,83,84 hundredGigE13
Ethernet52 85,86,87,88 hundredGigE14
Ethernet56 89,90,91,92 hundredGigE15
Ethernet60 93,94,95,96 hundredGigE16
Ethernet64 97,98,99,100 hundredGigE17
Ethernet68 101,102,103,104 hundredGigE18
Ethernet72 105,106,107,108 hundredGigE19
Ethernet76 109,110,111,112 hundredGigE20
Ethernet80 17,18,19,20 hundredGigE21
Ethernet84 21,22,23,24 hundredGigE22
Ethernet88 25,26,27,28 hundredGigE23
Ethernet92 29,30,31,32 hundredGigE24
Ethernet96 113,114,115,116 hundredGigE25
Ethernet100 117,118,119,120 hundredGigE26
Ethernet104 121,122,123,124 hundredGigE27
Ethernet108 125,126,127,128 hundredGigE28
Ethernet112 1,2,3,4 hundredGigE29
Ethernet116 5,6,7,8 hundredGigE30
Ethernet120 9,10,11,12 hundredGigE31
Ethernet124 13,14,15,16 hundredGigE32
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
SAI_INIT_CONFIG_FILE=/etc/bcm/th-as7712-32x100G.config.bcm

3 changes: 3 additions & 0 deletions device/accton/x86_64-accton_as7712_32x-r0/installer.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
CONSOLE_PORT=0x2f8
CONSOLE_DEV=1
CONSOLE_SPEED=115200
75 changes: 75 additions & 0 deletions device/accton/x86_64-accton_as7712_32x-r0/minigraph.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<DeviceMiniGraph xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="Microsoft.Search.Autopilot.Evolution">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No regular front panel interfaces in this minigraph file?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stcheng,
YES currently~ No regular front panel interfaces in our minigraph file.
We'll update it once we clarify your minigraph configuration model by more testing at our side.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

that's fine.

<CpgDec>
<IsisRouters xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
<PeeringSessions>
</PeeringSessions>
<Routers xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
</Routers>
</CpgDec>
<DpgDec>
<DeviceDataPlaneInfo>
<IPSecTunnels/>
<LoopbackIPInterfaces xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:LoopbackIPInterface>
<Name>HostIP</Name>
<AttachTo>Loopback0</AttachTo>
<a:Prefix xmlns:b="Microsoft.Search.Autopilot.Evolution">
<b:IPPrefix>10.1.0.32/32</b:IPPrefix>
</a:Prefix>
<a:PrefixStr>10.1.0.32/32</a:PrefixStr>
</a:LoopbackIPInterface>
</LoopbackIPInterfaces>
<ManagementIPInterfaces xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
</ManagementIPInterfaces>
<MplsInterfaces/>
<MplsTeInterfaces/>
<RsvpInterfaces/>
<Hostname>switch1</Hostname>
<PortChannelInterfaces/>
<VlanInterfaces/>
<IPInterfaces>
</IPInterfaces>
<DataAcls/>
<AclInterfaces/>
<DownstreamSummaries/>
<DownstreamSummarySet xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
</DeviceDataPlaneInfo>
</DpgDec>
<PngDec>
<DeviceInterfaceLinks>
</DeviceInterfaceLinks>
<Devices>
<Device i:type="LeafRouter">
<Hostname>switch1</Hostname>
<HwSku>Accton-AS7712-32X</HwSku>
</Device>
</Devices>
</PngDec>
<MetadataDeclaration>
<Devices xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution">
<a:DeviceMetadata>
<a:Name>switch1</a:Name>
<a:Properties>
<a:DeviceProperty>
<a:Name>DhcpResources</a:Name>
<a:Reference i:nil="true"/>
<a:Value></a:Value>
</a:DeviceProperty>
<a:DeviceProperty>
<a:Name>NtpResources</a:Name>
<a:Reference i:nil="true"/>
<a:Value>0.debian.pool.ntp.org;1.debian.pool.ntp.org;2.debian.pool.ntp.org;3.debian.pool.ntp.org</a:Value>
</a:DeviceProperty>
<a:DeviceProperty>
<a:Name>SyslogResources</a:Name>
<a:Reference i:nil="true"/>
<a:Value></a:Value>
</a:DeviceProperty>
</a:Properties>
</a:DeviceMetadata>
</Devices>
<Properties xmlns:a="http://schemas.datacontract.org/2004/07/Microsoft.Search.Autopilot.Evolution"/>
</MetadataDeclaration>
<Hostname>switch1</Hostname>
<HwSku>Accton-AS7712-32X</HwSku>
</DeviceMiniGraph>
5 changes: 5 additions & 0 deletions dockers/docker-orchagent/orchagent.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ if [ "$ASIC" == "broadcom" ]; then
ORCHAGENT_ARGS+="-m $MAC_ADDRESS"
elif [ "$ASIC" == "cavium" ]; then
ORCHAGENT_ARGS+="-m $MAC_ADDRESS"
elif [ "$HWSKU" == "Accton-AS7712-32X" ]; then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you resolve the conflicts here?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

YES, done~

Copy link
Contributor Author

@pollyhsu2git pollyhsu2git Jun 5, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after we revise the value of $HWSKU, according to your porting guide, should we revise <HARDWARE_SKU> of your Device-Specific Files accordingly?

device/
|-- <VENDOR_NAME>/
|   |-- <ONIE_PLATFORM_STRING>/
|   |   |-- <HARDWARE_SKU>/
|   |   |   |-- port_config.ini
|   |   |   |-- sai.profile
|   |   |-- plugins/
|   |   |   |-- eeprom.py
|   |   |   |-- led_control.py
|   |   |   |-- sfputil.py
|   |   |-- fancontrol
|   |   |-- installer.conf
|   |   |-- sensors.conf

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. The name of the <HARDWARE_SKU> directory should match your $HWSKU exactly, which, in this case is Accton-AS7712-32X.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you won't need to modify this file as it is trapped at "$ASIC" == "broadcom"

ORCHAGENT_ARGS+="-m $MAC_ADDRESS"
else
echo "Unsupported HWSKU:$HWSKU. Exiting..." > /dev/stderr
exit 1
fi

exec /usr/bin/orchagent ${ORCHAGENT_ARGS}
Expand Down
3 changes: 2 additions & 1 deletion platform/broadcom/one-image.mk
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ $(SONIC_ONE_IMAGE)_INSTALLS += $(DELL_S6000_PLATFORM_MODULE) \
$(DELL_S6100_PLATFORM_MODULE) \
$(INGRASYS_S8900_54XC_PLATFORM_MODULE) \
$(INGRASYS_S8900_64XC_PLATFORM_MODULE) \
$(INGRASYS_S9100_PLATFORM_MODULE)
$(INGRASYS_S9100_PLATFORM_MODULE) \
$(ACCTON_AS7712_32X_PLATFORM_MODULE)
$(SONIC_ONE_IMAGE)_DOCKERS += $(SONIC_INSTALL_DOCKER_IMAGES)
SONIC_INSTALLERS += $(SONIC_ONE_IMAGE)
14 changes: 14 additions & 0 deletions platform/broadcom/platform-modules-accton.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Accton Platform modules
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it better to have your own repository to put the platform modules? So that your platform modules code update could be independent to our repository. Similar to other platform modules.

Copy link
Contributor Author

@pollyhsu2git pollyhsu2git Jun 7, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the suggestion~ We’ll enhance it upon the internal discussion about it~


ACCTON_AS7712_32X_PLATFORM_MODULE_VERSION = 1.0

export ACCTON_AS7712_32X_PLATFORM_MODULE_VERSION

ACCTON_AS7712_32X_PLATFORM_MODULE = platform-modules-as7712-32x_$(ACCTON_AS7712_32X_PLATFORM_MODULE_VERSION)_amd64.deb
$(ACCTON_AS7712_32X_PLATFORM_MODULE)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-modules-accton
$(ACCTON_AS7712_32X_PLATFORM_MODULE)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
$(ACCTON_AS7712_32X_PLATFORM_MODULE)_PLATFORM = x86_64-accton_as7712_32x-r0
SONIC_DPKG_DEBS += $(ACCTON_AS7712_32X_PLATFORM_MODULE)

$(eval $(call add_extra_package,$(ACCTON_AS7712_32X_PLATFORM_MODULE)))

1 change: 1 addition & 0 deletions platform/broadcom/rules.mk
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ include $(PLATFORM_PATH)/platform-modules-s6000.mk
include $(PLATFORM_PATH)/platform-modules-dell.mk
include $(PLATFORM_PATH)/platform-modules-arista.mk
include $(PLATFORM_PATH)/platform-modules-ingrasys.mk
include $(PLATFORM_PATH)/platform-modules-accton.mk
include $(PLATFORM_PATH)/docker-orchagent-brcm.mk
include $(PLATFORM_PATH)/docker-syncd-brcm.mk
include $(PLATFORM_PATH)/docker-syncd-brcm-rpc.mk
Expand Down
33 changes: 33 additions & 0 deletions platform/broadcom/sonic-platform-modules-accton/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Object files
*.o
*.ko
*.obj
*.elf

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM/
*.su
16 changes: 16 additions & 0 deletions platform/broadcom/sonic-platform-modules-accton/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Copyright (C) 2016 Microsoft, Inc
Copyright (C) 2017 Accton Technology Corporation

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
platform drivers for AS7712_32X for the SONiC project
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

i2c_dev
i2c_mux_pca954x
accton_i2c_cpld
accton_as7712_32x_fan
accton_as7712_32x_sfp
leds-accton_as7712_32x
accton_as7712_32x_psu

Loading