On Mon, Feb 11, 2008 at 07:25:42AM -0800, Greg KH wrote:
> On Mon, Feb 11, 2008 at 10:53:46AM +0100, Rodolfo Giometti wrote:
> > On Fri, Feb 08, 2008 at 10:45:31PM -0800, Greg KH wrote:
> > > 
> > > As you are adding sysfs files, please also describe them in
> > > Documentation/ABI/ in this same series of patches.
> > 
> > Ok. I'm going to add them under "testing".
> > 
> > > Why not use a default attribute group?
> > > 
> > > That way the files are created before the uevent is issued, and the
> > > amount of code you have to write is much smaller.
> > 
> > What do you mean exactly? I don't understand what you wish. :'(
> 
> If you use a 'struct device' you can use a default attribute group for
> that device to be created whenever it is added.
> 
> However you are not using the driver core that way, you are just calling
> device_create(), which doesn't work that way.
> 
> But you can just use an attribute group instead, which still saves you a
> lot of code, try using that instead (sysfs_create_group()).
> 
> Or go all the way and embed a 'struct device' in your structure, and
> create a bus, then you can use the default attribute group, although
> that might be a bit more work :)

I see but how can I manage the fact that files "assert" and "clear"
are created according to pps->info.mode field content?

See the code:

int pps_sysfs_create_source_entry(struct pps_device *pps)
{
        int ret;

        /* Create file "assert" and "clear" according to source capability */
        if (pps->info.mode & PPS_CAPTUREASSERT) {
                ret = device_create_file(pps->dev, &dev_attr_assert);
                if (ret)
                        dev_err(pps->dev, "unable to create \"assert\" "
                                        "sysfs entry");
        }

        if (pps->info.mode & PPS_CAPTURECLEAR) {
                ret = device_create_file(pps->dev, &dev_attr_clear);
                if (ret)
                        dev_err(pps->dev, "unable to create \"clear\" "
                                        "sysfs entry");
        }

        ret = device_create_file(pps->dev, &dev_attr_mode);
        if (ret)
                dev_err(pps->dev, "unable to create \"mode\" sysfs entry");

Do you think is better create these files anyway and in case report a
NULL string?

Thanks,

Rodolfo

-- 

GNU/Linux Solutions                  e-mail:    [EMAIL PROTECTED]
Linux Device Driver                             [EMAIL PROTECTED]
Embedded Systems                                [EMAIL PROTECTED]
UNIX programming                     phone:     +39 349 2432127
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to