| /* |
| * linux/drivers/mmc/core/sysfs.c |
| * |
| * Copyright (C) 2003 Russell King, All Rights Reserved. |
| * Copyright 2007 Pierre Ossman |
| * |
| * This program is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License version 2 as |
| * published by the Free Software Foundation. |
| * |
| * MMC sysfs/driver model support. |
| */ |
| #include <linux/device.h> |
| |
| #include <linux/mmc/card.h> |
| |
| #include "sysfs.h" |
| |
| int mmc_add_attrs(struct mmc_card *card, struct device_attribute *attrs) |
| { |
| int error = 0; |
| int i; |
| |
| for (i = 0; attr_name(attrs[i]); i++) { |
| error = device_create_file(&card->dev, &attrs[i]); |
| if (error) { |
| while (--i >= 0) |
| device_remove_file(&card->dev, &attrs[i]); |
| break; |
| } |
| } |
| |
| return error; |
| } |
| |
| void mmc_remove_attrs(struct mmc_card *card, struct device_attribute *attrs) |
| { |
| int i; |
| |
| for (i = 0; attr_name(attrs[i]); i++) |
| device_remove_file(&card->dev, &attrs[i]); |
| } |
| |