diff --git a/drivers/net/ethernet/lantiq/cqm/grx500/cbm.c b/drivers/net/ethernet/lantiq/cqm/grx500/cbm.c
index c65c21225583388ef2933797fae83ec2e5e807ea..9276a6fc9c2718928ceba83aaf1837498beb8f3a 100644
--- a/drivers/net/ethernet/lantiq/cqm/grx500/cbm.c
+++ b/drivers/net/ethernet/lantiq/cqm/grx500/cbm.c
@@ -748,8 +748,12 @@ void *data, u32 frag_size, gfp_t priority)
 	buf_size = (((u32)data >= g_cbm_buff.std_buf_addr) &&
 				((u32)data <= std_buff_end)) ?
 				CBM_STD_BUF_SIZE : CONFIG_CBM_JBO_PKT_SIZE;
-	if (frag_size > buf_size)
-		panic("Packet length exceeds the buffer size\n");
+	if (frag_size > buf_size) {
+		LOGF_KLOG_ERROR("frag_size = %d received in buffer = %x \n",
+							frag_size, (unsigned int)data);
+		LOGF_KLOG_ERROR("packet length exceeds the buffer size\n");
+		return NULL;
+	}
 
 	return __build_skb(data, buf_size);
 }
diff --git a/drivers/net/ethernet/lantiq/ltq_eth_drv_xrx500.c b/drivers/net/ethernet/lantiq/ltq_eth_drv_xrx500.c
index 7677bf97cb445d13a6cb1c583d7a49e31c2ba34b..21e03cc615eb3f1158edcd9e29eb12455533912a 100644
--- a/drivers/net/ethernet/lantiq/ltq_eth_drv_xrx500.c
+++ b/drivers/net/ethernet/lantiq/ltq_eth_drv_xrx500.c
@@ -492,7 +492,7 @@ static int ltq_enable_gsw_r_pmac_jumbo(struct net_device *dev)
 	gsw_reg_set_bit(ops, 0xd05, 0x8);
 
 	/* Set the frame length */
-	gsw_reg_set_bit(ops, 0xd06, 1728);
+	gsw_reg_set_val(ops, 0xd06, 1630);
 
 	return 0;
 }