diff options
author | Tom Rini <trini@konsulko.com> | 2020-08-06 20:57:55 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-08-06 20:57:55 -0400 |
commit | ce2724909b07737030666b2046222f47f2d9feb8 (patch) | |
tree | ee655d923cfdfd5d4a273f75db4ec3d3f314fe28 /drivers | |
parent | 99c69538093143984edf0bcebdadc0a6d767c0a4 (diff) | |
parent | 276b6c943a9b8166666b808c64d8a1deefdccbb3 (diff) |
Merge branch '2020-08-06-Kconfig-sram-options'
- Migrate a few SRAM related options to Kconfig, related cleanups.
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/block/blk-uclass.c | 9 | ||||
-rw-r--r-- | drivers/block/blkcache.c | 15 | ||||
-rw-r--r-- | drivers/serial/serial-uclass.c | 4 | ||||
-rw-r--r-- | drivers/serial/serial.c | 4 |
4 files changed, 19 insertions, 13 deletions
diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c index b19375cbc8..b46a1ac8d2 100644 --- a/drivers/block/blk-uclass.c +++ b/drivers/block/blk-uclass.c @@ -644,11 +644,12 @@ int blk_unbind_all(int if_type) static int blk_post_probe(struct udevice *dev) { -#if defined(CONFIG_PARTITIONS) && defined(CONFIG_HAVE_BLOCK_DEVICE) - struct blk_desc *desc = dev_get_uclass_platdata(dev); + if (IS_ENABLED(CONFIG_PARTITIONS) && + IS_ENABLED(CONFIG_HAVE_BLOCK_DEVICE)) { + struct blk_desc *desc = dev_get_uclass_platdata(dev); - part_init(desc); -#endif + part_init(desc); + } return 0; } diff --git a/drivers/block/blkcache.c b/drivers/block/blkcache.c index b6fc72fe98..eca66198ed 100644 --- a/drivers/block/blkcache.c +++ b/drivers/block/blkcache.c @@ -12,6 +12,10 @@ #include <linux/ctype.h> #include <linux/list.h> +#ifdef CONFIG_NEEDS_MANUAL_RELOC +DECLARE_GLOBAL_DATA_PTR; +#endif + struct block_cache_node { struct list_head lh; int iftype; @@ -22,21 +26,20 @@ struct block_cache_node { char *cache; }; -#ifndef CONFIG_M68K static LIST_HEAD(block_cache); -#else -static struct list_head block_cache; -#endif static struct block_cache_stats _stats = { .max_blocks_per_entry = 8, .max_entries = 32 }; -#ifdef CONFIG_M68K +#ifdef CONFIG_NEEDS_MANUAL_RELOC int blkcache_init(void) { - INIT_LIST_HEAD(&block_cache); + struct list_head *head = &block_cache; + + head->next = (uintptr_t)head->next + gd->reloc_off; + head->prev = (uintptr_t)head->prev + gd->reloc_off; return 0; } diff --git a/drivers/serial/serial-uclass.c b/drivers/serial/serial-uclass.c index a0af0e6bfd..0027625ebf 100644 --- a/drivers/serial/serial-uclass.c +++ b/drivers/serial/serial-uclass.c @@ -170,9 +170,9 @@ int serial_init(void) } /* Called after relocation */ -void serial_initialize(void) +int serial_initialize(void) { - serial_init(); + return serial_init(); } static void _serial_putc(struct udevice *dev, char ch) diff --git a/drivers/serial/serial.c b/drivers/serial/serial.c index da017dc5b3..53358acb81 100644 --- a/drivers/serial/serial.c +++ b/drivers/serial/serial.c @@ -170,7 +170,7 @@ void serial_register(struct serial_device *dev) * serial port to the serial core. That serial port is then used as a * default output. */ -void serial_initialize(void) +int serial_initialize(void) { atmel_serial_initialize(); mcf_serial_initialize(); @@ -183,6 +183,8 @@ void serial_initialize(void) mtk_serial_initialize(); serial_assign(default_serial_console()->name); + + return 0; } static int serial_stub_start(struct stdio_dev *sdev) |