u-boot/common
Vaishnav Achath cd2f9031e4 spl: spl_spi: add spi_nor_remove() to soft reset flash
On probe, the SPI NOR core will put a flash in 8D mode if it
supports it. But Linux as of now expects to get the flash in
1S mode. Handing the flash to Linux in Octal DTR mode means
the kernel will fail to detect the flash.

This commit adds an option to soft reset the flash after
spl_spi_load_image() so that the flash can be reset to 1S mode
and subsequent spi-nor probe in Linux does not fail, since
spl_spi_load_image() performs spi_flash_probe() the remove is
added after completion loading images in spi_flash_probe() itself.

Tested on J721E EVM with 5.10 Linux kernel.

Linux spi-nor probe without the fix:
root@j7-evm:~# dmesg | grep spi-nor
[    4.928023] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
[    4.934938] spi-nor: probe of spi0.0 failed with error -2

Linux spi-nor probe with the fix:
root@j7-evm:~# dmesg | grep spi-nor
[    4.904484] spi-nor spi0.0: mt35xu512aba (65536 Kbytes)

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Acked-by: Jagan Teki <jagan@amarulasolutions.com>
2022-07-18 19:15:19 +05:30
..
eeprom SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
init board_init: Do not reserve MALLOC_F area on stack if non-zero MALLOC_F_ADDR 2022-07-08 12:20:28 -04:00
spl spl: spl_spi: add spi_nor_remove() to soft reset flash 2022-07-18 19:15:19 +05:30
autoboot.c env: Move the doc comment to the code 2022-04-07 16:50:53 -04:00
avb_verify.c avb: Fix error when partition not found 2021-03-17 12:50:19 -04:00
bloblist.c bloblist: Update to use conditional value 2022-02-08 23:07:59 -05:00
board_f.c lcd: Remove legacy CONFIG_FB_ADDR code 2022-07-05 17:04:40 -04:00
board_info.c board-info: Call sysinfo_detect() before sysinfo_get_str() 2021-07-14 16:48:00 -04:00
board_r.c common/board_r.c: drop legacy and unused bi_enetaddr 2022-06-06 18:01:21 -04:00
bootstage.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
bouncebuf.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
cli.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
cli_hush.c cli: slighly more clear error messages 2021-05-17 17:06:42 -04:00
cli_readline.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
cli_simple.c cli: Support macro processing with a fixed-size buffer 2020-12-04 16:10:01 -05:00
command.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
console.c common/console.c: use CONFIG_VAL() with PRE_CON_BUF_* variables 2022-05-11 09:22:24 -04:00
cros_ec.c common: Drop log.h from common header 2020-05-18 21:19:18 -04:00
ddr_spd.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dfu.c dfu: add support for the dfu_alt_info reintialization from the flashed script 2021-01-31 14:08:56 +01:00
dlmalloc.c malloc: Annotate allocator for valgrind 2022-04-11 10:00:30 -04:00
dlmalloc.src Consolidate bool type 2013-04-01 16:33:52 -04:00
edid.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
event.c event: fix static events for CONFIG_NEEDS_MANUAL_RELOC 2022-06-06 18:01:20 -04:00
exports.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
fdt_simplefb.c common: add fdt_simplefb_enable_and_mem_rsv function 2021-11-30 16:43:28 +01:00
fdt_support.c fdt: Add U-Boot version to chosen node 2022-06-03 11:15:24 -04:00
flash.c mtd: cfi: introduce CFI_FLASH_BANKS 2022-01-21 14:01:35 -05:00
hash.c doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
hwconfig.c hwconfig: Allow to compile it without env support 2022-04-26 17:18:39 +05:30
iomux.c IOMUX: Fix buffer overflow in iomux_replace_device() 2021-04-27 08:05:30 -04:00
iotrace.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
kallsyms.c global: Convert simple_strtoul() with hex to hextoul() 2021-08-02 13:32:14 -04:00
Kconfig spl: Ensure all SPL symbols in Kconfig have some SPL dependency 2022-07-07 09:29:08 -04:00
kgdb.c common: board_r: drop initr_kgdb wrapper 2022-01-18 08:31:02 -05:00
kgdb_stubs.c common: Drop asm/ptrace.h from common header 2020-05-18 21:19:23 -04:00
lcd.c video: Drop CONFIG_LCD_BMP_RLE8 2022-03-28 20:30:33 +02:00
lcd_console.c WS cleanup: remove trailing empty lines 2021-09-30 08:08:56 -04:00
lcd_console_rotation.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
log.c event: Add basic support for events 2022-03-10 08:28:36 -05:00
log_console.c log: Allow padding of the function name 2021-07-21 10:27:35 -06:00
log_syslog.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
main.c efi_loader: split efi_init_obj_list() into two stages 2022-04-23 22:05:41 +02:00
Makefile common: usb: Update logic for usb.o, usb_hub.o and usb_storage.o 2022-06-28 17:11:48 -04:00
malloc_simple.c malloc: Annotate allocator for valgrind 2022-04-11 10:00:30 -04:00
memsize.c common: Drop asm/global_data.h from common header 2021-02-02 15:33:42 -05:00
menu.c bootmenu: factor out the user input handling 2022-05-07 23:17:26 +02:00
miiphyutil.c Convert CONFIG_PHY_RESET_DELAY to Kconfig 2022-03-25 12:01:15 +00:00
qfw.c x86: qemu: move QFW to its own uclass 2021-04-12 17:44:55 -04:00
s_record.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
scp03.c common: SCP03 control (enable and provision of keys) 2021-03-13 13:14:52 -05:00
splash.c video: Convert CONFIG_VIDEO_LOGO to Kconfig 2021-12-26 23:24:46 +01:00
splash_source.c video: Support virtio devices with the splash screen 2021-12-26 23:33:24 +01:00
stackprot.c Add support for stack-protector 2021-04-20 07:31:12 -04:00
stdio.c video: Drop references to CONFIG_VIDEO et al 2022-03-28 20:17:07 +02:00
system_map.c Add support for Linux-like kallsysms 2009-06-12 20:45:48 +02:00
update.c mtd: cfi: introduce CFI_FLASH_BANKS 2022-01-21 14:01:35 -05:00
usb.c Convert CONFIG_USB_MAX_CONTROLLER_COUNT to Kconfig 2022-06-28 17:11:48 -04:00
usb_hub.c usb: hub: introduce HUB_DEBOUNCE_TIMEOUT 2022-07-12 21:59:54 +02:00
usb_kbd.c usb: kbd: allow probing even if usbkbd not in stdin 2022-07-12 21:59:54 +02:00
usb_storage.c bootstd: usb: Add a bootdev driver 2022-04-25 10:00:04 -04:00
xyzModem.c xyz-modem: Allow to cancel transfer also by CTRL+C 2021-09-03 14:32:41 -04:00