1 /* SPDX-License-Identifier: GPL-2.0-or-later * << 2 /* 1 /* 3 * JZ4780 NAND/external memory controller (NEM 2 * JZ4780 NAND/external memory controller (NEMC) 4 * 3 * 5 * Copyright (c) 2015 Imagination Technologies 4 * Copyright (c) 2015 Imagination Technologies 6 * Author: Alex Smith <alex@alex-smith.me.uk> 5 * Author: Alex Smith <alex@alex-smith.me.uk> >> 6 * >> 7 * This program is free software; you can redistribute it and/or modify it >> 8 * under the terms of the GNU General Public License as published by the >> 9 * Free Software Foundation; either version 2 of the License, or (at your >> 10 * option) any later version. 7 */ 11 */ 8 12 9 #ifndef __LINUX_JZ4780_NEMC_H__ 13 #ifndef __LINUX_JZ4780_NEMC_H__ 10 #define __LINUX_JZ4780_NEMC_H__ 14 #define __LINUX_JZ4780_NEMC_H__ 11 15 12 #include <linux/types.h> 16 #include <linux/types.h> 13 17 14 struct device; 18 struct device; 15 19 16 /* 20 /* 17 * Number of NEMC banks. Note that there are a 21 * Number of NEMC banks. Note that there are actually 6, but they are numbered 18 * from 1. 22 * from 1. 19 */ 23 */ 20 #define JZ4780_NEMC_NUM_BANKS 7 24 #define JZ4780_NEMC_NUM_BANKS 7 21 25 22 /** 26 /** 23 * enum jz4780_nemc_bank_type - device types w 27 * enum jz4780_nemc_bank_type - device types which can be connected to a bank 24 * @JZ4780_NEMC_BANK_SRAM: SRAM 28 * @JZ4780_NEMC_BANK_SRAM: SRAM 25 * @JZ4780_NEMC_BANK_NAND: NAND 29 * @JZ4780_NEMC_BANK_NAND: NAND 26 */ 30 */ 27 enum jz4780_nemc_bank_type { 31 enum jz4780_nemc_bank_type { 28 JZ4780_NEMC_BANK_SRAM, 32 JZ4780_NEMC_BANK_SRAM, 29 JZ4780_NEMC_BANK_NAND, 33 JZ4780_NEMC_BANK_NAND, 30 }; 34 }; 31 35 32 extern unsigned int jz4780_nemc_num_banks(stru 36 extern unsigned int jz4780_nemc_num_banks(struct device *dev); 33 37 34 extern void jz4780_nemc_set_type(struct device 38 extern void jz4780_nemc_set_type(struct device *dev, unsigned int bank, 35 enum jz4780_n 39 enum jz4780_nemc_bank_type type); 36 extern void jz4780_nemc_assert(struct device * 40 extern void jz4780_nemc_assert(struct device *dev, unsigned int bank, 37 bool assert); 41 bool assert); 38 42 39 #endif /* __LINUX_JZ4780_NEMC_H__ */ 43 #endif /* __LINUX_JZ4780_NEMC_H__ */ 40 44
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.