mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 13:55:32 +00:00
stmmac: Allow SOCs to use Store forward mode eventhough tx_coe is 0. (V2)
This patch adds new field 'force_sf_dma_mode' to plat_stmmacenet_data struct to allow users to specify if they want to use force store forward eventhough tx_coe is not available in hw. without this flag stmmac driver will use cut-thru mode not use store-forward mode. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@st.com> Signed-off-by: Giuseppe Cavallaro <peppe.cavallaro@st.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
eb0dc4bb2e
commit
61b8013a11
2 changed files with 6 additions and 3 deletions
|
@ -557,9 +557,11 @@ static void free_dma_desc_resources(struct stmmac_priv *priv)
|
|||
*/
|
||||
static void stmmac_dma_operation_mode(struct stmmac_priv *priv)
|
||||
{
|
||||
if (likely((priv->plat->tx_coe) && (!priv->no_csum_insertion))) {
|
||||
/* In case of GMAC, SF mode has to be enabled
|
||||
* to perform the TX COE. This depends on:
|
||||
if (likely(priv->plat->force_sf_dma_mode ||
|
||||
((priv->plat->tx_coe) && (!priv->no_csum_insertion)))) {
|
||||
/*
|
||||
* In case of GMAC, SF mode can be enabled
|
||||
* to perform the TX COE in HW. This depends on:
|
||||
* 1) TX COE if actually supported
|
||||
* 2) There is no bugged Jumbo frame support
|
||||
* that needs to not insert csum in the TDES.
|
||||
|
|
|
@ -40,6 +40,7 @@ struct plat_stmmacenet_data {
|
|||
int tx_coe;
|
||||
int bugged_jumbo;
|
||||
int pmt;
|
||||
int force_sf_dma_mode;
|
||||
void (*fix_mac_speed)(void *priv, unsigned int speed);
|
||||
void (*bus_setup)(void __iomem *ioaddr);
|
||||
int (*init)(struct platform_device *pdev);
|
||||
|
|
Loading…
Reference in a new issue