summaryrefslogtreecommitdiff
path: root/net/tftp.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2022-07-23 13:04:54 -0400
committerTom Rini <trini@konsulko.com>2022-08-04 16:18:47 -0400
commit52938fc4f0ba06e030aa17bca4f72623ed709c7a (patch)
treec46f0a7cdb4aad9372f78fa6644371008512cba5 /net/tftp.c
parent6eaa0e4ac6d87591fbfaecdd1e3ae9b548063b1a (diff)
net: Remove CONFIG_SYS_DIRECT_FLASH_TFTP
No platforms enable the functionality to tftp directly to NOR flash, and this is discouraged by the documentation. Remove this code. Further, this highlights an oddity of the code. Un-indent the start of this function. Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Ramon Fried <rfried.dev@gmail.com> Signed-off-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'net/tftp.c')
-rw-r--r--net/tftp.c52
1 files changed, 13 insertions, 39 deletions
diff --git a/net/tftp.c b/net/tftp.c
index bfc4c9bde9c..451d73529f2 100644
--- a/net/tftp.c
+++ b/net/tftp.c
@@ -17,9 +17,6 @@
#include <asm/global_data.h>
#include <net/tftp.h>
#include "bootp.h"
-#ifdef CONFIG_SYS_DIRECT_FLASH_TFTP
-#include <flash.h>
-#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -158,47 +155,24 @@ static inline int store_block(int block, uchar *src, unsigned int len)
tftp_block_size;
ulong newsize = offset + len;
ulong store_addr = tftp_load_addr + offset;
-#ifdef CONFIG_SYS_DIRECT_FLASH_TFTP
- int i, rc = 0;
-
- for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; i++) {
- /* start address in flash? */
- if (flash_info[i].flash_id == FLASH_UNKNOWN)
- continue;
- if (store_addr >= flash_info[i].start[0]) {
- rc = 1;
- break;
- }
- }
-
- if (rc) { /* Flash is destination for this packet */
- rc = flash_write((char *)src, store_addr, len);
- if (rc) {
- flash_perror(rc);
- return rc;
- }
- } else
-#endif /* CONFIG_SYS_DIRECT_FLASH_TFTP */
- {
- void *ptr;
+ void *ptr;
#ifdef CONFIG_LMB
- ulong end_addr = tftp_load_addr + tftp_load_size;
+ ulong end_addr = tftp_load_addr + tftp_load_size;
- if (!end_addr)
- end_addr = ULONG_MAX;
+ if (!end_addr)
+ end_addr = ULONG_MAX;
- if (store_addr < tftp_load_addr ||
- store_addr + len > end_addr) {
- puts("\nTFTP error: ");
- puts("trying to overwrite reserved memory...\n");
- return -1;
- }
-#endif
- ptr = map_sysmem(store_addr, len);
- memcpy(ptr, src, len);
- unmap_sysmem(ptr);
+ if (store_addr < tftp_load_addr ||
+ store_addr + len > end_addr) {
+ puts("\nTFTP error: ");
+ puts("trying to overwrite reserved memory...\n");
+ return -1;
}
+#endif
+ ptr = map_sysmem(store_addr, len);
+ memcpy(ptr, src, len);
+ unmap_sysmem(ptr);
if (net_boot_file_size < newsize)
net_boot_file_size = newsize;