fsl_srio.h 859 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2011-2012 Freescale Semiconductor, Inc.
  4. */
  5. #ifndef _FSL_SRIO_H_
  6. #define _FSL_SRIO_H_
  7. #include <linux/log2.h>
  8. enum atmu_size {
  9. ATMU_SIZE_4K = 0xb,
  10. ATMU_SIZE_8K,
  11. ATMU_SIZE_16K,
  12. ATMU_SIZE_32K,
  13. ATMU_SIZE_64K,
  14. ATMU_SIZE_128K,
  15. ATMU_SIZE_256K,
  16. ATMU_SIZE_512K,
  17. ATMU_SIZE_1M,
  18. ATMU_SIZE_2M,
  19. ATMU_SIZE_4M,
  20. ATMU_SIZE_8M,
  21. ATMU_SIZE_16M,
  22. ATMU_SIZE_32M,
  23. ATMU_SIZE_64M,
  24. ATMU_SIZE_128M,
  25. ATMU_SIZE_256M,
  26. ATMU_SIZE_512M,
  27. ATMU_SIZE_1G,
  28. ATMU_SIZE_2G,
  29. ATMU_SIZE_4G,
  30. ATMU_SIZE_8G,
  31. ATMU_SIZE_16G,
  32. ATMU_SIZE_32G,
  33. ATMU_SIZE_64G,
  34. };
  35. #define atmu_size_mask(sz) (__ilog2_u64(sz) - 1)
  36. #define atmu_size_bytes(x) (1ULL << ((x & 0x3f) + 1))
  37. extern void srio_init(void);
  38. #ifdef CONFIG_FSL_CORENET
  39. extern void srio_boot_master(int port);
  40. extern void srio_boot_master_release_slave(int port);
  41. #endif
  42. #endif