diff options
author | Benoît Thébaudeau <benoit.thebaudeau@advansee.com> | 2013-04-23 10:17:40 +0000 |
---|---|---|
committer | Ye.Li <B37916@freescale.com> | 2014-01-06 14:04:26 +0800 |
commit | 3128af60873243691705f33156c54c27144d808e (patch) | |
tree | e0eff31759305b8d8304d7b821920379c18ea7a1 /include | |
parent | 75e45a284361b8b04d74bf7dd0d2300611171c27 (diff) | |
download | u-boot-imx-3128af60873243691705f33156c54c27144d808e.zip u-boot-imx-3128af60873243691705f33156c54c27144d808e.tar.gz u-boot-imx-3128af60873243691705f33156c54c27144d808e.tar.bz2 |
Add fuse API and commands
This can be useful for fuse-like hardware, OTP SoC options, etc.
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
(cherry picked from commit ccca7dfd0273af41e5b4bdec7f8731b177a20fde)
Signed-off-by: Ye.Li <B37916@freescale.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/config_cmd_all.h | 1 | ||||
-rw-r--r-- | include/fuse.h | 44 |
2 files changed, 45 insertions, 0 deletions
diff --git a/include/config_cmd_all.h b/include/config_cmd_all.h index 53a2f05..d847069 100644 --- a/include/config_cmd_all.h +++ b/include/config_cmd_all.h @@ -40,6 +40,7 @@ #define CONFIG_CMD_FDOS /* Floppy DOS support */ #define CONFIG_CMD_FLASH /* flinfo, erase, protect */ #define CONFIG_CMD_FPGA /* FPGA configuration Support */ +#define CONFIG_CMD_FUSE /* Device fuse support */ #define CONFIG_CMD_GETTIME /* Get time since boot */ #define CONFIG_CMD_HASH /* calculate hash / digest */ #define CONFIG_CMD_HWFLOW /* RTS/CTS hw flow control */ diff --git a/include/fuse.h b/include/fuse.h new file mode 100644 index 0000000..b964137 --- /dev/null +++ b/include/fuse.h @@ -0,0 +1,44 @@ +/* + * (C) Copyright 2009-2013 ADVANSEE + * Benoît Thébaudeau <benoit.thebaudeau@advansee.com> + * + * Based on the mpc512x iim code: + * Copyright 2008 Silicon Turnkey Express, Inc. + * Martha Marx <mmarx@silicontkx.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef _FUSE_H_ +#define _FUSE_H_ + +/* + * Read/Sense/Program/Override interface: + * bank: Fuse bank + * word: Fuse word within the bank + * val: Value to read/write + * + * Returns: 0 on success, not 0 on failure + */ +int fuse_read(u32 bank, u32 word, u32 *val); +int fuse_sense(u32 bank, u32 word, u32 *val); +int fuse_prog(u32 bank, u32 word, u32 val); +int fuse_override(u32 bank, u32 word, u32 val); + +#endif /* _FUSE_H_ */ |