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

Update Broadcom SAI to version 6.0.0.13 #9789

Merged
merged 3 commits into from
Jan 21, 2022
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
4 changes: 2 additions & 2 deletions platform/broadcom/sai-modules.mk
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Broadcom SAI modules

BRCM_OPENNSL_KERNEL_VERSION = 6.0.0.10
BRCM_OPENNSL_KERNEL_VERSION = 6.0.0.13

BRCM_OPENNSL_KERNEL = opennsl-modules_$(BRCM_OPENNSL_KERNEL_VERSION)_amd64.deb
$(BRCM_OPENNSL_KERNEL)_SRC_PATH = $(PLATFORM_PATH)/saibcm-modules
Expand All @@ -10,7 +10,7 @@ $(BRCM_OPENNSL_KERNEL)_MACHINE = broadcom
SONIC_DPKG_DEBS += $(BRCM_OPENNSL_KERNEL)

# SAI bcm modules for DNX family ASIC
BRCM_DNX_OPENNSL_KERNEL_VERSION = 6.0.0.10
BRCM_DNX_OPENNSL_KERNEL_VERSION = 6.0.0.13

BRCM_DNX_OPENNSL_KERNEL = opennsl-modules-dnx_$(BRCM_DNX_OPENNSL_KERNEL_VERSION)_amd64.deb
$(BRCM_DNX_OPENNSL_KERNEL)_SRC_PATH = $(PLATFORM_PATH)/saibcm-modules-dnx
Expand Down
2 changes: 1 addition & 1 deletion platform/broadcom/sai.mk
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
LIBSAIBCM_VERSION = 6.0.0.10-1
LIBSAIBCM_VERSION = 6.0.0.13
LIBSAIBCM_BRANCH_NAME = REL_6.0
LIBSAIBCM_URL_PREFIX = "https://sonicstorage.blob.core.windows.net/public/sai/bcmsai/$(LIBSAIBCM_BRANCH_NAME)/$(LIBSAIBCM_VERSION)"

Expand Down
2 changes: 1 addition & 1 deletion platform/broadcom/saibcm-modules-dnx
6 changes: 6 additions & 0 deletions platform/broadcom/saibcm-modules/debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
opennsl (6.0.0.13) unstable; urgency=medium

* Update to Broadcom SAI 6.0.0.13

-- Judy Joseph <[email protected]> Fri, 14 Jan 2022 18:36:38 +0000

opennsl (6.0.0.10) unstable; urgency=medium

* Update to Broadcom SAI 6.0.0.10
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,5 @@ systems/linux/user/x86-smp_generic_64-2_6/linux-bcm-knet.ko lib/modules/5.10.0-8
systems/linux/user/x86-smp_generic_64-2_6/linux-kernel-bde.ko lib/modules/5.10.0-8-2-amd64/extra
systems/linux/user/x86-smp_generic_64-2_6/linux-user-bde.ko lib/modules/5.10.0-8-2-amd64/extra
systems/linux/user/x86-smp_generic_64-2_6/linux-knet-cb.ko lib/modules/5.10.0-8-2-amd64/extra
systems/linux/user/x86-smp_generic_64-2_6/linux-bcm-ptp-clock.ko lib/modules/5.10.0-8-2-amd64/extra
systemd/opennsl-modules.service lib/systemd/system
sdklt/linux/bde/linux_ngbde.ko lib/modules/5.10.0-8-2-amd64/extra
4 changes: 4 additions & 0 deletions platform/broadcom/saibcm-modules/include/ibde.h
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,10 @@ typedef struct ibde_s {
uint32 addr, /* The address to access in the internal device address space */
uint32 value); /* the value to be written. */

/* 64 bit read/write */
uint64 (*read64)(int d, uint32 addr);
void (*write64)(int d, uint32 addr, uint64 data);

} ibde_t;


Expand Down
16 changes: 16 additions & 0 deletions platform/broadcom/saibcm-modules/include/soc/devids.h
Original file line number Diff line number Diff line change
Expand Up @@ -1842,6 +1842,22 @@
#define BCM8884E_DEVICE_ID 0x884E
#define BCM8884F_DEVICE_ID 0x884F

#define BCM88831_DEVICE_ID 0x8831
#define BCM88832_DEVICE_ID 0x8832
#define BCM88833_DEVICE_ID 0x8833
#define BCM88834_DEVICE_ID 0x8834
#define BCM88835_DEVICE_ID 0x8835
#define BCM88836_DEVICE_ID 0x8836
#define BCM88837_DEVICE_ID 0x8837
#define BCM88838_DEVICE_ID 0x8838
#define BCM88839_DEVICE_ID 0x8839
#define BCM8883A_DEVICE_ID 0x883A
#define BCM8883B_DEVICE_ID 0x883B
#define BCM8883C_DEVICE_ID 0x883C
#define BCM8883D_DEVICE_ID 0x883D
#define BCM8883E_DEVICE_ID 0x883E
#define BCM8883F_DEVICE_ID 0x883F


#define Q2A_DEVICE_ID 0x8480
#define Q2A_A0_REV_ID DNXC_A0_REV_ID
Expand Down
4 changes: 3 additions & 1 deletion platform/broadcom/saibcm-modules/make/Make.config
Original file line number Diff line number Diff line change
Expand Up @@ -171,9 +171,11 @@ INCFLAGS = -I${INCDIR} -I${SDK}/systems
CFLAGS += ${INCFLAGS}
CXXFLAGS += ${INCFLAGS}
CPPFLAGS += ${INCFLAGS}

CFLAGS += -DSAI_FIXUP -UKCOM_FILTER_MAX -DKCOM_FILTER_MAX=1025 -UKCOM_NETIF_MAX -DKCOM_NETIF_MAX=1056

# Flag to enable multi instance support
CFLAGS += -DBCM_INSTANCE_SUPPORT

#
# Debug #ifdef control
#
Expand Down
6 changes: 4 additions & 2 deletions platform/broadcom/saibcm-modules/make/Makefile.linux-iproc
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,14 @@ ifeq (BE,$(ENDIAN_MODE))
#request for BE support but don't currently mainstream it. So a 5.1.0 version
#has not been built. Continue using 5.0.3 for any BE support
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61-be/XLDK32
KERN_BASE_DIR ?= $(TOOLCHAIN_BASE_DIR)
TARGET_ARCHITECTURE:=armeb-broadcom-linux-uclibcgnueabi
KERNDIR ?= $(TOOLCHAIN_BASE_DIR)/kernel/linux
else
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61/XLDK32
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/XLDK_GCC10/XLDK32
KERN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61/XLDK32
TARGET_ARCHITECTURE:= arm-broadcom-linux-uclibcgnueabi
KERNDIR ?= $(TOOLCHAIN_BASE_DIR)/kernel/linux
KERNDIR ?= $(KERN_BASE_DIR)/kernel/linux
endif

ifeq (,$(CROSS_COMPILE))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,14 @@ ifeq (BE,$(ENDIAN_MODE))
#We've never actually built a 64 BE executable. Just here for any future
#customer requirements.
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61-be/XLDK64
KERN_BASE_DIR ?= $(TOOLCHAIN_BASE_DIR)
TARGET_ARCHITECTURE ?= aarch64_be-broadcom-linux-uclibc
KERNDIR ?= $(TOOLCHAIN_BASE_DIR)/kernel/linux
KERNDIR ?= $(KERN_BASE_DIR)/kernel/linux
else
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61/XLDK64
TOOLCHAIN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/XLDK_GCC10/XLDK64
KERN_BASE_DIR ?= /projects/ntsw-tools/linux/iproc_ldks/xldk61/XLDK64
TARGET_ARCHITECTURE ?= aarch64-broadcom-linux-uclibc
KERNDIR ?= $(TOOLCHAIN_BASE_DIR)/kernel/linux
KERNDIR ?= $(KERN_BASE_DIR)/kernel/linux
endif

ifeq (,$(CROSS_COMPILE))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,6 @@ ifeq (,$(KFLAGS))
KFLAGS := -nostdinc -isystem $(SYSINC) -I$(KERNDIR)/include -I$(KERNDIR)/arch/x86/include -include $(AUTOCONF) -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -Os -m64 -mtune=generic -mno-red-zone -fno-pie -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -fno-stack-protector -fomit-frame-pointer -g -Wdeclaration-after-statement -Wno-pointer-sign
endif

ifeq ($(LINUX_MAKE_SHARED_LIB), 1)
KFLAGS += -fPIC -mcmodel=small
else
KFLAGS += -fno-pie -mcmodel=kernel
endif

LINUX_UAPI = $(LINUX_INCLUDE)/uapi
ifneq (,$(shell ls $(LINUX_UAPI) 2>/dev/null))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,13 +45,6 @@
#define KMALLOC(size, flags) kmalloc(size, flags)
#endif

#if defined(CONFIG_IDT_79EB334) || defined(CONFIG_BCM4702)
/* ioremap is broken in kernel */
#define IOREMAP(addr, size) ((void *)KSEG1ADDR(addr))
#else
#define IOREMAP(addr, size) ioremap(addr, size)
#endif

#if defined (__mips__)
#if defined(CONFIG_NONCOHERENT_IO) || defined(CONFIG_DMA_NONCOHERENT)
/* Use flush/invalidate for cached memory */
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,16 +66,16 @@ THIS_MOD_NAME := linux-kernel-bde
MODULE = $(LIBDIR)/$(THIS_MOD_NAME).o
KMODULE = $(LIBDIR)/$(THIS_MOD_NAME).ko

build: kernel_libs module $(KMODULE)
build: $(KMODULE)
else
MODULE = $(LIBDIR)/linux-kernel-bde.o

build: kernel_libs module
build: module
endif

module: kernel_libs $(MODULE)
module: $(MODULE)

$(MODULE): $(BLDDIR)/.tree $(BOBJS)
$(MODULE): $(BLDDIR)/.tree $(BOBJS) kernel_libs
mkdir -p $(@D)
$(LD) $(MODULE_LDFLAGS) -r -d $(BOBJS) $(LIBS) -o $@
ifneq ($(kernel_version),2_4)
Expand Down
Loading