[U-Boot] [RFC PATCH 1/2] common: Add new clk command
Simon Glass
sjg at chromium.org
Tue Dec 29 13:23:55 CET 2015
Hi Michal,
On 29 December 2015 at 01:33, Michal Simek <michal.simek at xilinx.com> wrote:
> Hi Simon,
>
> On 22.12.2015 05:21, Simon Glass wrote:
>> Hi Michal,
>>
>> On 22 January 2014 at 04:02, Michal Simek <michal.simek at xilinx.com> wrote:
>>> Command provides just dump subcommand for showing clock
>>> frequencies in a soc.
>>>
>>> Signed-off-by: Michal Simek <michal.simek at xilinx.com>
>>> ---
>>>
>>> README | 1 +
>>> common/Makefile | 1 +
>>> common/cmd_clk.c | 51 ++++++++++++++++++++++++++++++++++++++++++++++++
>>> include/clk.h | 6 ++++++
>>> include/config_cmd_all.h | 1 +
>>> 5 files changed, 60 insertions(+)
>>> create mode 100644 common/cmd_clk.c
>>> create mode 100644 include/clk.h
>>>
>>> diff --git a/README b/README
>>> index aea82be..0087649 100644
>>> --- a/README
>>> +++ b/README
>>> @@ -887,6 +887,7 @@ The following options need to be configured:
>>> CONFIG_CMD_BSP * Board specific commands
>>> CONFIG_CMD_BOOTD bootd
>>> CONFIG_CMD_CACHE * icache, dcache
>>> + CONFIG_CMD_CLK * clock command support
>>> CONFIG_CMD_CONSOLE coninfo
>>> CONFIG_CMD_CRC32 * crc32
>>> CONFIG_CMD_DATE * support for RTC, date/time...
>>> diff --git a/common/Makefile b/common/Makefile
>>> index d12cba5..a000e7d 100644
>>> --- a/common/Makefile
>>> +++ b/common/Makefile
>>> @@ -59,6 +59,7 @@ obj-$(CONFIG_CMD_BOOTLDR) += cmd_bootldr.o
>>> obj-$(CONFIG_CMD_BOOTSTAGE) += cmd_bootstage.o
>>> obj-$(CONFIG_CMD_CACHE) += cmd_cache.o
>>> obj-$(CONFIG_CMD_CBFS) += cmd_cbfs.o
>>> +obj-$(CONFIG_CMD_CLK) += cmd_clk.o
>>> obj-$(CONFIG_CMD_CONSOLE) += cmd_console.o
>>> obj-$(CONFIG_CMD_CPLBINFO) += cmd_cplbinfo.o
>>> obj-$(CONFIG_DATAFLASH_MMC_SELECT) += cmd_dataflash_mmc_mux.o
>>> diff --git a/common/cmd_clk.c b/common/cmd_clk.c
>>> new file mode 100644
>>> index 0000000..6d3d46a
>>> --- /dev/null
>>> +++ b/common/cmd_clk.c
>>> @@ -0,0 +1,51 @@
>>> +/*
>>> + * Copyright (C) 2013 Xilinx, Inc.
>>> + *
>>> + * SPDX-License-Identifier: GPL-2.0+
>>> + */
>>> +#include <common.h>
>>> +#include <command.h>
>>> +#include <clk.h>
>>> +
>>> +int __weak soc_clk_dump(void)
>>> +{
>>> + puts("Not implemented\n");
>>> + return 1;
>>> +}
>>> +
>>> +static int do_clk_dump(cmd_tbl_t *cmdtp, int flag, int argc,
>>> + char *const argv[])
>>> +{
>>> + return soc_clk_dump();
>>
>> This is not the way things should work in driver model. See how the
>> gpio command works for an example. I suggest it iterates through the
>> available clocks and then calls a driver function to obtain
>> information about each clock, then prints it out. We should avoid weak
>> functions as a method of connecting things together.
>
> This is patch which was sent in 2014. What are you trying to suggest?
Sorry, I only just noticed it. I'll see if I can create a patch to get
the clock info from an API call instead of using a weak function.
Regards,
Simon
More information about the U-Boot
mailing list