Changeset 8ae22c4 in rtems-libbsd for freebsd/sys/arm/ti/cpsw/if_cpsw.c


Ignore:
Timestamp:
Dec 19, 2018, 9:53:54 PM (19 months ago)
Author:
Christian Mauderer <christian.mauderer@…>
Branches:
b96abfd647154f10ea8f7fac68e25676636eded5, 7d194e5f55b4aad6abbd096c30d2dd22531c73cf, 6da0dda3255e2a49365aee6904fe00d4f2ca9d68
Children:
06e155a, 2b2563d
Parents:
736d651
git-author:
Christian Mauderer <christian.mauderer@…> (12/19/18 21:53:54)
git-committer:
Sebastian Huber <sebastian.huber@…> (12/20/18 12:36:34)
Message:

freebsd/if_cpsw: Port.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • freebsd/sys/arm/ti/cpsw/if_cpsw.c

    r736d651 r8ae22c4  
    376376#define cpsw_cpdma_bd_offset(i) (CPSW_CPPI_RAM_OFFSET + ((i)*16))
    377377
     378#ifdef __rtems__
     379/* Missing in the bus.h provided by rtems. */
     380#define BUS_SPACE_PHYSADDR(res, offs) \
     381        ((u_int)(rman_get_start(res)+(offs)))
     382#endif /* __rtems__ */
    378383#define cpsw_cpdma_bd_paddr(sc, slot)                                   \
    379384        BUS_SPACE_PHYSADDR(sc->mem_res, slot->bd_offset)
     
    17521757                }
    17531758
     1759#ifndef __rtems__
    17541760                bus_dmamap_sync(sc->mbuf_dtag, slot->dmamap, BUS_DMASYNC_PREREAD);
     1761#endif /* __rtems__ */
    17551762
    17561763                /* Create and submit new rx descriptor. */
     
    17641771                bd.pktlen = bd.buflen;
    17651772                bd.flags = CPDMA_BD_OWNER;
     1773#ifdef __rtems__
     1774                rtems_cache_invalidate_multiple_data_lines(
     1775                    seg->ds_addr, bd.buflen);
     1776#endif /* __rtems__ */
    17661777                cpsw_cpdma_write_bd(sc, slot, &bd);
    17671778                ++added;
     
    18771888                }
    18781889
     1890#ifndef __rtems__
    18791891                bus_dmamap_sync(sc->swsc->mbuf_dtag, slot->dmamap,
    18801892                                BUS_DMASYNC_PREWRITE);
     1893#endif /* __rtems__ */
    18811894
    18821895                CPSW_DEBUGF(sc->swsc,
     
    19111924                        bd.flags |= ((sc->unit + 1) & CPDMA_BD_PORT_MASK);
    19121925                }
     1926#ifdef __rtems__
     1927                rtems_cache_flush_multiple_data_lines((void *)segs[0].ds_addr,
     1928                    segs[0].ds_len);
     1929#endif /* __rtems__ */
    19131930                for (seg = 1; seg < nsegs; ++seg) {
    19141931                        /* Save the previous buffer (which isn't EOP) */
     
    19291946                        bd.pktlen = 0;
    19301947                        bd.flags = CPDMA_BD_OWNER;
     1948#ifdef __rtems__
     1949                        rtems_cache_flush_multiple_data_lines(
     1950                            (void *)segs[seg].ds_addr, segs[seg].ds_len);
     1951#endif /* __rtems__ */
    19311952                }
    19321953
Note: See TracChangeset for help on using the changeset viewer.