linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sekhar Nori <nsekhar@ti.com>
To: Murali Karicheri <m-karicheri2@ti.com>
Cc: <mturquette@linaro.org>, <arnd@arndb.de>,
	<akpm@linux-foundation.org>, <shawn.guo@linaro.org>,
	<rob.herring@calxeda.com>, <linus.walleij@linaro.org>,
	<viresh.linux@gmail.com>, <linux-kernel@vger.kernel.org>,
	<khilman@ti.com>, <linux@arm.linux.org.uk>,
	<sshtylyov@mvista.com>,
	<davinci-linux-open-source@linux.davincidsp.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-keystone@list.ti.com>
Subject: Re: [PATCH v3 03/11] clk: davinci - common clk utilities to init clk driver
Date: Sat, 3 Nov 2012 18:05:10 +0530	[thread overview]
Message-ID: <50950F7E.2080309@ti.com> (raw)
In-Reply-To: <1351181518-11882-4-git-send-email-m-karicheri2@ti.com>

On 10/25/2012 9:41 PM, Murali Karicheri wrote:
> This is the common clk driver initialization functions for DaVinci
> SoCs and other SoCs that uses similar hardware architecture.
> clock.h also defines struct types for clock definitions in a SoC
> and clock data type for configuring clk-mux. The initialization
> functions are used by clock initialization code in a specific
> platform/SoC.
> 
> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
> ---
>  drivers/clk/davinci/clock.c |  112 +++++++++++++++++++++++++++++++++++++++++++
>  drivers/clk/davinci/clock.h |   80 +++++++++++++++++++++++++++++++
>  2 files changed, 192 insertions(+)
>  create mode 100644 drivers/clk/davinci/clock.c
>  create mode 100644 drivers/clk/davinci/clock.h
> 
> diff --git a/drivers/clk/davinci/clock.c b/drivers/clk/davinci/clock.c
> new file mode 100644
> index 0000000..ad02149
> --- /dev/null
> +++ b/drivers/clk/davinci/clock.c
> @@ -0,0 +1,112 @@
> +/*
> + * clock.c - davinci clock initialization functions for various clocks
> + *
> + * Copyright (C) 2006-2012 Texas Instruments.
> + * Copyright (C) 2008-2009 Deep Root Systems, LLC
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License as published by
> + * the Free Software Foundation; either version 2 of the License, or
> + * (at your option) any later version.
> + */
> +#include <linux/init.h>
> +#include <linux/clk-provider.h>
> +#include <linux/clkdev.h>
> +#include <linux/io.h>
> +#include <linux/slab.h>
> +
> +#include "clk-pll.h"
> +#include "clk-psc.h"
> +#include "clk-div.h"
> +#include "clock.h"
> +
> +static DEFINE_SPINLOCK(_lock);
> +
> +#ifdef	CONFIG_CLK_DAVINCI_PLL
> +struct clk *davinci_pll_clk(const char *name, const char *parent,
> +		u32 phys_pllm, u32 phys_prediv, u32 phys_postdiv,
> +		struct clk_pll_data *pll_data)
> +{
> +	struct clk *clkp = NULL;
> +
> +	pll_data->reg_pllm = ioremap(phys_pllm, 4);
> +	if (WARN_ON(!pll_data->reg_pllm))
> +		return clkp;

I would prefer ERR_PTR(-ENOMEM) here. Same comment applies to other
instances elsewhere in the patch.

> diff --git a/drivers/clk/davinci/clock.h b/drivers/clk/davinci/clock.h
> new file mode 100644
> index 0000000..73204b8
> --- /dev/null
> +++ b/drivers/clk/davinci/clock.h
> @@ -0,0 +1,80 @@
> +/*
> + * TI DaVinci Clock definitions -  Contains Macros and Types used for
> + * defining various clocks on a DaVinci SoC
> + *
> + * Copyright (C) 2012 Texas Instruments
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License as
> + * published by the Free Software Foundation version 2.
> + *
> + * This program is distributed "as is" WITHOUT ANY WARRANTY of any
> + * kind, whether express or implied; without even the implied warranty
> + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> + * GNU General Public License for more details.
> + */
> +#ifndef __DAVINCI_CLOCK_H
> +#define __DAVINCI_CLOCK_H
> +
> +#include <linux/types.h>
> +
> +/* general flags: */
> +#define ALWAYS_ENABLED		BIT(0)

This is not used in this patch. Can you add the define along with its
usage so it is immediately clear why you need it?

> +/**
> + * struct davinci_clk - struct for defining DaVinci clocks for a SoC.
> + *
> + * @name: name of the clock
> + * @parent: name of parent clock
> + * @flags: General flags for all drivers used by platform clock init code
> + * @data: data specific to a clock used by the driver
> + * @dev_id: dev_id used to look up this clock. If this is NULL
> + *	clock name is used for lookup.
> + */
> +struct davinci_clk {
> +	const char			*name;
> +	const char			*parent;
> +	u32				flags;
> +	void				*data;
> +	char				*dev_id;

Similarly dont see this being used as well.

Thanks,
Sekhar

  parent reply	other threads:[~2012-11-03 12:35 UTC|newest]

Thread overview: 59+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-25 16:11 [PATCH v3 00/11] common clk drivers migration for DaVinci SoCs Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 01/11] clk: davinci - add main PLL clock driver Murali Karicheri
2012-10-28 19:18   ` Linus Walleij
2012-10-31 13:23     ` Murali Karicheri
2012-10-31 12:29   ` Sekhar Nori
2012-10-31 13:46     ` Murali Karicheri
2012-11-01 11:01       ` Sekhar Nori
2012-10-25 16:11 ` [PATCH v3 02/11] clk: davinci - add PSC " Murali Karicheri
2012-10-28 19:24   ` Linus Walleij
2012-10-31 13:23     ` Murali Karicheri
2013-03-19 10:57     ` Sekhar Nori
2012-11-03 12:07   ` Sekhar Nori
2012-11-05 15:10     ` Murali Karicheri
2012-11-10  2:22       ` Mike Turquette
2012-11-27 15:05         ` Sekhar Nori
     [not found]           ` <20121127172900.21126.89528@nucleus>
2012-11-27 20:38             ` Murali Karicheri
2012-11-28 13:22             ` Sekhar Nori
2013-03-22 11:20               ` Sekhar Nori
2013-03-22 20:37                 ` Mike Turquette
2013-03-25  6:50                   ` Sekhar Nori
2012-10-25 16:11 ` [PATCH v3 03/11] clk: davinci - common clk utilities to init clk driver Murali Karicheri
2012-10-28 19:25   ` Linus Walleij
2012-10-31 13:23     ` Murali Karicheri
2012-11-01 12:41   ` Sekhar Nori
2012-11-01 18:34     ` Murali Karicheri
2012-11-03 12:35   ` Sekhar Nori [this message]
2012-11-05 15:20     ` Murali Karicheri
2012-11-06  9:31       ` Sekhar Nori
2012-11-06 15:04         ` Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 04/11] clk: davinci - add pll divider clock driver Murali Karicheri
2012-10-28 19:26   ` Linus Walleij
2012-10-31 13:22     ` Murali Karicheri
2012-11-02 11:33   ` Sekhar Nori
2012-11-02 13:53     ` Murali Karicheri
2012-11-03 12:03       ` Sekhar Nori
2012-11-05 15:10         ` Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 05/11] clk: davinci - add dm644x clock initialization Murali Karicheri
2012-11-03 13:30   ` Sekhar Nori
2012-11-05 15:42     ` Murali Karicheri
2012-11-06 10:18       ` Sekhar Nori
2012-11-05 23:23     ` Murali Karicheri
2012-11-06  9:40       ` Sekhar Nori
2012-10-25 16:11 ` [PATCH v3 06/11] clk: davinci - add build infrastructure for DaVinci clock drivers Murali Karicheri
2012-11-04 13:34   ` Sekhar Nori
2012-11-05 16:17     ` Murali Karicheri
2012-11-06  9:48       ` Sekhar Nori
2012-10-25 16:11 ` [PATCH v3 07/11] ARM: davinci - restructure header files for common clock migration Murali Karicheri
2012-11-04 14:05   ` Sekhar Nori
2012-11-05 19:11     ` Murali Karicheri
2012-11-06 10:03       ` Sekhar Nori
2012-11-05 21:57     ` Murali Karicheri
2012-12-03 13:23       ` Sekhar Nori
2012-10-25 16:11 ` [PATCH v3 08/11] ARM: davinci - migrating to use common clock init code Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 09/11] ARM: davinci - dm644x: update SoC code to remove the clock data Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 10/11] ARM: davinci - migrate to common clock Murali Karicheri
2012-11-04 13:06   ` Sekhar Nori
2012-11-05 15:43     ` Murali Karicheri
2012-10-25 16:11 ` [PATCH v3 11/11] ARM: davinci - common clock migration: clean up the old code Murali Karicheri
2012-10-30 17:00 ` [PATCH v3 00/11] common clk drivers migration for DaVinci SoCs Karicheri, Muralidharan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=50950F7E.2080309@ti.com \
    --to=nsekhar@ti.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=khilman@ti.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-keystone@list.ti.com \
    --cc=linux@arm.linux.org.uk \
    --cc=m-karicheri2@ti.com \
    --cc=mturquette@linaro.org \
    --cc=rob.herring@calxeda.com \
    --cc=shawn.guo@linaro.org \
    --cc=sshtylyov@mvista.com \
    --cc=viresh.linux@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).