lkml.org 
[lkml]   [2014]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 07/12] mfd: syscon: Consider platform data a regmap config name
    > > > > Use the device platform data as a regmap config
    > > > > name. This is particularly useful in the regmap
    > > > > debugfs when there is more than one syscon device
    > > > > registered, to distinguish the register blocks.
    > > > >
    > > > > Cc: Samuel Ortiz <sameo@linux.intel.com>
    > > > > Cc: Lee Jones <lee.jones@linaro.org>
    > > > > Signed-off-by: Pawel Moll <pawel.moll@arm.com>
    > > > > ---
    > > > ...
    > > > > syscon_regmap_config.max_register = res->end - res->start - 3;
    > > > > + syscon_regmap_config.name = dev_get_platdata(&pdev->dev);
    > > >
    > > > Is dev_name(&pdev->dev) can be used for such purpose?
    > >
    > > Yes of course.
    > >
    > > Either use the automatically generated name or over-ride with
    > > dev->init_name prior to registration or call dev_set_name()
    > > manually. Then retrieve with Alexander's suggestion.
    > >
    > > Is there any technical reason why this is not possible with your
    > > implementation?
    >
    > Hold on, guys. Let me just point out that we're talking "non-DT"
    > platform devices here (either statically defined struct
    > platform_device-s or - my case - the MFD cells).
    >
    > In this case device/driver matching relies completely on device name.
    > Either the pdev->name must be identical (strcmp) to pdrv->name, or the
    > pdev->name must be identical (strcmp again) to one of the pdev->id_table
    > entries. See platform_match() in driver/base/platform.c for more
    > details.
    >
    > Therefore the dev_name(&pdev->dev) on a non-DT-originating sysconf
    > devince will always return "sysconf.*", unless you're ready to maintain
    > a growing syscon_ids[] list. If so, I will have to add three entries
    > there ("sys_id", "sys_misc" and "sys_procid"). I hope you are not
    > seriously considering this idea :-) After all that's what the
    > platform_data was invented for.

    Ah, I see your predicament. I guess that is a limitation of the was
    syscon works. Usually we'd use match tables to differentiate between
    various supported devices, but I guess the 'supported devices' list
    for syscon is pretty limitless. In which case I support your second
    implementation (adding a platform_data container) for the use of
    arbitrary/useful-common names.

    --
    Lee Jones
    Linaro STMicroelectronics Landing Team Lead
    Linaro.org │ Open source software for ARM SoCs
    Follow Linaro: Facebook | Twitter | Blog
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2014-02-12 12:41    [W:5.091 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site