• Grygorii Strashko's avatar
    net: ethernet: ti: cpsw: add support for descs pool size configuration · 90225bf0
    Grygorii Strashko authored
    The CPSW CPDMA can process buffer descriptors placed as in internal
    CPPI RAM as in DDR. This patch adds support in CPSW and CPDMA for
    descs_pool_size mudule parameter, which defines total number of CPDMA CPPI
    descriptors to be used for both ingress/egress packets processing:
     - memory size, required for CPDMA descriptor pool, is calculated basing
    on number of descriptors specified by user in descs_pool_size and
    CPDMA descriptor size and allocated from coherent memory (CMA area);
     - CPDMA descriptor pool will be allocated in DDR if pool memory size >
    internal CPPI RAM or use internal CPPI RAM otherwise;
     - if descs_pool_size not specified in DT - the default value 256 will
    be used which will allow to place CPDMA descriptors pool into the
    internal CPPI RAM (current default behaviour);
     - CPDMA will ignore descs_pool_size if descs_pool_size = 0 for
    backward comaptiobility with davinci_emac.
    
    descs_pool_size is boot time setting and can't be changed once
    CPSW/CPDMA is initialized.
    Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    90225bf0
davinci_cpdma.c 32.9 KB