All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@deeprootsystems.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Charulatha V <charu@ti.com>,
	linux-omap@vger.kernel.org, paul@pwsan.com, b-cousson@ti.com,
	tony@atomide.com, dbrownell@users.sourceforge.net,
	spi-devel-general@lists.sourceforge.net, rnayak@ti.com,
	p-basak2@ti.com, govindraj.raja@ti.com
Subject: Re: [PATCH 0/5] OMAP: McSPI: Implement McSPI in HWMOD way
Date: Thu, 19 Aug 2010 17:56:43 -0700	[thread overview]
Message-ID: <87fwyacd9w.fsf@deeprootsystems.com> (raw)
In-Reply-To: <AANLkTikS0tX3GA+1LXnqbZYuuWteOTq7dH13i-icKYD2@mail.gmail.com> (Grant Likely's message of "Fri, 13 Aug 2010 16:44:30 -0600")

Grant Likely <grant.likely@secretlab.ca> writes:

> On Fri, Aug 13, 2010 at 8:05 AM, Charulatha V <charu@ti.com> wrote:
>> This patch series implements McSPI Module in HWMOD FW way
>> and use the runtime PM layer.
>
> Hi Charulatha,
>
> I'll go through and review the patches, but I'm unfamiliar with HWMOD.
> Is there a description of HWMOD that you can point me at?

Hi Grant,

If you want to skip my rambling, the source for omap_hwmod is in mainline:

   arch/arm/mach-omap2/omap_hwmod.c
   arch/arm/plat-omap/include/plat/omap_hwmod.h

omap_hwmod is short for OMAP hardware module.  It is essentially a
central way of describing each IP block in an OMAP SoC, and the way they
are connected together to make an SoC.  An omap_hwmod for a given IP
block contains base address, IRQs, DMA channels etc. (as would a device
tree node) but also includes information on any master/slave interfaces
to model how IP blocks are connected on the SoC and many other details.
With my PM hat on, the most important part of an omap_hwmod is that it
also defines lots of details about the PM register and capabilities of a
given IP block.

Part of omap_hwmod is the data (which is now auto-generated for current
and future OMAPs), and the other part is the code.  In the code, the
omap_hwmod layer also provides an API so that functionality common to
all IP blocks (clock management, power states, idle modes, resets, etc.)
can be handled in a common way.

Drivers do not interact directly with omap_hwmod and it is considered
OMAP core code.  In other threads, you've seen a little bit of the
omap_device layer.  The omap_device layer encapsulates the omap_hwmod
layer.  An omap_device consists of at least one (but possibly several)
omap_hwmods.  Drivers do not interact directly with omap_device either,
but instead use runtime PM to trigger the custom bus code which would
call omap_device_* which in turn would call into omap_hwmod_*.  Also,
from the omap_hwmod data, platform_devices are generated (including
resources) so drivers get the common data in standard ways.

So, with that background, we're going through some major work in several
OMAP drivers to convert them to work across multiple OMAP SoCs (OMAP2, 3
and 4.)  To make the drivers more general, this means adding the hwmod
data for the device IP, building the omap_device for the device and
converting the driver to use runtime PM instead of direct clock management.

You see all these changes happening in a single patch because the are
quite dependent on one another.  This driver seems to have needed pretty
significant cleanup as well, so I agree that this last patch should be
broken up into parts.  

I think it could be broken up into at least two parts:
cleanup/restructure work to handle more data coming via platform_data,
followed by the conversion to runtime PM.

Kevin



  parent reply	other threads:[~2010-08-20  0:56 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-13 14:05 [PATCH 0/5] OMAP: McSPI: Implement McSPI in HWMOD way Charulatha V
2010-08-13 14:05 ` [PATCH 1/5] OMAP2420: McSPI: Add mcspi hwmod Charulatha V
2010-08-13 14:05   ` [PATCH 2/5] OMAP2430 : McSPI: Add mcspi hwmod data Charulatha V
2010-08-13 14:05     ` [PATCH 3/5] OMAP3 HWMOD: Add mcspi hwmods Charulatha V
2010-08-13 14:05       ` [PATCH 4/5] OMAP4 " Charulatha V
2010-08-13 14:05         ` [PATCH 5/5] OMAP McSPI: Adapt McSPI driver to use omap hwmod Charulatha V
2010-08-13 23:09           ` Grant Likely
2010-09-03 12:53             ` Govindraj
2010-08-19 11:44   ` [PATCH 1/5] OMAP2420: McSPI: Add mcspi hwmod Kalliguddi, Hema
2010-08-19 13:33     ` Varadarajan, Charulatha
2010-08-13 22:44 ` [PATCH 0/5] OMAP: McSPI: Implement McSPI in HWMOD way Grant Likely
2010-08-19  7:09   ` Varadarajan, Charulatha
2010-08-20  0:56   ` Kevin Hilman [this message]
2010-09-10 19:24     ` Grant Likely
2010-09-10 22:15       ` Kevin Hilman
2010-09-15 20:18         ` Grant Likely
2010-09-15 22:13           ` Kevin Hilman

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=87fwyacd9w.fsf@deeprootsystems.com \
    --to=khilman@deeprootsystems.com \
    --cc=b-cousson@ti.com \
    --cc=charu@ti.com \
    --cc=dbrownell@users.sourceforge.net \
    --cc=govindraj.raja@ti.com \
    --cc=grant.likely@secretlab.ca \
    --cc=linux-omap@vger.kernel.org \
    --cc=p-basak2@ti.com \
    --cc=paul@pwsan.com \
    --cc=rnayak@ti.com \
    --cc=spi-devel-general@lists.sourceforge.net \
    --cc=tony@atomide.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.