X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=common%2Fflash.c;h=848f44e59dfdb349dec436e1f1176b5303633814;hb=b8e09898919e23c5d7f1934be7bf9a3a6f0deb0e;hp=0c57a3fcdde9b6bc777e6501721e1b0d4bc1f5c1;hpb=92daa4d2cff74d35a8b479c27a419025a464533f;p=platform%2Fkernel%2Fu-boot.git diff --git a/common/flash.c b/common/flash.c index 0c57a3f..848f44e 100644 --- a/common/flash.c +++ b/common/flash.c @@ -1,36 +1,18 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * (C) Copyright 2000 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. - * - * 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 */ /* #define DEBUG */ #include #include +#include +#include -#if !defined(CONFIG_SYS_NO_FLASH) #include -extern flash_info_t flash_info[]; /* info for FLASH chips */ - /*----------------------------------------------------------------------- * Functions */ @@ -42,7 +24,7 @@ extern flash_info_t flash_info[]; /* info for FLASH chips */ * If necessary you have to map the second bank at lower addresses. */ void -flash_protect (int flag, ulong from, ulong to, flash_info_t *info) +flash_protect(int flag, ulong from, ulong to, flash_info_t *info) { ulong b_end; short s_end; @@ -56,10 +38,10 @@ flash_protect (int flag, ulong from, ulong to, flash_info_t *info) s_end = info->sector_count - 1; /* index of last sector */ b_end = info->start[0] + info->size - 1; /* bank end address */ - debug ("flash_protect %s: from 0x%08lX to 0x%08lX\n", - (flag & FLAG_PROTECT_SET) ? "ON" : - (flag & FLAG_PROTECT_CLEAR) ? "OFF" : "???", - from, to); + debug("%s %s: from 0x%08lX to 0x%08lX\n", __func__, + (flag & FLAG_PROTECT_SET) ? "ON" : + (flag & FLAG_PROTECT_CLEAR) ? "OFF" : "???", + from, to); /* There is nothing to do if we have no data about the flash * or the protect range and flash range don't overlap. @@ -84,7 +66,7 @@ flash_protect (int flag, ulong from, ulong to, flash_info_t *info) #else info->protect[i] = 0; #endif /* CONFIG_SYS_FLASH_PROTECTION */ - debug ("protect off %d\n", i); + debug("protect off %d\n", i); } else if (flag & FLAG_PROTECT_SET) { #if defined(CONFIG_SYS_FLASH_PROTECTION) @@ -92,7 +74,7 @@ flash_protect (int flag, ulong from, ulong to, flash_info_t *info) #else info->protect[i] = 1; #endif /* CONFIG_SYS_FLASH_PROTECTION */ - debug ("protect on %d\n", i); + debug("protect on %d\n", i); } } } @@ -102,13 +84,12 @@ flash_protect (int flag, ulong from, ulong to, flash_info_t *info) */ flash_info_t * -addr2info (ulong addr) +addr2info(ulong addr) { -#ifndef CONFIG_SPD823TS flash_info_t *info; int i; - for (i=0, info = &flash_info[0]; iflash_id != FLASH_UNKNOWN && addr >= info->start[0] && /* WARNING - The '- 1' is needed if the flash @@ -120,7 +101,6 @@ addr2info (ulong addr) return (info); } } -#endif /* CONFIG_SPD823TS */ return (NULL); } @@ -131,7 +111,7 @@ addr2info (ulong addr) * and no protected sectors are hit. * Returns: * ERR_OK 0 - OK - * ERR_TIMOUT 1 - write timeout + * ERR_TIMEOUT 1 - write timeout * ERR_NOT_ERASED 2 - Flash not erased * ERR_PROTECTED 4 - target range includes protected sectors * ERR_INVAL 8 - target address not in Flash memory @@ -139,15 +119,12 @@ addr2info (ulong addr) * (only some targets require alignment) */ int -flash_write (char *src, ulong addr, ulong cnt) +flash_write(char *src, ulong addr, ulong cnt) { -#ifdef CONFIG_SPD823TS - return (ERR_TIMOUT); /* any other error codes are possible as well */ -#else int i; ulong end = addr + cnt - 1; - flash_info_t *info_first = addr2info (addr); - flash_info_t *info_last = addr2info (end ); + flash_info_t *info_first = addr2info(addr); + flash_info_t *info_last = addr2info(end); flash_info_t *info; __maybe_unused char *src_orig = src; __maybe_unused char *addr_orig = (char *)addr; @@ -197,18 +174,17 @@ flash_write (char *src, ulong addr, ulong cnt) #endif /* CONFIG_SYS_FLASH_VERIFY_AFTER_WRITE */ return (ERR_OK); -#endif /* CONFIG_SPD823TS */ } /*----------------------------------------------------------------------- */ -void flash_perror (int err) +void flash_perror(int err) { switch (err) { case ERR_OK: break; - case ERR_TIMOUT: + case ERR_TIMEOUT: puts ("Timeout writing to Flash\n"); break; case ERR_NOT_ERASED: @@ -240,7 +216,3 @@ void flash_perror (int err) break; } } - -/*----------------------------------------------------------------------- - */ -#endif /* !CONFIG_SYS_NO_FLASH */