linux.conf.au 2003
File operations - write cont.

        lpower = simple_strtoul (buff, NULL, 10);
        power = (u8)(lpower & 0xff);

        if (!try_module_get(slot->ops->owner)) {
                retval = -ENODEV;
                goto exit;
        }
        switch (power) {
                case 0:
                        if (slot->ops->disable_slot)
                                retval = slot->ops->disable_slot(slot);
                        break;
                case 1:
                        if (slot->ops->enable_slot)
                                retval = slot->ops->enable_slot(slot);
                        break;
                default:
                        err ("Illegal value specified for power\n");
                        retval = -EINVAL;
        }
        module_put(slot->ops->owner);
exit:
        kfree (buff);
        if (retval)
                return retval;
        return count;
}
