@ -500,7 +500,7 @@ static int ldpaa_bp_add_7(uint16_t bpid)
struct qbman_release_desc rd ;
struct qbman_release_desc rd ;
for ( i = 0 ; i < 7 ; i + + ) {
for ( i = 0 ; i < 7 ; i + + ) {
addr = memalign ( L1_CACHE_BYTES , LDPAA_ETH_RX_BUFFER_SIZE ) ;
addr = memalign ( LDPAA_ETH_BUF_ALIGN , LDPAA_ETH_RX_BUFFER_SIZE ) ;
if ( ! addr ) {
if ( ! addr ) {
printf ( " addr allocation failed \n " ) ;
printf ( " addr allocation failed \n " ) ;
goto err_alloc ;
goto err_alloc ;
@ -685,10 +685,13 @@ static int ldpaa_dpni_setup(struct ldpaa_eth_priv *priv)
/* Configure our buffers' layout */
/* Configure our buffers' layout */
dflt_dpni - > buf_layout . options = DPNI_BUF_LAYOUT_OPT_PARSER_RESULT |
dflt_dpni - > buf_layout . options = DPNI_BUF_LAYOUT_OPT_PARSER_RESULT |
DPNI_BUF_LAYOUT_OPT_FRAME_STATUS |
DPNI_BUF_LAYOUT_OPT_FRAME_STATUS |
DPNI_BUF_LAYOUT_OPT_PRIVATE_DATA_SIZE ;
DPNI_BUF_LAYOUT_OPT_PRIVATE_DATA_SIZE |
DPNI_BUF_LAYOUT_OPT_DATA_ALIGN ;
dflt_dpni - > buf_layout . pass_parser_result = true ;
dflt_dpni - > buf_layout . pass_parser_result = true ;
dflt_dpni - > buf_layout . pass_frame_status = true ;
dflt_dpni - > buf_layout . pass_frame_status = true ;
dflt_dpni - > buf_layout . private_data_size = LDPAA_ETH_SWA_SIZE ;
dflt_dpni - > buf_layout . private_data_size = LDPAA_ETH_SWA_SIZE ;
/* HW erratum mandates data alignment in multiples of 256 */
dflt_dpni - > buf_layout . data_align = LDPAA_ETH_BUF_ALIGN ;
/* ...rx, ... */
/* ...rx, ... */
err = dpni_set_rx_buffer_layout ( dflt_mc_io , MC_CMD_NO_FLAGS ,
err = dpni_set_rx_buffer_layout ( dflt_mc_io , MC_CMD_NO_FLAGS ,
dflt_dpni - > dpni_handle ,
dflt_dpni - > dpni_handle ,
@ -699,7 +702,9 @@ static int ldpaa_dpni_setup(struct ldpaa_eth_priv *priv)
}
}
/* ... tx, ... */
/* ... tx, ... */
dflt_dpni - > buf_layout . options & = ~ DPNI_BUF_LAYOUT_OPT_PARSER_RESULT ;
/* remove Rx-only options */
dflt_dpni - > buf_layout . options & = ~ ( DPNI_BUF_LAYOUT_OPT_DATA_ALIGN |
DPNI_BUF_LAYOUT_OPT_PARSER_RESULT ) ;
err = dpni_set_tx_buffer_layout ( dflt_mc_io , MC_CMD_NO_FLAGS ,
err = dpni_set_tx_buffer_layout ( dflt_mc_io , MC_CMD_NO_FLAGS ,
dflt_dpni - > dpni_handle ,
dflt_dpni - > dpni_handle ,
& dflt_dpni - > buf_layout ) ;
& dflt_dpni - > buf_layout ) ;