diff --git a/iopsys-brcm63xx-arm/base-files/etc/init.d/bdmf_shell b/iopsys-brcm63xx-arm/base-files/etc/init.d/bdmf_shell
index 258b5b07200b3b71ee0c4275b975f1c7b0ab3ef8..c246345722d38c0917182d1a8fadc5871d9b287b 100755
--- a/iopsys-brcm63xx-arm/base-files/etc/init.d/bdmf_shell
+++ b/iopsys-brcm63xx-arm/base-files/etc/init.d/bdmf_shell
@@ -19,9 +19,9 @@ bs_init() {
 # experience delays when establishing a new connection.
 syn_flood() {
 
-        soc=$(brcm_fw_tool -k info)
+        soc=$(cat /proc/socinfo  | grep 'SoC Name' | cut -d':' -f2)
         case $soc in
-                63155)
+                BCM63155)
                         sir=30000
                 ;;
                 *)
diff --git a/iopsys-brcm63xx-arm/base-files/etc/init.d/switch b/iopsys-brcm63xx-arm/base-files/etc/init.d/switch
index 690282536617dec33f33abbf18f05bb6c6afb633..3ee6e6c67cb4be424c7f50b09f1d957156118b2c 100755
--- a/iopsys-brcm63xx-arm/base-files/etc/init.d/switch
+++ b/iopsys-brcm63xx-arm/base-files/etc/init.d/switch
@@ -23,9 +23,9 @@ boot() {
 
 	if [ -n "$(which tmctl)" ]; then
 		local flag=0
-		local cpu="$(brcm_fw_tool -k info)"
+		local cpu="$(cat /proc/socinfo  | grep 'SoC Name' | cut -d':' -f2)"
 		case $cpu in
-			6315?) flag=1 ;;
+			BCM6315?) flag=1 ;;
 		esac
 		# Initialize all interfaces without creating any queues.
 		for interf in $(db -q get hw.board.ethernetPortOrder); do