fsl_portals.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2009-2011 Freescale Semiconductor, Inc.
  4. */
  5. #ifndef _FSL_PORTALS_H_
  6. #define _FSL_PORTALS_H_
  7. /* entries must be in order and contiguous */
  8. enum fsl_dpaa_dev {
  9. FSL_HW_PORTAL_SEC,
  10. #ifdef CONFIG_SYS_DPAA_FMAN
  11. FSL_HW_PORTAL_FMAN1,
  12. #if (CONFIG_SYS_NUM_FMAN == 2)
  13. FSL_HW_PORTAL_FMAN2,
  14. #endif
  15. #endif
  16. FSL_HW_PORTAL_PME,
  17. #ifdef CONFIG_SYS_FSL_RAID_ENGINE
  18. FSL_HW_PORTAL_RAID_ENGINE,
  19. #endif
  20. #ifdef CONFIG_SYS_DPAA_RMAN
  21. FSL_HW_PORTAL_RMAN,
  22. #endif
  23. #ifdef CONFIG_SYS_DPAA_DCE
  24. FSL_HW_PORTAL_DCE,
  25. #endif
  26. };
  27. struct qportal_info {
  28. u16 dliodn; /* DQRR LIODN */
  29. u16 fliodn; /* frame data LIODN */
  30. u16 liodn_offset;
  31. u8 sdest;
  32. };
  33. #define SET_QP_INFO(dqrr, fdata, off, dest) \
  34. { .dliodn = dqrr, .fliodn = fdata, .liodn_offset = off, .sdest = dest }
  35. extern int get_dpaa_liodn(enum fsl_dpaa_dev dpaa_dev,
  36. u32 *liodns, int liodn_offset);
  37. extern struct qportal_info qp_info[];
  38. extern void fdt_portal(void *blob, const char *compat, const char *container,
  39. u64 addr, u32 size);
  40. #endif