Merge cb9c724185
into fb29a4047c
This commit is contained in:
commit
1412004e7c
@ -90,6 +90,7 @@ jobs:
|
||||
pool: sonicbld-armhf
|
||||
timeoutInMinutes: 2880
|
||||
variables:
|
||||
PLATFORM: marvell
|
||||
PLATFORM_ARCH: armhf
|
||||
|
||||
- name: marvell-arm64
|
||||
@ -97,6 +98,7 @@ jobs:
|
||||
pool: sonicbld-arm64
|
||||
timeoutInMinutes: 2880
|
||||
variables:
|
||||
PLATFORM: marvell
|
||||
PLATFORM_ARCH: arm64
|
||||
|
||||
- name: marvell
|
||||
|
@ -49,7 +49,8 @@ jobs:
|
||||
sudo modprobe overlay
|
||||
sudo apt-get install -y acl
|
||||
sudo bash -c "echo 1 > /proc/sys/vm/compact_memory"
|
||||
ENABLE_DOCKER_BASE_PULL=y make PLATFORM=$(PLATFORM_AZP) PLATFORM_ARCH=$(PLATFORM_ARCH) $(BUILD_OPTIONS) configure
|
||||
[ -z "$PLATFORM" ] && PLATFORM=$(PLATFORM_AZP)
|
||||
ENABLE_DOCKER_BASE_PULL=y make PLATFORM=$PLATFORM PLATFORM_ARCH=$(PLATFORM_ARCH) $(BUILD_OPTIONS) configure
|
||||
displayName: 'Make configure'
|
||||
postSteps:
|
||||
- script: |
|
||||
|
@ -49,4 +49,5 @@ stages:
|
||||
pool: sonicbld-armhf
|
||||
timeoutInMinutes: 1200
|
||||
variables:
|
||||
PLATFORM: marvell
|
||||
PLATFORM_ARCH: armhf
|
||||
|
8
.gitmodules
vendored
8
.gitmodules
vendored
@ -115,9 +115,9 @@
|
||||
[submodule "src/sonic-dash-api"]
|
||||
path = src/sonic-dash-api
|
||||
url = https://github.com/sonic-net/sonic-dash-api.git
|
||||
[submodule "platform/marvell-arm64/mrvl-prestera"]
|
||||
path = platform/marvell-arm64/mrvl-prestera
|
||||
[submodule "platform/marvell/mrvl-prestera"]
|
||||
path = platform/marvell/mrvl-prestera
|
||||
url = https://github.com/Marvell-switching/mrvl-prestera.git
|
||||
[submodule "platform/marvell-arm64/sonic-platform-marvell"]
|
||||
path = platform/marvell-arm64/sonic-platform-marvell
|
||||
[submodule "platform/marvell/sonic-platform-marvell"]
|
||||
path = platform/marvell/sonic-platform-marvell
|
||||
url = https://github.com/Marvell-switching/sonic-platform-arm64.git
|
||||
|
@ -204,7 +204,7 @@ make target/sonic-[ASIC_VENDER]-armhf.bin
|
||||
_example:_
|
||||
|
||||
```shell
|
||||
make configure PLATFORM=marvell-armhf PLATFORM_ARCH=armhf
|
||||
make configure PLATFORM=marvell PLATFORM_ARCH=armhf
|
||||
make target/sonic-marvell-armhf.bin
|
||||
```
|
||||
|
||||
@ -215,7 +215,7 @@ using cross-compilation, run the following commands:
|
||||
# Execute make configure once to configure ASIC and ARCH for cross-compilation build
|
||||
|
||||
NOJESSIE=1 NOSTRETCH=1 BLDENV=buster CROSS_BLDENV=1 \
|
||||
make configure PLATFORM=marvell-armhf PLATFORM_ARCH=armhf
|
||||
make configure PLATFORM=marvell PLATFORM_ARCH=armhf
|
||||
|
||||
# Execute Arm32 build using cross-compilation environment
|
||||
|
||||
@ -234,7 +234,7 @@ make configure PLATFORM=[ASIC_VENDOR] PLATFORM_ARCH=arm64
|
||||
|
||||
# example:
|
||||
|
||||
make configure PLATFORM=marvell-arm64 PLATFORM_ARCH=arm64
|
||||
make configure PLATFORM=marvell PLATFORM_ARCH=arm64
|
||||
```
|
||||
|
||||
**NOTE**:
|
||||
|
@ -79,11 +79,13 @@ stages:
|
||||
- name: marvell-arm64
|
||||
pool: sonicbld-arm64
|
||||
variables:
|
||||
PLATFORM: marvell
|
||||
PLATFORM_ARCH: arm64
|
||||
- name: marvell-armhf
|
||||
pool: sonicbld-armhf
|
||||
timeoutInMinutes: 1200
|
||||
variables:
|
||||
PLATFORM: marvell
|
||||
PLATFORM_ARCH: armhf
|
||||
INCLUDE_RESTAPI: y
|
||||
|
||||
|
@ -781,7 +781,7 @@ if [[ $TARGET_BOOTLOADER == uboot ]]; then
|
||||
## Overwriting the initrd image with uInitrd
|
||||
sudo LANG=C chroot $FILESYSTEM_ROOT mv /boot/u${INITRD_FILE} /boot/$INITRD_FILE
|
||||
else
|
||||
sudo cp -v $PLATFORM_DIR/${sonic_asic_platform}-${CONFIGURED_ARCH}/sonic_fit.its $FILESYSTEM_ROOT/boot/
|
||||
sudo cp -v $PLATFORM_DIR/$CONFIGURED_PLATFORM/sonic_fit.its $FILESYSTEM_ROOT/boot/
|
||||
sudo LANG=C chroot $FILESYSTEM_ROOT mkimage -f /boot/sonic_fit.its /boot/sonic_${CONFIGURED_ARCH}.fit
|
||||
fi
|
||||
fi
|
||||
|
@ -9,7 +9,11 @@ set -x -e
|
||||
CONFIGURED_ARCH=$([ -f .arch ] && cat .arch || echo amd64)
|
||||
|
||||
if [[ $CONFIGURED_ARCH == armhf || $CONFIGURED_ARCH == arm64 ]]; then
|
||||
. ./onie-image-${CONFIGURED_ARCH}.conf
|
||||
if [ -r ./platform/${CONFIGURED_PLATFORM}/onie-image-${CONFIGURED_ARCH}.conf ]; then
|
||||
. ./platform/${CONFIGURED_PLATFORM}/onie-image-${CONFIGURED_ARCH}.conf
|
||||
else
|
||||
. ./onie-image-${CONFIGURED_ARCH}.conf
|
||||
fi
|
||||
else
|
||||
. ./onie-image.conf
|
||||
fi
|
||||
@ -82,10 +86,14 @@ generate_onie_installer_image()
|
||||
done
|
||||
done
|
||||
|
||||
platform_conf_file="platform/$TARGET_MACHINE/platform_${CONFIGURED_ARCH}.conf"
|
||||
if [ ! -f $platform_conf_file ]; then
|
||||
platform_conf_file="platform/$TARGET_MACHINE/platform.conf"
|
||||
fi
|
||||
## Generate an ONIE installer image
|
||||
## Note: Don't leave blank between lines. It is single line command.
|
||||
./onie-mk-demo.sh $CONFIGURED_ARCH $TARGET_MACHINE $TARGET_PLATFORM-$TARGET_MACHINE-$ONIEIMAGE_VERSION \
|
||||
installer platform/$TARGET_MACHINE/platform.conf $output_file OS $IMAGE_VERSION $ONIE_IMAGE_PART_SIZE \
|
||||
installer $platform_conf_file $output_file OS $IMAGE_VERSION $ONIE_IMAGE_PART_SIZE \
|
||||
$INSTALLER_PAYLOAD $SECURE_UPGRADE_SIGNING_CERT $SECURE_UPGRADE_DEV_SIGNING_KEY
|
||||
}
|
||||
|
||||
|
@ -1 +1 @@
|
||||
marvell-arm64
|
||||
marvell
|
||||
|
@ -1 +1 @@
|
||||
marvell-arm64
|
||||
marvell
|
||||
|
@ -1 +1 @@
|
||||
marvell-arm64
|
||||
marvell
|
||||
|
@ -1 +1 @@
|
||||
marvell-armhf
|
||||
marvell
|
||||
|
@ -31,22 +31,22 @@ DOCKERFS_DIR=docker
|
||||
DOCKER_RAMFS_SIZE=2500M
|
||||
|
||||
## Output file name for onie installer
|
||||
OUTPUT_ONIE_IMAGE=target/sonic-$TARGET_MACHINE.bin
|
||||
OUTPUT_ONIE_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.bin
|
||||
|
||||
## Output file name for raw image
|
||||
OUTPUT_RAW_IMAGE=target/sonic-$TARGET_MACHINE.raw
|
||||
OUTPUT_RAW_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.raw
|
||||
|
||||
## Raw image size in MB
|
||||
RAW_IMAGE_DISK_SIZE=4096
|
||||
|
||||
## Output file name for kvm image
|
||||
OUTPUT_KVM_IMAGE=target/sonic-$TARGET_MACHINE.img
|
||||
OUTPUT_KVM_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.img
|
||||
|
||||
## Kvm image size in GB
|
||||
KVM_IMAGE_DISK_SIZE=16
|
||||
|
||||
## Output file name for aboot installer
|
||||
OUTPUT_ABOOT_IMAGE=target/sonic-aboot-$TARGET_MACHINE.swi
|
||||
OUTPUT_ABOOT_IMAGE=target/sonic-aboot-$TARGET_MACHINE-$CONFIGURED_ARCH.swi
|
||||
|
||||
## Aboot boot image name
|
||||
ABOOT_BOOT_IMAGE=.sonic-boot.swi
|
||||
|
@ -107,7 +107,7 @@ echo -n "."
|
||||
cp -r $onie_installer_payload $tmp_installdir || clean_up 1
|
||||
echo -n "."
|
||||
[ -r "$platform_conf" ] && {
|
||||
cp $platform_conf $tmp_installdir || clean_up 1
|
||||
cp $platform_conf $tmp_installdir/platform.conf || clean_up 1
|
||||
}
|
||||
echo "machine=$machine" > $tmp_installdir/machine.conf
|
||||
echo "platform=$platform" >> $tmp_installdir/machine.conf
|
||||
|
@ -1,27 +0,0 @@
|
||||
# docker image for mrvl syncd with rpc
|
||||
|
||||
DOCKER_SYNCD_MRVL_RPC = docker-syncd-mrvl-rpc.gz
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mrvl-rpc
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT) $(PTF)
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
|
||||
ifeq ($(INSTALL_DEBUG_TOOLS), y)
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
|
||||
$(LIBSWSSCOMMON_DBG) \
|
||||
$(LIBSAIMETADATA_DBG) \
|
||||
$(LIBSAIREDIS_DBG)
|
||||
endif
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_LOAD_DOCKERS += $(DOCKER_SYNCD_BASE)
|
||||
SONIC_DOCKER_IMAGES += $(DOCKER_SYNCD_MRVL_RPC)
|
||||
ifeq ($(ENABLE_SYNCD_RPC),y)
|
||||
SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_SYNCD_MRVL_RPC)
|
||||
endif
|
||||
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_CONTAINER_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_VERSION = 1.0.0+rpc
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_PACKAGE_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += --privileged -t
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/machine.conf:/etc/machine.conf
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
||||
|
||||
SONIC_BULLSEYE_DOCKERS += $(DOCKER_SYNCD_MRVL_RPC)
|
@ -1 +0,0 @@
|
||||
sysctl -w net.core.rmem_max=509430500
|
@ -1,56 +0,0 @@
|
||||
FROM docker-syncd-mrvl-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
|
||||
## Make apt-get non-interactive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
COPY \
|
||||
{% for deb in docker_syncd_mrvl_rpc_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor -%}
|
||||
debs/
|
||||
|
||||
RUN apt-get purge -y syncd
|
||||
|
||||
## Pre-install the fundamental packages
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
python3-pip \
|
||||
python3-setuptools \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
python-dev \
|
||||
wget \
|
||||
cmake \
|
||||
libqt5core5a \
|
||||
libqt5network5 \
|
||||
libboost-atomic1.74.0
|
||||
|
||||
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; } ; \
|
||||
{% for deb in docker_syncd_mrvl_rpc_debs.split(' ') -%}
|
||||
dpkg_apt debs/{{ deb }}{{'; '}}
|
||||
{%- endfor %}
|
||||
|
||||
RUN wget https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz \
|
||||
&& tar xvfz 1.0.0.tar.gz \
|
||||
&& cd nanomsg-1.0.0 \
|
||||
&& mkdir -p build \
|
||||
&& cmake . \
|
||||
&& make install \
|
||||
&& ldconfig \
|
||||
&& cd .. \
|
||||
&& rm -fr nanomsg-1.0.0 \
|
||||
&& rm -f 1.0.0.tar.gz \
|
||||
&& pip3 install cffi==1.7.0 \
|
||||
&& pip3 install --upgrade cffi==1.7.0 \
|
||||
&& pip3 install nnpy \
|
||||
&& mkdir -p /opt \
|
||||
&& cd /opt \
|
||||
&& wget https://raw.githubusercontent.com/p4lang/ptf/master/ptf_nn/ptf_nn_agent.py \
|
||||
&& apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y \
|
||||
&& rm -rf /root/deps
|
||||
|
||||
COPY ["ptf_nn_agent.conf", "/etc/supervisor/conf.d/"]
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/supervisord"]
|
@ -1,10 +0,0 @@
|
||||
[program:ptf_nn_agent]
|
||||
command=/usr/bin/python /opt/ptf_nn_agent.py --device-socket 1@tcp://0.0.0.0:10900 -i 1-3@Ethernet12 --set-iface-rcv-buffer=109430400
|
||||
process_name=ptf_nn_agent
|
||||
stdout_logfile=/tmp/ptf_nn_agent.out.log
|
||||
stderr_logfile=/tmp/ptf_nn_agent.err.log
|
||||
redirect_stderr=false
|
||||
autostart=true
|
||||
autorestart=true
|
||||
startsecs=1
|
||||
numprocs=1
|
@ -1,16 +0,0 @@
|
||||
# docker image for mrvl syncd
|
||||
|
||||
DOCKER_SYNCD_PLATFORM_CODE = mrvl
|
||||
include $(PLATFORM_PATH)/../template/docker-syncd-bullseye.mk
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DEPENDS += $(SYNCD)
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DBG_DEPENDS += $(SYNCD_DBG) \
|
||||
$(LIBSWSSCOMMON_DBG) \
|
||||
$(LIBSAIMETADATA_DBG) \
|
||||
$(LIBSAIREDIS_DBG)
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_VERSION = 1.0.0
|
||||
$(DOCKER_SYNCD_BASE)_PACKAGE_NAME = syncd
|
||||
|
||||
#$(DOCKER_SYNCD_BASE)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
@ -1,37 +0,0 @@
|
||||
{% from "dockers/dockerfile-macros.j2" import install_debian_packages %}
|
||||
FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
|
||||
ARG docker_container_name
|
||||
|
||||
## Make apt-get non-interactive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update
|
||||
|
||||
COPY \
|
||||
{% for deb in docker_syncd_mrvl_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor -%}
|
||||
debs/
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
iputils-ping
|
||||
|
||||
RUN apt-get -y install libpcap-dev libxml2-dev python-dev swig libsensors4-dev nfs-common
|
||||
|
||||
RUN dpkg -i \
|
||||
{% for deb in docker_syncd_mrvl_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor %}
|
||||
|
||||
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
|
||||
COPY ["files/supervisor-proc-exit-listener", "/usr/bin/"]
|
||||
COPY ["critical_processes", "/etc/supervisor/"]
|
||||
|
||||
## Clean up
|
||||
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
|
||||
RUN rm -rf /debs
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/supervisord"]
|
@ -1 +0,0 @@
|
||||
program:syncd
|
@ -1,39 +0,0 @@
|
||||
[supervisord]
|
||||
logfile_maxbytes=1MB
|
||||
logfile_backups=2
|
||||
nodaemon=true
|
||||
|
||||
[eventlistener:dependent-startup]
|
||||
command=python3 -m supervisord_dependent_startup
|
||||
autostart=true
|
||||
autorestart=unexpected
|
||||
startretries=0
|
||||
exitcodes=0,3
|
||||
events=PROCESS_STATE
|
||||
buffer_size=1024
|
||||
|
||||
[eventlistener:supervisor-proc-exit-listener]
|
||||
command=python3 /usr/bin/supervisor-proc-exit-listener --container-name syncd
|
||||
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
|
||||
autostart=true
|
||||
autorestart=unexpected
|
||||
buffer_size=1024
|
||||
|
||||
[program:rsyslogd]
|
||||
command=/usr/sbin/rsyslogd -n -iNONE
|
||||
priority=1
|
||||
autostart=false
|
||||
autorestart=false
|
||||
stdout_logfile=syslog
|
||||
stderr_logfile=syslog
|
||||
dependent_startup=true
|
||||
|
||||
[program:syncd]
|
||||
command=/usr/bin/syncd_start.sh
|
||||
priority=3
|
||||
autostart=false
|
||||
autorestart=false
|
||||
stdout_logfile=syslog
|
||||
stderr_logfile=syslog
|
||||
dependent_startup=true
|
||||
dependent_startup_wait_for=rsyslogd:running
|
@ -1,12 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
function clean_up {
|
||||
service syncd stop
|
||||
exit
|
||||
}
|
||||
|
||||
trap clean_up SIGTERM SIGKILL
|
||||
|
||||
service syncd start
|
||||
|
||||
read
|
@ -1,20 +0,0 @@
|
||||
# libsaithrift-dev package
|
||||
|
||||
SAI_VER = 0.9.4
|
||||
|
||||
LIBSAITHRIFT_DEV = libsaithrift-dev_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(LIBSAITHRIFT_DEV)_SRC_PATH = $(SRC_PATH)/sonic-sairedis/SAI
|
||||
$(LIBSAITHRIFT_DEV)_DEPENDS += $(LIBTHRIFT) $(LIBTHRIFT_DEV) $(PYTHON_THRIFT) $(THRIFT_COMPILER) $(MRVL_FPA) $(MRVL_SAI)
|
||||
$(LIBSAITHRIFT_DEV)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
SONIC_DPKG_DEBS += $(LIBSAITHRIFT_DEV)
|
||||
|
||||
PYTHON_SAITHRIFT = python-saithrift_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(PYTHON_SAITHRIFT)))
|
||||
|
||||
SAISERVER = saiserver_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER)))
|
||||
|
||||
SAISERVER_DBG = saiserver-dbg_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER_DBG)_RDEPENDS += $(SAISERVER)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER_DBG)))
|
@ -1 +0,0 @@
|
||||
Subproject commit 8f9bcdaf58406c71a9038aea834fc8255de59848
|
@ -1,17 +0,0 @@
|
||||
# sonic marvell one image installer
|
||||
|
||||
SONIC_ONE_IMAGE = sonic-marvell-arm64.bin
|
||||
$(SONIC_ONE_IMAGE)_MACHINE = marvell-arm64
|
||||
$(SONIC_ONE_IMAGE)_IMAGE_TYPE = onie
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(SYSTEMD_SONIC_GENERATOR)
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(MRVL_PRESTERA_DEB)
|
||||
$(SONIC_ONE_IMAGE)_LAZY_INSTALLS += $(NOKIA_7215_PLATFORM) \
|
||||
$(AC5X_RD98DX35xx_PLATFORM) \
|
||||
$(AC5X_RD98DX35xxCN9131_PLATFORM)
|
||||
ifeq ($(INSTALL_DEBUG_TOOLS),y)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(SONIC_INSTALL_DOCKER_DBG_IMAGES)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(filter-out $(patsubst %-$(DBG_IMAGE_MARK).gz,%.gz, $(SONIC_INSTALL_DOCKER_DBG_IMAGES)), $(SONIC_INSTALL_DOCKER_IMAGES))
|
||||
else
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS = $(SONIC_INSTALL_DOCKER_IMAGES)
|
||||
endif
|
||||
SONIC_INSTALLERS += $(SONIC_ONE_IMAGE)
|
@ -1,26 +0,0 @@
|
||||
#include $(PLATFORM_PATH)/sdk.mk
|
||||
include $(PLATFORM_PATH)/sai.mk
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl.mk
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl-rpc.mk
|
||||
include $(PLATFORM_PATH)/docker-saiserver-mrvl.mk
|
||||
include $(PLATFORM_PATH)/libsaithrift-dev.mk
|
||||
include $(PLATFORM_PATH)/one-image.mk
|
||||
include $(PLATFORM_PATH)/mrvl-prestera.mk
|
||||
include $(PLATFORM_PATH)/platform-nokia.mk
|
||||
include $(PLATFORM_PATH)/platform-marvell.mk
|
||||
|
||||
SONIC_ALL += $(SONIC_ONE_IMAGE) \
|
||||
$(DOCKER_FPM) \
|
||||
$(DOCKER_PTF_MRVL) \
|
||||
$(DOCKER_SYNCD_MRVL_RPC)
|
||||
|
||||
# Inject mrvl sai into syncd
|
||||
$(SYNCD)_DEPENDS += $(MRVL_SAI)
|
||||
$(SYNCD)_UNINSTALLS += $(MRVL_SAI)
|
||||
|
||||
ifeq ($(ENABLE_SYNCD_RPC),y)
|
||||
$(SYNCD)_DEPENDS += $(LIBSAITHRIFT_DEV)
|
||||
endif
|
||||
|
||||
# Runtime dependency on mrvl sai is set only for syncd
|
||||
$(SYNCD)_RDEPENDS += $(MRVL_SAI)
|
@ -1,9 +0,0 @@
|
||||
# Marvell SAI
|
||||
|
||||
export MRVL_SAI_VERSION = 1.12.0-2
|
||||
export MRVL_SAI = mrvllibsai_$(MRVL_SAI_VERSION)_$(PLATFORM_ARCH).deb
|
||||
|
||||
$(MRVL_SAI)_SRC_PATH = $(PLATFORM_PATH)/sai
|
||||
$(eval $(call add_conflict_package,$(MRVL_SAI),$(LIBSAIVS_DEV)))
|
||||
|
||||
SONIC_MAKE_DEBS += $(MRVL_SAI)
|
@ -1,9 +0,0 @@
|
||||
.ONESHELL:
|
||||
SHELL = /bin/bash
|
||||
.SHELLFLAGS += -e
|
||||
|
||||
MRVL_SAI_URL = https://github.com/Marvell-switching/sonic-marvell-binaries/raw/master/arm64/sai-plugin/$(MRVL_SAI)
|
||||
|
||||
$(addprefix $(DEST)/, $(MRVL_SAI)): $(DEST)/% :
|
||||
# get deb package
|
||||
wget -O $(DEST)/$(MRVL_SAI) $(MRVL_SAI_URL) || rm -f $(DEST)/$(MRVL_SAI)
|
@ -1 +0,0 @@
|
||||
Subproject commit f6b5e6cc8f382275e9d1647321ecd27e87038b90
|
@ -1,6 +0,0 @@
|
||||
7215/scripts/nokia-7215-init.sh usr/local/bin
|
||||
7215/scripts/cpu_wdt.py usr/local/bin
|
||||
7215/service/nokia-7215init.service etc/systemd/system
|
||||
7215/service/cpu_wdt.service etc/systemd/system
|
||||
7215/sonic_platform-1.0-py3-none-any.whl usr/share/sonic/device/arm64-nokia_ixs7215_52xb-r0
|
||||
../mrvl-prestera/platform/arm64/ac5x/* /
|
@ -1,8 +0,0 @@
|
||||
DPATH := $($(DOCKER_SAISERVER_MRVL)_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/docker-saiserver-mrvl.mk platform/marvell-armhf/docker-saiserver-mrvl.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(DPATH))
|
||||
|
||||
$(DOCKER_SAISERVER_MRVL)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(DOCKER_SAISERVER_MRVL)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(DOCKER_SAISERVER_MRVL)_DEP_FILES := $(DEP_FILES)
|
@ -1,15 +0,0 @@
|
||||
# docker image for mrvl saiserver
|
||||
|
||||
DOCKER_SAISERVER_MRVL = docker-saiserver-mrvl.gz
|
||||
$(DOCKER_SAISERVER_MRVL)_PATH = $(PLATFORM_PATH)/docker-saiserver-mrvl
|
||||
$(DOCKER_SAISERVER_MRVL)_DEPENDS += $(SAISERVER)
|
||||
$(DOCKER_SAISERVER_MRVL)_FILES += $(DSSERVE) $(BCMCMD)
|
||||
$(DOCKER_SAISERVER_MRVL)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BULLSEYE)
|
||||
SONIC_DOCKER_IMAGES += $(DOCKER_SAISERVER_MRVL)
|
||||
|
||||
$(DOCKER_SAISERVER_MRVL)_CONTAINER_NAME = saiserver
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += --privileged -t
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += -v /host/machine.conf:/etc/machine.conf
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += -v /var/run/docker-saiserver:/var/run/sswsyncd
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
@ -1,8 +0,0 @@
|
||||
DPATH := $($(DOCKER_SYNCD_MRVL_RPC)_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) $(PLATFORM_PATH)/docker-syncd-mrvl-rpc.mk $(PLATFORM_PATH)/docker-syncd-mrvl-rpc.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(DPATH))
|
||||
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEP_FILES := $(DEP_FILES)
|
@ -1,25 +0,0 @@
|
||||
# docker image for mrvl syncd with rpc
|
||||
|
||||
DOCKER_SYNCD_MRVL_RPC = docker-syncd-mrvl-rpc.gz
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_PATH = $(PLATFORM_PATH)/docker-syncd-mrvl-rpc
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC) $(LIBTHRIFT) $(PTF)
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_FILES += $(SUPERVISOR_PROC_EXIT_LISTENER_SCRIPT)
|
||||
ifeq ($(INSTALL_DEBUG_TOOLS), y)
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_DEPENDS += $(SYNCD_RPC_DBG) \
|
||||
$(LIBSWSSCOMMON_DBG) \
|
||||
$(LIBSAIMETADATA_DBG) \
|
||||
$(LIBSAIREDIS_DBG)
|
||||
endif
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_LOAD_DOCKERS += $(DOCKER_SYNCD_BASE)
|
||||
SONIC_DOCKER_IMAGES += $(DOCKER_SYNCD_MRVL_RPC)
|
||||
ifeq ($(ENABLE_SYNCD_RPC),y)
|
||||
SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_SYNCD_MRVL_RPC)
|
||||
endif
|
||||
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_CONTAINER_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_VERSION = 1.0.0+rpc
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_PACKAGE_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += --privileged -t
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/machine.conf:/etc/machine.conf
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
@ -1 +0,0 @@
|
||||
sysctl -w net.core.rmem_max=509430500
|
@ -1,56 +0,0 @@
|
||||
FROM docker-syncd-mrvl-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
|
||||
## Make apt-get non-interactive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
COPY \
|
||||
{% for deb in docker_syncd_mrvl_rpc_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor -%}
|
||||
debs/
|
||||
|
||||
RUN apt-get purge -y syncd
|
||||
|
||||
## Pre-install the fundamental packages
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
python3-pip \
|
||||
python-setuptools \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
python-dev \
|
||||
wget \
|
||||
cmake \
|
||||
libqt5core5a \
|
||||
libqt5network5 \
|
||||
libboost-atomic1.74.0
|
||||
|
||||
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; } ; \
|
||||
{% for deb in docker_syncd_mrvl_rpc_debs.split(' ') -%}
|
||||
dpkg_apt debs/{{ deb }}{{'; '}}
|
||||
{%- endfor %}
|
||||
|
||||
RUN wget https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz \
|
||||
&& tar xvfz 1.0.0.tar.gz \
|
||||
&& cd nanomsg-1.0.0 \
|
||||
&& mkdir -p build \
|
||||
&& cmake . \
|
||||
&& make install \
|
||||
&& ldconfig \
|
||||
&& cd .. \
|
||||
&& rm -fr nanomsg-1.0.0 \
|
||||
&& rm -f 1.0.0.tar.gz \
|
||||
&& pip2 install cffi==1.7.0 \
|
||||
&& pip2 install --upgrade cffi==1.7.0 \
|
||||
&& pip2 install nnpy \
|
||||
&& mkdir -p /opt \
|
||||
&& cd /opt \
|
||||
&& wget https://raw.githubusercontent.com/p4lang/ptf/master/ptf_nn/ptf_nn_agent.py \
|
||||
&& apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y \
|
||||
&& rm -rf /root/deps
|
||||
|
||||
COPY ["ptf_nn_agent.conf", "/etc/supervisor/conf.d/"]
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/supervisord"]
|
@ -1,10 +0,0 @@
|
||||
[program:ptf_nn_agent]
|
||||
command=/usr/bin/python /opt/ptf_nn_agent.py --device-socket 1@tcp://0.0.0.0:10900 -i 1-3@Ethernet12 --set-iface-rcv-buffer=109430400
|
||||
process_name=ptf_nn_agent
|
||||
stdout_logfile=/tmp/ptf_nn_agent.out.log
|
||||
stderr_logfile=/tmp/ptf_nn_agent.err.log
|
||||
redirect_stderr=false
|
||||
autostart=true
|
||||
autorestart=true
|
||||
startsecs=1
|
||||
numprocs=1
|
@ -1,10 +0,0 @@
|
||||
DPATH := $($(DOCKER_SYNCD_BASE)_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/docker-syncd-mrvl.mk platform/marvell-armhf/docker-syncd-mrvl.dep platform/marvell-armhf/sai.mk
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(DPATH))
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(DOCKER_SYNCD_BASE)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(DOCKER_SYNCD_BASE)_DEP_FILES := $(DEP_FILES)
|
||||
|
||||
$(eval $(call add_dbg_docker,$(DOCKER_SYNCD_BASE),$(DOCKER_SYNCD_BASE_DBG)))
|
@ -1,16 +0,0 @@
|
||||
# docker image for mrvl syncd
|
||||
|
||||
DOCKER_SYNCD_PLATFORM_CODE = mrvl
|
||||
include $(PLATFORM_PATH)/../template/docker-syncd-bullseye.mk
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DEPENDS += $(SYNCD)
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DBG_DEPENDS += $(SYNCD_DBG) \
|
||||
$(LIBSWSSCOMMON_DBG) \
|
||||
$(LIBSAIMETADATA_DBG) \
|
||||
$(LIBSAIREDIS_DBG)
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_VERSION = 1.0.0
|
||||
$(DOCKER_SYNCD_BASE)_PACKAGE_NAME = syncd
|
||||
|
||||
#$(DOCKER_SYNCD_BASE)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
@ -1,37 +0,0 @@
|
||||
{% from "dockers/dockerfile-macros.j2" import install_debian_packages %}
|
||||
FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
|
||||
ARG docker_container_name
|
||||
|
||||
## Make apt-get non-interactive
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update
|
||||
|
||||
COPY \
|
||||
{% for deb in docker_syncd_mrvl_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor -%}
|
||||
debs/
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
iputils-ping
|
||||
|
||||
RUN apt-get -y install libpcap-dev libxml2-dev python-dev swig libsensors4-dev nfs-common
|
||||
|
||||
RUN dpkg -i \
|
||||
{% for deb in docker_syncd_mrvl_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor %}
|
||||
|
||||
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
|
||||
COPY ["files/supervisor-proc-exit-listener", "/usr/bin/"]
|
||||
COPY ["critical_processes", "/etc/supervisor/"]
|
||||
|
||||
## Clean up
|
||||
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
|
||||
RUN rm -rf /debs
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/supervisord"]
|
@ -1 +0,0 @@
|
||||
program:syncd
|
@ -1,39 +0,0 @@
|
||||
[supervisord]
|
||||
logfile_maxbytes=1MB
|
||||
logfile_backups=2
|
||||
nodaemon=true
|
||||
|
||||
[eventlistener:dependent-startup]
|
||||
command=python3 -m supervisord_dependent_startup
|
||||
autostart=true
|
||||
autorestart=unexpected
|
||||
startretries=0
|
||||
exitcodes=0,3
|
||||
events=PROCESS_STATE
|
||||
buffer_size=1024
|
||||
|
||||
[eventlistener:supervisor-proc-exit-listener]
|
||||
command=python3 /usr/bin/supervisor-proc-exit-listener --container-name syncd
|
||||
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
|
||||
autostart=true
|
||||
autorestart=unexpected
|
||||
buffer_size=1024
|
||||
|
||||
[program:rsyslogd]
|
||||
command=/usr/sbin/rsyslogd -n -iNONE
|
||||
priority=1
|
||||
autostart=false
|
||||
autorestart=false
|
||||
stdout_logfile=syslog
|
||||
stderr_logfile=syslog
|
||||
dependent_startup=true
|
||||
|
||||
[program:syncd]
|
||||
command=/usr/bin/syncd_start.sh
|
||||
priority=2
|
||||
autostart=false
|
||||
autorestart=false
|
||||
stdout_logfile=syslog
|
||||
stderr_logfile=syslog
|
||||
dependent_startup=true
|
||||
dependent_startup_wait_for=rsyslogd:running
|
@ -1,11 +0,0 @@
|
||||
SPATH := $($(LIBSAITHRIFT_DEV)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/libsaithrift-dev.mk platform/marvell-armhf/libsaithrift-dev.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
SMDEP_PATHS := $(SPATH) $(SPATH)/bm/behavioral-model $(SPATH)/test/ptf $(SPATH)/test/saithrift/ctypesgen
|
||||
$(foreach path, $(SMDEP_PATHS), $(eval $(path) :=$(filter-out $(SMDEP_PATHS),$(addprefix $(path)/, $(shell cd $(path) && git ls-files | grep -Ev " " )))))
|
||||
|
||||
$(LIBSAITHRIFT_DEV)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(LIBSAITHRIFT_DEV)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(LIBSAITHRIFT_DEV)_DEP_FILES := $(DEP_FILES)
|
||||
$(LIBSAITHRIFT_DEV)_SMDEP_FILES := $(foreach path, $(SMDEP_PATHS), $($(path)))
|
||||
$(LIBSAITHRIFT_DEV)_SMDEP_PATHS := $(SMDEP_PATHS)
|
@ -1,20 +0,0 @@
|
||||
# libsaithrift-dev package
|
||||
|
||||
SAI_VER = 0.9.4
|
||||
|
||||
LIBSAITHRIFT_DEV = libsaithrift-dev_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(LIBSAITHRIFT_DEV)_SRC_PATH = $(SRC_PATH)/sonic-sairedis/SAI
|
||||
$(LIBSAITHRIFT_DEV)_DEPENDS += $(LIBTHRIFT) $(LIBTHRIFT_DEV) $(PYTHON_THRIFT) $(THRIFT_COMPILER) $(MRVL_FPA) $(MRVL_SAI)
|
||||
$(LIBSAITHRIFT_DEV)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
SONIC_DPKG_DEBS += $(LIBSAITHRIFT_DEV)
|
||||
|
||||
PYTHON_SAITHRIFT = python-saithrift_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(PYTHON_SAITHRIFT)))
|
||||
|
||||
SAISERVER = saiserver_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER)))
|
||||
|
||||
SAISERVER_DBG = saiserver-dbg_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER_DBG)_RDEPENDS += $(SAISERVER)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER_DBG)))
|
@ -1 +0,0 @@
|
||||
$(SONIC_ONE_IMAGE)_CACHE_MODE := none
|
@ -1,16 +0,0 @@
|
||||
# sonic marvell one image installer
|
||||
|
||||
SONIC_ONE_IMAGE = sonic-marvell-armhf.bin
|
||||
$(SONIC_ONE_IMAGE)_MACHINE = marvell-armhf
|
||||
$(SONIC_ONE_IMAGE)_IMAGE_TYPE = onie
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(SYSTEMD_SONIC_GENERATOR)
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(MRVL_PRESTERA_DEB)
|
||||
$(SONIC_ONE_IMAGE)_LAZY_INSTALLS += $(ET6448M_PLATFORM) \
|
||||
$(NOKIA_7215_PLATFORM)
|
||||
ifeq ($(INSTALL_DEBUG_TOOLS),y)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(SONIC_INSTALL_DOCKER_DBG_IMAGES)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(filter-out $(patsubst %-$(DBG_IMAGE_MARK).gz,%.gz, $(SONIC_INSTALL_DOCKER_DBG_IMAGES)), $(SONIC_INSTALL_DOCKER_IMAGES))
|
||||
else
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS = $(SONIC_INSTALL_DOCKER_IMAGES)
|
||||
endif
|
||||
SONIC_INSTALLERS += $(SONIC_ONE_IMAGE)
|
@ -1,8 +0,0 @@
|
||||
MPATH := $($(ET6448M_PLATFORM)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/platform-et6448m.mk platform/marvell-armhf/platform-et6448m.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(MPATH))
|
||||
|
||||
$(ET6448M_PLATFORM)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(ET6448M_PLATFORM)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(ET6448M_PLATFORM)_DEP_FILES := $(DEP_FILES)
|
@ -1,8 +0,0 @@
|
||||
# ET6448M Platform
|
||||
|
||||
ET6448M_VERSION=0.1
|
||||
ET6448M_PLATFORM = sonic-platform-et6448m_$(ET6448M_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
$(ET6448M_PLATFORM)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-et6448m
|
||||
$(ET6448M_PLATFORM)_PLATFORM = armhf-marvell_et6448m_52x-r0
|
||||
SONIC_DPKG_DEBS += $(ET6448M_PLATFORM)
|
||||
|
@ -1,8 +0,0 @@
|
||||
MPATH := $($(NOKIA_7215_PLATFORM)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/platform-nokia.mk platform/marvell-armhf/platform-nokia.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(MPATH))
|
||||
|
||||
$(NOKIA_7215_PLATFORM)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(NOKIA_7215_PLATFORM)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(NOKIA_7215_PLATFORM)_DEP_FILES := $(DEP_FILES)
|
@ -1,10 +0,0 @@
|
||||
# Nokia Platform
|
||||
|
||||
NOKIA_7215_PLATFORM_VERSION = 1.0
|
||||
export NOKIA_7215_PLATFORM_VERSION
|
||||
|
||||
NOKIA_7215_PLATFORM = sonic-platform-nokia-7215_$(NOKIA_7215_PLATFORM_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
$(NOKIA_7215_PLATFORM)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-nokia
|
||||
$(NOKIA_7215_PLATFORM)_PLATFORM = armhf-nokia_ixs7215_52x-r0
|
||||
SONIC_DPKG_DEBS += $(NOKIA_7215_PLATFORM)
|
||||
|
@ -1,8 +0,0 @@
|
||||
MPATH := $($(MRVL_PRESTERA_DEB)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/prestera.mk platform/marvell-armhf/prestera.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(MPATH))
|
||||
|
||||
$(MRVL_PRESTERA_DEB)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(MRVL_PRESTERA_DEB)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(MRVL_PRESTERA_DEB)_DEP_FILES := $(DEP_FILES)
|
@ -1,11 +0,0 @@
|
||||
# Marvell Prestera
|
||||
|
||||
export MRVL_PRESTERA_VER = 1.0
|
||||
export MRVL_PRESTERA = mrvlprestera_$(MRVL_PRESTERA_VER)_$(PLATFORM_ARCH)
|
||||
export MRVL_PRESTERA_DEB = $(MRVL_PRESTERA).deb
|
||||
export MRVL_PRESTERA_SRC_URL = https://github.com/Marvell-switching/mrvl-prestera.git
|
||||
export MRVL_PRESTERA_SRC_TAG = MRVL_PRESTERA_DRIVER_1.8
|
||||
|
||||
$(MRVL_PRESTERA_DEB)_SRC_PATH = $(PLATFORM_PATH)/prestera
|
||||
$(MRVL_PRESTERA_DEB)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
|
||||
SONIC_DPKG_DEBS += $(MRVL_PRESTERA_DEB)
|
@ -1,5 +0,0 @@
|
||||
mrvlprestera (1.0) unstable; urgency=low
|
||||
|
||||
* Prestera switch driver
|
||||
|
||||
-- Marvell <arheneus@marvell.com> Fri, 19 Feb 2021 10:39:18 +0800
|
@ -1 +0,0 @@
|
||||
9
|
@ -1,15 +0,0 @@
|
||||
Source: mrvlprestera
|
||||
Section: unknown
|
||||
Priority: optional
|
||||
Maintainer: Marvell <arheneus@marvell.com>
|
||||
Build-Depends: debhelper (>=9)
|
||||
Standards-Version: 3.9.6
|
||||
Homepage: <insert the upstream URL, if relevant>
|
||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/mrvlprestera.git
|
||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/mrvlprestera.git
|
||||
|
||||
Package: mrvlprestera
|
||||
Architecture: armhf
|
||||
Homepage: <insert the upstream URL, if relevant>
|
||||
Description:
|
||||
kernel modules for prestera switch driver
|
@ -1,2 +0,0 @@
|
||||
mrvl-prestera/drivers/armhf/cpssEnabler/linuxNoKernelModule/drivers/mvcpss.ko /lib/modules/KVERSION/kernel/extra
|
||||
mrvl-prestera/platform/armhf/* /
|
@ -1,56 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
include /usr/share/dpkg/pkg-info.mk
|
||||
|
||||
PACKAGE_PRE_NAME := mrvlprestera
|
||||
ifneq ($(CROSS_BUILD_ENVIRON), y)
|
||||
KVERSION ?= $(shell uname -r)
|
||||
endif
|
||||
KERNEL_SRC := /lib/modules/$(KVERSION)
|
||||
MOD_SRC_DIR:= $(shell pwd)
|
||||
MODULE_DIR := mrvl-prestera/drivers/armhf/cpssEnabler/linuxNoKernelModule/drivers
|
||||
|
||||
%:
|
||||
dh $@ --with systemd,python3 --buildsystem=pybuild
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_clean
|
||||
|
||||
build:
|
||||
# get sources
|
||||
rm -rf mrvl-prestera || true
|
||||
git clone ${MRVL_PRESTERA_SRC_URL}
|
||||
cd mrvl-prestera && git checkout ${MRVL_PRESTERA_SRC_TAG} && cd ..
|
||||
sed "s/KVERSION/${KVERSION}/g" /sonic/platform/marvell-armhf/prestera/debian/mrvlprestera.install.template > /sonic/platform/marvell-armhf/prestera/debian/mrvlprestera.install
|
||||
|
||||
make modules -C $(KERNEL_SRC)/build M=$(MOD_SRC_DIR)/$(MODULE_DIR)/ CONFIG_KM_MVPCI=y CONFIG_KM_MVDMA=y CONFIG_KM_MVINT=y
|
||||
|
||||
binary: binary-arch binary-indep
|
||||
# Nothing to do
|
||||
|
||||
binary-arch:
|
||||
# Nothing to do
|
||||
|
||||
binary-indep:
|
||||
dh_testdir
|
||||
dh_installdirs
|
||||
|
||||
# Resuming debhelper scripts
|
||||
dh_testroot
|
||||
dh_install
|
||||
dh_installchangelogs
|
||||
dh_installdocs
|
||||
dh_systemd_enable
|
||||
dh_installinit
|
||||
dh_systemd_start
|
||||
dh_link
|
||||
dh_fixperms
|
||||
dh_compress
|
||||
dh_strip
|
||||
dh_installdeb
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
.PHONY: build binary binary-arch binary-indep clean
|
@ -1,9 +0,0 @@
|
||||
include $(PLATFORM_PATH)/sai.dep
|
||||
include $(PLATFORM_PATH)/prestera.dep
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl.dep
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl-rpc.dep
|
||||
include $(PLATFORM_PATH)/docker-saiserver-mrvl.dep
|
||||
include $(PLATFORM_PATH)/libsaithrift-dev.dep
|
||||
include $(PLATFORM_PATH)/platform-et6448m.dep
|
||||
include $(PLATFORM_PATH)/platform-nokia.dep
|
||||
include $(PLATFORM_PATH)/one-image.dep
|
@ -1,28 +0,0 @@
|
||||
#include $(PLATFORM_PATH)/sdk.mk
|
||||
include $(PLATFORM_PATH)/sai.mk
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl.mk
|
||||
include $(PLATFORM_PATH)/docker-syncd-mrvl-rpc.mk
|
||||
include $(PLATFORM_PATH)/docker-saiserver-mrvl.mk
|
||||
include $(PLATFORM_PATH)/libsaithrift-dev.mk
|
||||
include $(PLATFORM_PATH)/one-image.mk
|
||||
include $(PLATFORM_PATH)/platform-et6448m.mk
|
||||
include $(PLATFORM_PATH)/platform-nokia.mk
|
||||
include $(PLATFORM_PATH)/prestera.mk
|
||||
|
||||
ENABLE_SYNCD_RPC = ""
|
||||
INCLUDE_MGMT_FRAMEWORK = ""
|
||||
|
||||
SONIC_ALL += $(SONIC_ONE_IMAGE) \
|
||||
$(DOCKER_FPM)
|
||||
#$(DOCKER_SYNCD_MRVL_RPC)
|
||||
|
||||
# Inject mrvl sai into syncd
|
||||
$(SYNCD)_DEPENDS += $(MRVL_SAI)
|
||||
$(SYNCD)_UNINSTALLS += $(MRVL_SAI)
|
||||
|
||||
ifeq ($(ENABLE_SYNCD_RPC),y)
|
||||
$(SYNCD)_DEPENDS += $(LIBSAITHRIFT_DEV)
|
||||
endif
|
||||
|
||||
# Runtime dependency on mrvl sai is set only for syncd
|
||||
$(SYNCD)_RDEPENDS += $(MRVL_SAI)
|
@ -1,9 +0,0 @@
|
||||
SPATH := $($(MRVL_SAI)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-armhf/sai.mk platform/marvell-armhf/sai.dep
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(SPATH))
|
||||
SMDEP_PATHS := $(SPATH)
|
||||
|
||||
$(MRVL_SAI)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(MRVL_SAI)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(MRVL_SAI)_DEP_FILES := $(DEP_FILES)
|
@ -1,9 +0,0 @@
|
||||
# Marvell SAI
|
||||
|
||||
export MRVL_SAI_VERSION = 1.13.0-1
|
||||
export MRVL_SAI = mrvllibsai_$(MRVL_SAI_VERSION)_$(PLATFORM_ARCH).deb
|
||||
|
||||
$(MRVL_SAI)_SRC_PATH = $(PLATFORM_PATH)/sai
|
||||
$(eval $(call add_conflict_package,$(MRVL_SAI),$(LIBSAIVS_DEV)))
|
||||
|
||||
SONIC_MAKE_DEBS += $(MRVL_SAI)
|
@ -1,9 +0,0 @@
|
||||
.ONESHELL:
|
||||
SHELL = /bin/bash
|
||||
.SHELLFLAGS += -e
|
||||
|
||||
MRVL_SAI_URL = https://github.com/Marvell-switching/sonic-marvell-binaries/raw/master/armhf/sai-plugin/$(MRVL_SAI)
|
||||
|
||||
$(addprefix $(DEST)/, $(MRVL_SAI)): $(DEST)/% :
|
||||
# get deb package
|
||||
wget -O $(DEST)/$(MRVL_SAI) $(MRVL_SAI_URL)
|
@ -1,50 +0,0 @@
|
||||
# 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
|
||||
|
||||
# Kernel Module Compile Results
|
||||
*.mod*
|
||||
*.cmd
|
||||
*.o.d
|
||||
.tmp_versions/
|
||||
modules.order
|
||||
Module.symvers
|
||||
Mkfile.old
|
||||
dkms.conf
|
||||
|
||||
# Debian packaging
|
||||
*.debhelper.log
|
||||
*.postinst.debhelper
|
||||
*.postrm.debhelper
|
||||
*.prerm.debhelper
|
||||
*.substvars
|
@ -1,5 +0,0 @@
|
||||
sonic-platform-et6448m (0.1) unstable; urgency=low
|
||||
|
||||
* Add support for ET6448M.
|
||||
|
||||
-- Marvell <arheneus@marvell.com> Mon, 11 Nov 2019 09:35:58 +0800
|
@ -1 +0,0 @@
|
||||
9
|
@ -1,15 +0,0 @@
|
||||
Source: sonic-platform-et6448m
|
||||
Section: unknown
|
||||
Priority: optional
|
||||
Maintainer: Marvell <arheneus@marvell.com>
|
||||
Build-Depends: debhelper (>=9)
|
||||
Standards-Version: 3.9.6
|
||||
Homepage: <insert the upstream URL, if relevant>
|
||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/sonic-platform-et6448m.git
|
||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/sonic-platform-et6448m.git
|
||||
|
||||
Package: sonic-platform-et6448m
|
||||
Architecture: armhf
|
||||
Depends: ${misc:Depends}
|
||||
Description: <insert up to 60 chars description>
|
||||
<insert long description, indented with spaces>
|
@ -1,3 +0,0 @@
|
||||
et6448m_plt_setup.sh usr/sbin
|
||||
entropy.py etc/
|
||||
inband_mgmt.sh etc/
|
@ -1,40 +0,0 @@
|
||||
#!/bin/sh
|
||||
# postinst script for sonic-platform-et6448m
|
||||
#
|
||||
# see: dh_installdeb(1)
|
||||
|
||||
set -e
|
||||
|
||||
# summary of how this script can be called:
|
||||
# * <postinst> `configure' <most-recently-configured-version>
|
||||
# * <old-postinst> `abort-upgrade' <new version>
|
||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
|
||||
# <new-version>
|
||||
# * <postinst> `abort-remove'
|
||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
|
||||
# <failed-install-package> <version> `removing'
|
||||
# <conflicting-package> <version>
|
||||
# for details, see https://www.debian.org/doc/debian-policy/ or
|
||||
# the debian-policy package
|
||||
|
||||
|
||||
case "$1" in
|
||||
configure)
|
||||
sh /usr/sbin/et6448m_plt_setup.sh
|
||||
;;
|
||||
|
||||
abort-upgrade|abort-remove|abort-deconfigure)
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "postinst called with unknown argument \`$1'" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# dh_installdeb will replace this with shell code automatically
|
||||
# generated by other debhelper scripts.
|
||||
|
||||
#DEBHELPER#
|
||||
|
||||
exit 0
|
@ -1,25 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
# See debhelper(7) (uncomment to enable)
|
||||
# output every command that modifies files on the build system.
|
||||
#export DH_VERBOSE = 1
|
||||
|
||||
|
||||
# see FEATURE AREAS in dpkg-buildflags(1)
|
||||
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
|
||||
# see ENVIRONMENT in dpkg-buildflags(1)
|
||||
# package maintainers to append CFLAGS
|
||||
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
|
||||
# package maintainers to append LDFLAGS
|
||||
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
|
||||
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
|
||||
# dh_make generated override targets
|
||||
# This is example for Cmake (See https://bugs.debian.org/641051 )
|
||||
#override_dh_auto_configure:
|
||||
# dh_auto_configure -- # -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)
|
||||
|
@ -1,22 +0,0 @@
|
||||
#!/usr/bin/python
|
||||
import fcntl, struct
|
||||
import time
|
||||
from os import path
|
||||
|
||||
RNDADDENTROPY=0x40085203
|
||||
|
||||
def avail():
|
||||
if path.exists("/proc/sys/kernel/random/entropy_avail"):
|
||||
with open("/proc/sys/kernel/random/entropy_avail", mode='r') as avail:
|
||||
return int(avail.read())
|
||||
else:
|
||||
return int(2048)
|
||||
|
||||
if path.exists("/proc/sys/kernel/random/entropy_avail"):
|
||||
while 1:
|
||||
while avail() < 2048:
|
||||
with open('/dev/urandom', 'rb') as urnd, open("/dev/random", mode='wb') as rnd:
|
||||
d = urnd.read(512)
|
||||
t = struct.pack('ii', 4 * len(d), len(d)) + d
|
||||
fcntl.ioctl(rnd, RNDADDENTROPY, t)
|
||||
time.sleep(30)
|
@ -1,60 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
fw_uboot_env_cfg()
|
||||
{
|
||||
echo "Setting up U-Boot environment..."
|
||||
FW_ENV_DEFAULT='/dev/mtd0 0x00500000 0x80000 0x100000 8'
|
||||
UBOOT_FW_DFAULT=1
|
||||
|
||||
DTB_HAS_ENV_BLK=$(grep uboot-env /proc/mtd | sed -e 's/:.*$//')
|
||||
if [ -c "/dev/$DTB_HAS_ENV_BLK" ]; then
|
||||
PROC_ENV_FILE=$(find /proc/device-tree/ -name env_size)
|
||||
if [ -n "$PROC_ENV_FILE" ]
|
||||
then
|
||||
UBOOT_ENV_SIZ="0x$(hd $PROC_ENV_FILE | awk 'FNR==1 {print $2 $3 $4 $5}')"
|
||||
UBOOT_ENV_ERASE_SIZ="0x$(grep uboot-env /proc/mtd | awk '{print $3}')"
|
||||
if [[ -n "$UBOOT_ENV_SIZ" && -n "$UBOOT_ENV_ERASE_SIZ" ]]
|
||||
then
|
||||
# Env info from DTB
|
||||
FW_ENV_DTB="/dev/$DTB_HAS_ENV_BLK 0x00000000 $UBOOT_ENV_SIZ $UBOOT_ENV_ERASE_SIZ"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
if [ -n "$FW_ENV_DTB" ]
|
||||
then
|
||||
echo $FW_ENV_DTB > /etc/fw_env.config
|
||||
echo "Found uboot env offset in device tree"
|
||||
UBOOT_ENV_CRC=$(fw_printenv -c /etc/fw_env.config 2>&1 | grep -c 'Warning: Bad CRC')
|
||||
if [ $UBOOT_ENV_CRC -eq 0 ]
|
||||
then
|
||||
echo "Uboot env offset in device tree is valid"
|
||||
UBOOT_FW_DFAULT=0
|
||||
else
|
||||
echo "Uboot env offset in device tree is NOT valid"
|
||||
UBOOT_FW_DFAULT=1
|
||||
fi
|
||||
fi
|
||||
if [ $UBOOT_FW_DFAULT -eq 1 ]
|
||||
then
|
||||
echo $FW_ENV_DEFAULT > /etc/fw_env.config
|
||||
echo "Using pre-configured uboot env"
|
||||
fi
|
||||
}
|
||||
|
||||
et6448m_profile()
|
||||
{
|
||||
MAC_ADDR=$(fw_printenv -n ethaddr)
|
||||
sed -i "s/switchMacAddress=.*/switchMacAddress=$MAC_ADDR/g" /usr/share/sonic/device/armhf-marvell_et6448m_52x-r0/et6448m/profile.ini
|
||||
echo "ET6448M: Updating switch mac address ${MAC_ADDR}"
|
||||
}
|
||||
|
||||
main()
|
||||
{
|
||||
fw_uboot_env_cfg
|
||||
et6448m_profile
|
||||
|
||||
python /etc/entropy.py &
|
||||
/bin/sh /etc/inband_mgmt.sh
|
||||
}
|
||||
|
||||
main $@
|
@ -1,40 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
#inband_mgmt
|
||||
|
||||
inband_mgmt(){
|
||||
|
||||
# The intent of this sequence is to ensure 12c bus enumeration order by
|
||||
# controlling the order in which the various i2c device drivers are
|
||||
# loaded. Hence the drivers are unloaded and then reloaded in the prescribed
|
||||
# order.
|
||||
# NOTE: In the nokia platform the following sequence is performed by the Nokia
|
||||
# platform service init script and thus should not be performed here
|
||||
if [ ! -f /host/machine.conf ]; then
|
||||
exit 0
|
||||
fi
|
||||
grep ^onie_platform /host/machine.conf 2>/dev/null | grep nokia >/dev/null
|
||||
if [ $? != 0 ]; then
|
||||
rmmod i2c-dev
|
||||
rmmod i2c_mux_gpio
|
||||
rmmod i2c_mv64xxx
|
||||
modprobe i2c_mv64xxx
|
||||
modprobe i2c-dev
|
||||
modprobe i2c_mux_gpio
|
||||
sleep 60
|
||||
fi
|
||||
while :; do
|
||||
ip -br link show eth0 2> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
ip address show eth0 | grep -qw "inet" 2>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
ifconfig eth0 down
|
||||
systemctl restart networking
|
||||
fi
|
||||
sleep 120
|
||||
else
|
||||
sleep 3
|
||||
fi
|
||||
done
|
||||
}
|
||||
(inband_mgmt > /dev/null)&
|
@ -1,5 +0,0 @@
|
||||
sonic-platform-nokia-7215 (1.0) unstable; urgency=low
|
||||
|
||||
* Add support for nokia-7215.
|
||||
|
||||
-- Nokia <carl.keene@nokia.com> Wed, 15 Apr 2020 09:35:58 +0800
|
@ -1 +0,0 @@
|
||||
9
|
@ -1,15 +0,0 @@
|
||||
Source: sonic-platform-nokia-7215
|
||||
Section: unknown
|
||||
Priority: optional
|
||||
Maintainer: Nokia <carl.keene@nokia.com>
|
||||
Build-Depends: debhelper (>=9)
|
||||
Standards-Version: 3.9.6
|
||||
Homepage: <insert the upstream URL, if relevant>
|
||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/sonic-platform-et6448m.git
|
||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/sonic-platform-et6448m.git
|
||||
|
||||
Package: sonic-platform-nokia-7215
|
||||
Architecture: armhf
|
||||
Depends: ${misc:Depends}
|
||||
Description: <insert up to 60 chars description>
|
||||
<insert long description, indented with spaces>
|
@ -1,64 +0,0 @@
|
||||
#!/usr/bin/make -f
|
||||
# See debhelper(7) (uncomment to enable)
|
||||
# output every command that modifies files on the build system.
|
||||
#export DH_VERBOSE = 1
|
||||
|
||||
include /usr/share/dpkg/pkg-info.mk
|
||||
#--------------------------------------------------------
|
||||
|
||||
PACKAGE_PRE_NAME := sonic-platform-nokia
|
||||
MOD_SRC_DIR:= $(shell pwd)
|
||||
MODULE_DIRS:= 7215
|
||||
UTILS_DIR := utils
|
||||
SERVICE_DIR := service
|
||||
PLATFORM_DIR := sonic_platform
|
||||
|
||||
%:
|
||||
dh $@ --with systemd,python3 --buildsystem=pybuild
|
||||
|
||||
clean:
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_clean
|
||||
|
||||
build:
|
||||
(for mod in $(MODULE_DIRS); do \
|
||||
python3 $${mod}/setup.py bdist_wheel -d $(MOD_SRC_DIR)/$${mod}; \
|
||||
done)
|
||||
|
||||
binary: binary-arch binary-indep
|
||||
# Nothing to do
|
||||
|
||||
binary-arch:
|
||||
# Nothing to do
|
||||
|
||||
binary-indep:
|
||||
dh_testdir
|
||||
dh_installdirs
|
||||
|
||||
# Custom package commands
|
||||
(for mod in $(MODULE_DIRS); do \
|
||||
dh_installdirs -p$(PACKAGE_PRE_NAME)-$${mod} /usr/local/bin; \
|
||||
cp $(MOD_SRC_DIR)/$${mod}/$(SERVICE_DIR)/*.service debian/$(PACKAGE_PRE_NAME)-$${mod}/lib/systemd/system/; \
|
||||
cp $(MOD_SRC_DIR)/$${mod}/$(UTILS_DIR)/* debian/$(PACKAGE_PRE_NAME)-$${mod}/usr/local/bin/; \
|
||||
python3 $${mod}/setup.py install --root=$(MOD_SRC_DIR)/debian/$(PACKAGE_PRE_NAME)-$${mod} --install-layout=deb; \
|
||||
done)
|
||||
|
||||
# Resuming debhelper scripts
|
||||
dh_testroot
|
||||
dh_install
|
||||
dh_installchangelogs
|
||||
dh_installdocs
|
||||
dh_systemd_enable
|
||||
dh_installinit
|
||||
dh_systemd_start
|
||||
dh_link
|
||||
dh_fixperms
|
||||
dh_compress
|
||||
dh_strip
|
||||
dh_installdeb
|
||||
dh_gencontrol
|
||||
dh_md5sums
|
||||
dh_builddeb
|
||||
|
||||
.PHONY: build binary binary-arch binary-indep clean
|
@ -5,6 +5,7 @@ $(DOCKER_SAISERVER_MRVL)_PATH = $(PLATFORM_PATH)/docker-saiserver-mrvl
|
||||
$(DOCKER_SAISERVER_MRVL)_DEPENDS += $(SAISERVER)
|
||||
$(DOCKER_SAISERVER_MRVL)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_BULLSEYE)
|
||||
SONIC_DOCKER_IMAGES += $(DOCKER_SAISERVER_MRVL)
|
||||
SONIC_BULLSEYE_DOCKERS += $(DOCKER_SAISERVER_MRVL)
|
||||
|
||||
$(DOCKER_SAISERVER_MRVL)_CONTAINER_NAME = saiserver
|
||||
$(DOCKER_SAISERVER_MRVL)_RUN_OPT += --privileged -t
|
@ -19,7 +19,10 @@ endif
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_CONTAINER_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_VERSION = 1.0.0+rpc
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_PACKAGE_NAME = syncd
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_MACHINE = marvell
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += --privileged -t
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/machine.conf:/etc/machine.conf
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /etc/sonic:/etc/sonic:ro
|
||||
$(DOCKER_SYNCD_MRVL_RPC)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
||||
|
||||
SONIC_BULLSEYE_DOCKERS += $(DOCKER_SYNCD_MRVL_RPC)
|
||||
|
@ -1,2 +1 @@
|
||||
sysctl -w net.core.rmem_max=509430500
|
||||
|
||||
|
@ -15,7 +15,8 @@ RUN apt-get purge -y syncd
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
python-pip \
|
||||
python3-pip \
|
||||
python3-setuptools \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
@ -24,7 +25,7 @@ RUN apt-get update \
|
||||
cmake \
|
||||
libqt5core5a \
|
||||
libqt5network5 \
|
||||
libboost-atomic1.71.0
|
||||
libboost-atomic1.74.0
|
||||
|
||||
RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; } ; \
|
||||
{% for deb in docker_syncd_mrvl_rpc_debs.split(' ') -%}
|
||||
@ -41,9 +42,9 @@ RUN wget https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz \
|
||||
&& cd .. \
|
||||
&& rm -fr nanomsg-1.0.0 \
|
||||
&& rm -f 1.0.0.tar.gz \
|
||||
&& pip install cffi==1.7.0 \
|
||||
&& pip install --upgrade cffi==1.7.0 \
|
||||
&& pip install nnpy \
|
||||
&& pip3 install cffi==1.7.0 \
|
||||
&& pip3 install --upgrade cffi==1.7.0 \
|
||||
&& pip3 install nnpy \
|
||||
&& mkdir -p /opt \
|
||||
&& cd /opt \
|
||||
&& wget https://raw.githubusercontent.com/p4lang/ptf/master/ptf_nn/ptf_nn_agent.py \
|
||||
|
@ -1,9 +1,10 @@
|
||||
# docker image for mrvl syncd
|
||||
|
||||
DOCKER_SYNCD_PLATFORM_CODE = mrvl
|
||||
include $(PLATFORM_PATH)/../template/docker-syncd-base.mk
|
||||
include $(PLATFORM_PATH)/../template/docker-syncd-bullseye.mk
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DEPENDS += $(SYNCD)
|
||||
$(DOCKER_SYNCD_BASE)_DEPENDS += $(MRVL_SAI)
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_DBG_DEPENDS += $(SYNCD_DBG) \
|
||||
$(LIBSWSSCOMMON_DBG) \
|
||||
@ -12,6 +13,6 @@ $(DOCKER_SYNCD_BASE)_DBG_DEPENDS += $(SYNCD_DBG) \
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_VERSION = 1.0.0
|
||||
$(DOCKER_SYNCD_BASE)_PACKAGE_NAME = syncd
|
||||
$(DOCKER_SYNCD_BASE)_MACHINE = marvell
|
||||
|
||||
$(DOCKER_SYNCD_BASE)_RUN_OPT += -v /host/warmboot:/var/warmboot
|
||||
$(DOCKER_SYNCD_BASE)_RUN_OPT += -v /var/run/docker-syncd:/var/run/sswsyncd
|
||||
|
@ -1,5 +1,5 @@
|
||||
{% from "dockers/dockerfile-macros.j2" import install_debian_packages %}
|
||||
FROM docker-config-engine-buster-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
FROM docker-config-engine-bullseye-{{DOCKER_USERNAME}}:{{DOCKER_USERTAG}}
|
||||
|
||||
ARG docker_container_name
|
||||
|
||||
@ -14,16 +14,20 @@ debs/{{ deb }}{{' '}}
|
||||
{%- endfor -%}
|
||||
debs/
|
||||
|
||||
RUN apt-get -y install libpcap-dev libxml2-dev python-dev swig libsensors4-dev libatomic1 liblua5.1-0 lua-bitop lua-cjson nfs-common
|
||||
RUN apt-get update \
|
||||
&& apt-get -y install \
|
||||
net-tools \
|
||||
iputils-ping
|
||||
|
||||
RUN apt-get -y install libpcap-dev libxml2-dev python-dev swig libsensors4-dev nfs-common
|
||||
|
||||
RUN dpkg -i \
|
||||
{% for deb in docker_syncd_mrvl_debs.split(' ') -%}
|
||||
debs/{{ deb }}{{' '}}
|
||||
{%- endfor %}
|
||||
|
||||
COPY ["syncd.sh", "/usr/bin/"]
|
||||
COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
|
||||
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
|
||||
COPY ["files/supervisor-proc-exit-listener", "/usr/bin/"]
|
||||
COPY ["critical_processes", "/etc/supervisor/"]
|
||||
|
||||
## Clean up
|
||||
|
@ -23,7 +23,7 @@ buffer_size=1024
|
||||
command=/usr/sbin/rsyslogd -n -iNONE
|
||||
priority=1
|
||||
autostart=false
|
||||
autorestart=unexpected
|
||||
autorestart=false
|
||||
stdout_logfile=syslog
|
||||
stderr_logfile=syslog
|
||||
dependent_startup=true
|
||||
|
@ -2,19 +2,19 @@
|
||||
|
||||
SAI_VER = 0.9.4
|
||||
|
||||
LIBSAITHRIFT_DEV = libsaithrift-dev_$(SAI_VER)_amd64.deb
|
||||
LIBSAITHRIFT_DEV = libsaithrift-dev_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(LIBSAITHRIFT_DEV)_SRC_PATH = $(SRC_PATH)/sonic-sairedis/SAI
|
||||
$(LIBSAITHRIFT_DEV)_DEPENDS += $(LIBTHRIFT) $(LIBTHRIFT_DEV) $(PYTHON_THRIFT) $(THRIFT_COMPILER) $(MRVL_FPA) $(MRVL_SAI)
|
||||
$(LIBSAITHRIFT_DEV)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
SONIC_DPKG_DEBS += $(LIBSAITHRIFT_DEV)
|
||||
|
||||
PYTHON_SAITHRIFT = python-saithrift_$(SAI_VER)_amd64.deb
|
||||
PYTHON_SAITHRIFT = python-saithrift_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(PYTHON_SAITHRIFT)))
|
||||
|
||||
SAISERVER = saiserver_$(SAI_VER)_amd64.deb
|
||||
$(SAISERVER)_RDEPENDS += $(LIBTHRIFT) $(BRCM_XGS_SAI)
|
||||
SAISERVER = saiserver_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER)_RDEPENDS += $(LIBTHRIFT) $(MRVL_SAI)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER)))
|
||||
|
||||
SAISERVER_DBG = saiserver-dbg_$(SAI_VER)_amd64.deb
|
||||
SAISERVER_DBG = saiserver-dbg_$(SAI_VER)_$(CONFIGURED_ARCH).deb
|
||||
$(SAISERVER_DBG)_RDEPENDS += $(SAISERVER)
|
||||
$(eval $(call add_extra_package,$(LIBSAITHRIFT_DEV),$(SAISERVER_DBG)))
|
||||
|
1
platform/marvell/mrvl-prestera
Submodule
1
platform/marvell/mrvl-prestera
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit b7a14a93b21c099fab6b53f5fc4917ca0eb9b6c9
|
@ -4,5 +4,4 @@ export MRVL_PRESTERA = mrvlprestera_$(MRVL_PRESTERA_VER)_$(PLATFORM_ARCH)
|
||||
export MRVL_PRESTERA_DEB = $(MRVL_PRESTERA).deb
|
||||
|
||||
$(MRVL_PRESTERA_DEB)_SRC_PATH = $(PLATFORM_PATH)/mrvl-prestera
|
||||
$(MRVL_PRESTERA_DEB)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
|
||||
SONIC_DPKG_DEBS += $(MRVL_PRESTERA_DEB)
|
@ -1,9 +1,22 @@
|
||||
# sonic marvell one image installer
|
||||
|
||||
ifeq ($(CONFIGURED_ARCH),$(filter $(CONFIGURED_ARCH),arm64 armhf))
|
||||
SONIC_ONE_IMAGE = sonic-marvell-$(CONFIGURED_ARCH).bin
|
||||
else
|
||||
SONIC_ONE_IMAGE = sonic-marvell.bin
|
||||
endif
|
||||
$(SONIC_ONE_IMAGE)_MACHINE = marvell
|
||||
$(SONIC_ONE_IMAGE)_IMAGE_TYPE = onie
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(SYSTEMD_SONIC_GENERATOR)
|
||||
ifeq ($(CONFIGURED_ARCH),arm64)
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(MRVL_PRESTERA_DEB)
|
||||
$(SONIC_ONE_IMAGE)_LAZY_INSTALLS += $(NOKIA_7215_PLATFORM) \
|
||||
$(AC5X_RD98DX35xx_PLATFORM) \
|
||||
$(AC5X_RD98DX35xxCN9131_PLATFORM)
|
||||
else ifeq ($(CONFIGURED_ARCH),armhf)
|
||||
$(SONIC_ONE_IMAGE)_INSTALLS += $(MRVL_PRESTERA_DEB)
|
||||
$(SONIC_ONE_IMAGE)_LAZY_INSTALLS += $(NOKIA_7215_PLATFORM)
|
||||
endif
|
||||
ifeq ($(INSTALL_DEBUG_TOOLS),y)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(SONIC_INSTALL_DOCKER_DBG_IMAGES)
|
||||
$(SONIC_ONE_IMAGE)_DOCKERS += $(filter-out $(patsubst %-$(DBG_IMAGE_MARK).gz,%.gz, $(SONIC_INSTALL_DOCKER_DBG_IMAGES)), $(SONIC_INSTALL_DOCKER_IMAGES))
|
||||
|
55
platform/marvell/onie-image-arm64.conf
Normal file
55
platform/marvell/onie-image-arm64.conf
Normal file
@ -0,0 +1,55 @@
|
||||
## DESCRIPTION:
|
||||
## config for ONIE image
|
||||
##
|
||||
|
||||
## Partition size in MB
|
||||
## The default size is 32GB
|
||||
: ${ONIE_IMAGE_PART_SIZE:=32768}
|
||||
|
||||
## Target hardware information
|
||||
: ${TARGET_PLATFORM:=arm64}
|
||||
: ${TARGET_MACHINE:=generic}
|
||||
|
||||
ONIEIMAGE_VERSION=r0
|
||||
|
||||
## Filesystem root
|
||||
FILESYSTEM_ROOT=./fsroot-${TARGET_MACHINE}
|
||||
|
||||
## Filename for squashfs file system
|
||||
FILESYSTEM_SQUASHFS=fs.squashfs
|
||||
|
||||
## Filename for onie installer payload, will be the main part of onie installer
|
||||
INSTALLER_PAYLOAD=fs.zip
|
||||
|
||||
## Filename for docker file system
|
||||
FILESYSTEM_DOCKERFS=dockerfs.tar.gz
|
||||
|
||||
## docker directory on the root filesystem
|
||||
DOCKERFS_DIR=docker
|
||||
|
||||
## docker ramfs disk space
|
||||
DOCKER_RAMFS_SIZE=2500M
|
||||
|
||||
## Output file name for onie installer
|
||||
OUTPUT_ONIE_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.bin
|
||||
|
||||
## Output file name for raw image
|
||||
OUTPUT_RAW_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.raw
|
||||
|
||||
## Raw image size in MB
|
||||
RAW_IMAGE_DISK_SIZE=4096
|
||||
|
||||
## Output file name for kvm image
|
||||
OUTPUT_KVM_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.img
|
||||
|
||||
## Kvm image size in GB
|
||||
KVM_IMAGE_DISK_SIZE=16
|
||||
|
||||
## Output file name for aboot installer
|
||||
OUTPUT_ABOOT_IMAGE=target/sonic-aboot-$TARGET_MACHINE-$CONFIGURED_ARCH.swi
|
||||
|
||||
## Aboot boot image name
|
||||
ABOOT_BOOT_IMAGE=.sonic-boot.swi
|
||||
|
||||
## Output file name for dsc installer
|
||||
OUTPUT_DSC_IMAGE=target/sonic-$TARGET_MACHINE-$CONFIGURED_ARCH.tar
|
@ -3,8 +3,7 @@
|
||||
AC5X_RD98DX35xx_PLATFORM_MODULE_VERSION = 1.0
|
||||
AC5X_RD98DX35xxCN9131_PLATFORM_MODULE_VERSION = 1.0
|
||||
|
||||
export AC5X_RD98DX35xx_PLATFORM_MODULE_VERSION
|
||||
export AC5X_RD98DX35xxCN9131_PLATFORM_MODULE_VERSION
|
||||
ifeq ($(CONFIGURED_ARCH),arm64)
|
||||
|
||||
AC5X_RD98DX35xx_PLATFORM = sonic-platform-rd98dx35xx_$(AC5X_RD98DX35xx_PLATFORM_MODULE_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
$(AC5X_RD98DX35xx_PLATFORM)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-marvell
|
||||
@ -16,3 +15,4 @@ AC5X_RD98DX35xxCN9131_PLATFORM = sonic-platform-rd98dx35xx-cn9131_$(AC5X_RD98DX3
|
||||
$(AC5X_RD98DX35xxCN9131_PLATFORM)_PLATFORM = arm64-marvell_rd98DX35xx_cn9131-r0
|
||||
$(eval $(call add_extra_package,$(AC5X_RD98DX35xx_PLATFORM),$(AC5X_RD98DX35xxCN9131_PLATFORM)))
|
||||
|
||||
endif
|
@ -5,19 +5,26 @@ export NOKIA_7215_PLATFORM_VERSION
|
||||
SONIC_KERNEL_DEB_PKG = $(LINUX_KERNEL)
|
||||
export SONIC_KERNEL_DEB_PKG
|
||||
|
||||
NOKIA_7215_PLATFORM = sonic-platform-nokia-7215_$(NOKIA_7215_PLATFORM_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
ifeq ($(CONFIGURED_ARCH),arm64)
|
||||
NOKIA_7215_PLATFORM = sonic-platform-nokia-7215-a1_$(NOKIA_7215_PLATFORM_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
$(NOKIA_7215_PLATFORM)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-nokia
|
||||
$(NOKIA_7215_PLATFORM)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
|
||||
$(NOKIA_7215_PLATFORM)_PLATFORM = arm64-nokia_ixs7215_52xb-r0
|
||||
|
||||
MPATH := $($(NOKIA_7215_PLATFORM)_SRC_PATH)
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell-arm64/platform-nokia.mk
|
||||
DEP_FILES := $(SONIC_COMMON_FILES_LIST) platform/marvell/platform-nokia.mk
|
||||
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||
DEP_FILES += $(shell git ls-files $(MPATH))
|
||||
|
||||
$(NOKIA_7215_PLATFORM)_CACHE_MODE := GIT_CONTENT_SHA
|
||||
$(NOKIA_7215_PLATFORM)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||
$(NOKIA_7215_PLATFORM)_DEP_FILES := $(DEP_FILES)
|
||||
|
||||
SONIC_DPKG_DEBS += $(NOKIA_7215_PLATFORM)
|
||||
|
||||
else ifeq ($(CONFIGURED_ARCH),armhf)
|
||||
NOKIA_7215_PLATFORM = sonic-platform-nokia-7215_$(NOKIA_7215_PLATFORM_VERSION)_$(CONFIGURED_ARCH).deb
|
||||
$(NOKIA_7215_PLATFORM)_SRC_PATH = $(PLATFORM_PATH)/sonic-platform-nokia
|
||||
$(NOKIA_7215_PLATFORM)_PLATFORM = armhf-nokia_ixs7215_52x-r0
|
||||
$(NOKIA_7215_PLATFORM)_DEPENDS += $(LINUX_HEADERS) $(LINUX_HEADERS_COMMON)
|
||||
SONIC_DPKG_DEBS += $(NOKIA_7215_PLATFORM)
|
||||
endif
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user