summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2018-07-19 11:48:33 -0400
committerTom Rini <[email protected]>2018-07-19 11:48:33 -0400
commitf7e48c54b246c460503e90315d0cd50ccbd586c6 (patch)
tree836d7fd9f833b285645a33e457b74be6110a0e08 /common
parent1adbf2966adebe67de3dd17094749d387604194e (diff)
parent577012da71ea9dcf07272c7f458218aa8ab29984 (diff)
Merge tag 'xilinx-for-v2018.09' of git://git.denx.de/u-boot-microblaze
Xilinx changes for v2018.09 clk: - Fix zynqmp clock driver common: - Handle CMD_RET_USAGE in cmd_process_error - Use return macros in cmd_process_error - Fix duplication of CONFIG_SYS_PROMPT_HUSH_PS2 - Support watchdog in usb_kbd.c - Fix name usage in usb_kbd.c - Support systems with non zero memory start initialized from DT only gpio: - Add support for manual relocation in uclass - zynq - use live tree - zynq - fix match data reading - zynq - setup bank name - xilinx - convert driver to DM microblaze: - Use generic iounmap/ioremap implementations - Redesign reset logic with sysreset features - Use watchdog and gpio over DM - Remove unused macros and fix some checkpatch issues - Fix timer initialization not to be called twice serial: - zynq - Use platdata intead of priv data sysreset: - Add support for manual relocation in uclass - Add gpio-restart driver - Add microblaze soft reset driver watchdog: - Add support for aliases in uclass - Add support for manual relocation in uclass - Convert xilinx driver to DM - cadence - update info in the driver and not stop wdt in probe xilinx: - Enable LED gpio for some targets with gpio-leds DT node - Setup variables via Kconfig zynq: - Add support for watchdog aliases - Add support for mini nand/nor configurations - Wire FPGA initalization in SPL zynqmp: - Enable mass storage for zcu100 - Handle external pmufw files - Add support for secure images - Some Kconfig movements and alignments - Add support for watchdog aliases - Use subcommands style for platform command - Add mmio_read/write platform commands - DT updates - Add support for mini qspi configuration
Diffstat (limited to 'common')
-rw-r--r--common/board_f.c4
-rw-r--r--common/command.c7
-rw-r--r--common/spl/spl_fit.c1
-rw-r--r--common/usb_kbd.c9
4 files changed, 14 insertions, 7 deletions
diff --git a/common/board_f.c b/common/board_f.c
index e943347ce3d..88d770071c3 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -281,9 +281,9 @@ static int setup_dest_addr(void)
gd->ram_size -= CONFIG_SYS_MEM_TOP_HIDE;
#endif
#ifdef CONFIG_SYS_SDRAM_BASE
- gd->ram_top = CONFIG_SYS_SDRAM_BASE;
+ gd->ram_base = CONFIG_SYS_SDRAM_BASE;
#endif
- gd->ram_top += get_effective_memsize();
+ gd->ram_top = gd->ram_base + get_effective_memsize();
gd->ram_top = board_get_usable_ram_top(gd->mon_len);
gd->relocaddr = gd->ram_top;
debug("Ram top: %08lX\n", (ulong)gd->ram_top);
diff --git a/common/command.c b/common/command.c
index 52d47c133c3..2433a89e0a8 100644
--- a/common/command.c
+++ b/common/command.c
@@ -547,10 +547,13 @@ enum command_ret_t cmd_process(int flag, int argc, char * const argv[],
int cmd_process_error(cmd_tbl_t *cmdtp, int err)
{
+ if (err == CMD_RET_USAGE)
+ return CMD_RET_USAGE;
+
if (err) {
printf("Command '%s' failed: Error %d\n", cmdtp->name, err);
- return 1;
+ return CMD_RET_FAILURE;
}
- return 0;
+ return CMD_RET_SUCCESS;
}
diff --git a/common/spl/spl_fit.c b/common/spl/spl_fit.c
index 5b51a28a086..9eabb1c1058 100644
--- a/common/spl/spl_fit.c
+++ b/common/spl/spl_fit.c
@@ -412,6 +412,7 @@ int spl_load_simple_fit(struct spl_image_info *spl_image,
printf("%s: Cannot load the FPGA: %i\n", __func__, ret);
return ret;
}
+ puts("FPGA image loaded from FIT\n");
node = -1;
}
#endif
diff --git a/common/usb_kbd.c b/common/usb_kbd.c
index 8b2fccf9ca4..fdeb2aed245 100644
--- a/common/usb_kbd.c
+++ b/common/usb_kbd.c
@@ -13,6 +13,7 @@
#include <malloc.h>
#include <memalign.h>
#include <stdio_dev.h>
+#include <watchdog.h>
#include <asm/byteorder.h>
#include <usb.h>
@@ -367,7 +368,7 @@ static int usb_kbd_testc(struct stdio_dev *sdev)
return 0;
kbd_testc_tms = get_timer(0);
#endif
- dev = stdio_get_by_name(DEVNAME);
+ dev = stdio_get_by_name(sdev->name);
usb_kbd_dev = (struct usb_device *)dev->priv;
data = usb_kbd_dev->privptr;
@@ -383,12 +384,14 @@ static int usb_kbd_getc(struct stdio_dev *sdev)
struct usb_device *usb_kbd_dev;
struct usb_kbd_pdata *data;
- dev = stdio_get_by_name(DEVNAME);
+ dev = stdio_get_by_name(sdev->name);
usb_kbd_dev = (struct usb_device *)dev->priv;
data = usb_kbd_dev->privptr;
- while (data->usb_in_pointer == data->usb_out_pointer)
+ while (data->usb_in_pointer == data->usb_out_pointer) {
+ WATCHDOG_RESET();
usb_kbd_poll_for_event(usb_kbd_dev);
+ }
if (data->usb_out_pointer == USB_KBD_BUFFER_LEN - 1)
data->usb_out_pointer = 0;