lkml.org 
[lkml]   [2011]   [Oct]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCHv9 03/18] TEMP: OMAP3xxx: hwmod data: add PRM hwmod
    On Thu, 13 Oct 2011, Paul Walmsley wrote:

    > On Wed, 12 Oct 2011, Cousson, Benoit wrote:
    >
    > > On 10/11/2011 1:26 AM, Paul Walmsley wrote:
    > > > On Tue, 11 Oct 2011, Cousson, Benoit wrote:
    > > >
    > > > > In fact the device name does not have to match the hwmod name. So we
    > > > > can just create an "omap2_prm" omap_device for OMAP2, "omap3_prm"
    > > > > omap_device for OMAP3... That will allow the relevant PRM driver to
    > > > > be bound to the proper device.
    > > >
    > > > Incidentally, given that we would be using the hwmod name and the version
    > > > number to determine the appropriate omap_device name, what IP version
    > > > numbers should we assign to these PRM IP blocks for different SoCs?
    > >
    > > It can just be 1, 2 and 3... The idea is just to differentiate the IP for each
    > > OMAP.
    >
    > So those are basically arbitrary? Something is not clear here.
    >
    > In the current hwmod design, IP blocks with different interfaces were
    > intended to be uniquely identified by the hwmod name alone. That is why
    > omap_hwmod_lookup() only takes a 'name' parameter.
    >
    > If I understand what you want to do, you wish to change this to uniquely
    > identify them by a (name, interface version number) tuple.
    >
    > I don't have a problem with this in theory, but it implies some changes to
    > the existing model. Specifically:
    >
    > - we'll need to add an interface version number to the struct omap_hwmod
    >
    > - we'll need to modify omap_hwmod_lookup() to take an interface version
    > number
    >
    > - the "ti,hwmod" DT binding that you proposed earlier will need to include
    > an interface version number

    Hmm, reflecting on this further, is your intention to bind drivers to
    hwmods by the struct omap_hwmod_class instead?

    If we define that "rev" field as the interface version number, that should
    probably work.

    So then in C struct format, in a platform_device system, the mapping table
    would basically become

    struct omap_hwmod_driver_map {
    const char *class_name;
    const u32 class_rev;
    const char *platform_device_name;
    }

    - Paul


    \
     
     \ /
      Last update: 2011-10-13 18:55    [W:0.063 / U:29.544 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site