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