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