diff options
author | Tom Rini <trini@konsulko.com> | 2020-12-14 18:57:57 -0500 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-12-14 18:57:57 -0500 |
commit | 8351a29d2df18c92d8e365cfa848218c3859f3d2 (patch) | |
tree | 5d29001be9accfb8029df9d9ed78fba196ee07b9 /cmd | |
parent | ddaa94978583d07ec515e7226e397221d8cc44c8 (diff) | |
parent | b7bbd553de0d9752f919dfc616f560f6f2504c14 (diff) |
Merge tag 'dm-pull-14dec20' of git://git.denx.de/u-boot-dm into next
Driver model tidy-up for livetree
Driver model big rename for consistency
Python 3 clean-ups for patman
Update sandbox serial driver to use membuff
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/Kconfig | 4 | ||||
-rw-r--r-- | cmd/Makefile | 1 | ||||
-rw-r--r-- | cmd/button.c | 2 | ||||
-rw-r--r-- | cmd/cpu.c | 2 | ||||
-rw-r--r-- | cmd/demo.c | 4 | ||||
-rw-r--r-- | cmd/host.c | 2 | ||||
-rw-r--r-- | cmd/i2c.c | 4 | ||||
-rw-r--r-- | cmd/led.c | 2 | ||||
-rw-r--r-- | cmd/lsblk.c | 2 | ||||
-rw-r--r-- | cmd/pci.c | 4 | ||||
-rw-r--r-- | cmd/regulator.c | 50 | ||||
-rw-r--r-- | cmd/remoteproc.c | 2 | ||||
-rw-r--r-- | cmd/sandbox/Makefile | 3 | ||||
-rw-r--r-- | cmd/sandbox/exception.c | 41 |
14 files changed, 84 insertions, 39 deletions
diff --git a/cmd/Kconfig b/cmd/Kconfig index 98cf543ead..da86a940ce 100644 --- a/cmd/Kconfig +++ b/cmd/Kconfig @@ -1691,7 +1691,7 @@ config CMD_EFIDEBUG config CMD_EXCEPTION bool "exception - raise exception" - depends on ARM || RISCV || X86 + depends on ARM || RISCV || SANDBOX || X86 help Enable the 'exception' command which allows to raise an exception. @@ -1917,7 +1917,7 @@ config CMD_REGULATOR The '-f' (force) option can be used for set the value which exceeds the limits, which are found in device-tree and are kept in regulator's - uclass platdata structure. + uclass plat structure. endmenu diff --git a/cmd/Makefile b/cmd/Makefile index dd86675bf2..5b3400a840 100644 --- a/cmd/Makefile +++ b/cmd/Makefile @@ -193,6 +193,7 @@ obj-$(CONFIG_CMD_AVB) += avb.o obj-$(CONFIG_ARM) += arm/ obj-$(CONFIG_RISCV) += riscv/ +obj-$(CONFIG_SANDBOX) += sandbox/ obj-$(CONFIG_X86) += x86/ obj-$(CONFIG_ARCH_MVEBU) += mvebu/ diff --git a/cmd/button.c b/cmd/button.c index 64c5a8fa04..1b45d0a2a0 100644 --- a/cmd/button.c +++ b/cmd/button.c @@ -37,7 +37,7 @@ static int list_buttons(void) for (uclass_find_first_device(UCLASS_BUTTON, &dev); dev; uclass_find_next_device(&dev)) { - struct button_uc_plat *plat = dev_get_uclass_platdata(dev); + struct button_uc_plat *plat = dev_get_uclass_plat(dev); if (!plat->label) continue; @@ -26,7 +26,7 @@ static int print_cpu_list(bool detail) for (uclass_first_device(UCLASS_CPU, &dev); dev; uclass_next_device(&dev)) { - struct cpu_platdata *plat = dev_get_parent_platdata(dev); + struct cpu_plat *plat = dev_get_parent_plat(dev); struct cpu_info info; bool first = true; int ret, i; diff --git a/cmd/demo.c b/cmd/demo.c index 7310aa2907..78a55f72b6 100644 --- a/cmd/demo.c +++ b/cmd/demo.c @@ -71,10 +71,10 @@ int do_demo_list(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) for (i = 0, ret = uclass_first_device(UCLASS_DEMO, &dev); dev; ret = uclass_next_device(&dev)) { - printf("entry %d - instance %08x, ops %08x, platdata %08x\n", + printf("entry %d - instance %08x, ops %08x, plat %08x\n", i++, (uint)map_to_sysmem(dev), (uint)map_to_sysmem(dev->driver->ops), - (uint)map_to_sysmem(dev_get_platdata(dev))); + (uint)map_to_sysmem(dev_get_plat(dev))); } return cmd_process_error(cmdtp, ret); diff --git a/cmd/host.c b/cmd/host.c index ff119da738..1d21f796ac 100644 --- a/cmd/host.c +++ b/cmd/host.c @@ -91,7 +91,7 @@ static int do_host_info(struct cmd_tbl *cmdtp, int flag, int argc, struct host_block_dev *host_dev; #ifdef CONFIG_BLK - host_dev = dev_get_platdata(blk_dev->bdev); + host_dev = dev_get_plat(blk_dev->bdev); #else host_dev = blk_dev->priv; #endif @@ -390,7 +390,7 @@ static int do_i2c_write(struct cmd_tbl *cmdtp, int flag, int argc, ret = i2c_set_chip_offset_len(dev, alen); if (ret) return i2c_report_err(ret, I2C_ERR_WRITE); - i2c_chip = dev_get_parent_platdata(dev); + i2c_chip = dev_get_parent_plat(dev); if (!i2c_chip) return i2c_report_err(ret, I2C_ERR_WRITE); #endif @@ -1707,7 +1707,7 @@ static void show_bus(struct udevice *bus) for (device_find_first_child(bus, &dev); dev; device_find_next_child(&dev)) { - struct dm_i2c_chip *chip = dev_get_parent_platdata(dev); + struct dm_i2c_chip *chip = dev_get_parent_plat(dev); printf(" %02x: %s, offset len %x, flags %x\n", chip->chip_addr, dev->name, chip->offset_len, @@ -54,7 +54,7 @@ static int list_leds(void) for (uclass_find_first_device(UCLASS_LED, &dev); dev; uclass_find_next_device(&dev)) { - struct led_uc_plat *plat = dev_get_uclass_platdata(dev); + struct led_uc_plat *plat = dev_get_uclass_plat(dev); if (!plat->label) continue; diff --git a/cmd/lsblk.c b/cmd/lsblk.c index 653dffce04..6a1c8f5ef4 100644 --- a/cmd/lsblk.c +++ b/cmd/lsblk.c @@ -34,7 +34,7 @@ static int do_lsblk(struct cmd_tbl *cmdtp, int flag, int argc, char * const argv uclass_foreach_dev(udev, uc) { if (udev->driver != entry) continue; - desc = dev_get_uclass_platdata(udev); + desc = dev_get_uclass_plat(udev); printf("%c %s %u", i ? ',' : ':', blk_get_if_type_name(desc->if_type), desc->devnum); @@ -339,9 +339,9 @@ static void pciinfo(struct udevice *bus, bool short_listing) for (device_find_first_child(bus, &dev); dev; device_find_next_child(&dev)) { - struct pci_child_platdata *pplat; + struct pci_child_plat *pplat; - pplat = dev_get_parent_platdata(dev); + pplat = dev_get_parent_plat(dev); if (short_listing) { printf("%02x.%02x.%02x ", bus->seq, PCI_DEV(pplat->devfn), PCI_FUNC(pplat->devfn)); diff --git a/cmd/regulator.c b/cmd/regulator.c index aa06c9a9fc..60a70036d6 100644 --- a/cmd/regulator.c +++ b/cmd/regulator.c @@ -25,7 +25,7 @@ static int failure(int ret) static int do_dev(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; const char *name; int ret = -ENXIO; @@ -43,7 +43,7 @@ static int do_dev(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) return CMD_RET_USAGE; } - uc_pdata = dev_get_uclass_platdata(currdev); + uc_pdata = dev_get_uclass_plat(currdev); if (!uc_pdata) { printf("%s: no regulator platform data!\n", currdev->name); return failure(ret); @@ -55,9 +55,9 @@ static int do_dev(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) return CMD_RET_SUCCESS; } -static int curr_dev_and_platdata(struct udevice **devp, - struct dm_regulator_uclass_platdata **uc_pdata, - bool allow_type_fixed) +static int curr_dev_and_plat(struct udevice **devp, + struct dm_regulator_uclass_plat **uc_pdata, + bool allow_type_fixed) { *devp = NULL; *uc_pdata = NULL; @@ -69,7 +69,7 @@ static int curr_dev_and_platdata(struct udevice **devp, *devp = currdev; - *uc_pdata = dev_get_uclass_platdata(*devp); + *uc_pdata = dev_get_uclass_plat(*devp); if (!*uc_pdata) { pr_err("Regulator: %s - missing platform data!\n", currdev->name); return CMD_RET_FAILURE; @@ -86,7 +86,7 @@ static int curr_dev_and_platdata(struct udevice **devp, static int do_list(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; struct udevice *dev; int ret; @@ -100,7 +100,7 @@ static int do_list(struct cmd_tbl *cmdtp, int flag, int argc, if (ret) continue; - uc_pdata = dev_get_uclass_platdata(dev); + uc_pdata = dev_get_uclass_plat(dev); printf("| %-*.*s| %-*.*s| %s\n", LIMIT_DEVNAME, LIMIT_DEVNAME, dev->name, LIMIT_OFNAME, LIMIT_OFNAME, uc_pdata->name, @@ -143,14 +143,14 @@ static int do_info(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; struct dm_regulator_mode *modes; const char *parent_uc; int mode_count; int ret; int i; - ret = curr_dev_and_platdata(&dev, &uc_pdata, true); + ret = curr_dev_and_plat(&dev, &uc_pdata, true); if (ret) return ret; @@ -183,7 +183,7 @@ static int do_info(struct cmd_tbl *cmdtp, int flag, int argc, } static void do_status_detail(struct udevice *dev, - struct dm_regulator_uclass_platdata *uc_pdata) + struct dm_regulator_uclass_plat *uc_pdata) { int current, value, mode; const char *mode_name; @@ -207,12 +207,12 @@ static void do_status_detail(struct udevice *dev, static void do_status_line(struct udevice *dev) { - struct dm_regulator_uclass_platdata *pdata; + struct dm_regulator_uclass_plat *pdata; int current, value, mode; const char *mode_name; bool enabled; - pdata = dev_get_uclass_platdata(dev); + pdata = dev_get_uclass_plat(dev); enabled = regulator_get_enable(dev); value = regulator_get_value(dev); current = regulator_get_current(dev); @@ -237,12 +237,12 @@ static void do_status_line(struct udevice *dev) static int do_status(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; struct udevice *dev; int ret; if (currdev && (argc < 2 || strcmp(argv[1], "-a"))) { - ret = curr_dev_and_platdata(&dev, &uc_pdata, true); + ret = curr_dev_and_plat(&dev, &uc_pdata, true); if (ret) return CMD_RET_FAILURE; do_status_detail(dev, uc_pdata); @@ -263,12 +263,12 @@ static int do_value(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; int value; int force; int ret; - ret = curr_dev_and_platdata(&dev, &uc_pdata, argc == 1); + ret = curr_dev_and_plat(&dev, &uc_pdata, argc == 1); if (ret) return ret; @@ -313,11 +313,11 @@ static int do_current(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; int current; int ret; - ret = curr_dev_and_platdata(&dev, &uc_pdata, argc == 1); + ret = curr_dev_and_plat(&dev, &uc_pdata, argc == 1); if (ret) return ret; @@ -353,11 +353,11 @@ static int do_mode(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; int mode; int ret; - ret = curr_dev_and_platdata(&dev, &uc_pdata, false); + ret = curr_dev_and_plat(&dev, &uc_pdata, false); if (ret) return ret; @@ -389,10 +389,10 @@ static int do_enable(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; int ret; - ret = curr_dev_and_platdata(&dev, &uc_pdata, true); + ret = curr_dev_and_plat(&dev, &uc_pdata, true); if (ret) return ret; @@ -409,10 +409,10 @@ static int do_disable(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { struct udevice *dev; - struct dm_regulator_uclass_platdata *uc_pdata; + struct dm_regulator_uclass_plat *uc_pdata; int ret; - ret = curr_dev_and_platdata(&dev, &uc_pdata, true); + ret = curr_dev_and_plat(&dev, &uc_pdata, true); if (ret) return ret; diff --git a/cmd/remoteproc.c b/cmd/remoteproc.c index e8b9178e74..02d44d4f0a 100644 --- a/cmd/remoteproc.c +++ b/cmd/remoteproc.c @@ -32,7 +32,7 @@ static int print_remoteproc_list(void) struct dm_rproc_uclass_pdata *uc_pdata; const struct dm_rproc_ops *ops = rproc_get_ops(dev); - uc_pdata = dev_get_uclass_platdata(dev); + uc_pdata = dev_get_uclass_plat(dev); /* Do not print if rproc is not probed */ if (!(dev->flags & DM_FLAG_ACTIVATED)) diff --git a/cmd/sandbox/Makefile b/cmd/sandbox/Makefile new file mode 100644 index 0000000000..24df023ece --- /dev/null +++ b/cmd/sandbox/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0+ + +obj-$(CONFIG_CMD_EXCEPTION) += exception.o diff --git a/cmd/sandbox/exception.c b/cmd/sandbox/exception.c new file mode 100644 index 0000000000..1aa1d673ae --- /dev/null +++ b/cmd/sandbox/exception.c @@ -0,0 +1,41 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * The 'exception' command can be used for testing exception handling. + * + * Copyright (c) 2020, Heinrich Schuchardt <xypron.glpk@gmx.de> + */ + +#include <common.h> +#include <command.h> + +static int do_sigsegv(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) +{ + u8 *ptr = NULL; + + *ptr = 0; + return CMD_RET_FAILURE; +} + +static int do_undefined(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) +{ + asm volatile (".word 0xffff\n"); + return CMD_RET_FAILURE; +} + +static struct cmd_tbl cmd_sub[] = { + U_BOOT_CMD_MKENT(sigsegv, CONFIG_SYS_MAXARGS, 1, do_sigsegv, + "", ""), + U_BOOT_CMD_MKENT(undefined, CONFIG_SYS_MAXARGS, 1, do_undefined, + "", ""), +}; + +static char exception_help_text[] = + "<ex>\n" + " The following exceptions are available:\n" + " undefined - undefined instruction\n" + " sigsegv - illegal memory access\n" + ; + +#include <exception.h> |