All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Johannes Berg <johannes@sipsolutions.net>,
	"John W. Linville" <linville@tuxdriver.com>,
	linux-wireless@vger.kernel.org, netdev@vger.kernel.org
Subject: [PATCH 33/36] net: rfkill: convert class code to use dev_groups
Date: Wed, 24 Jul 2013 15:05:36 -0700	[thread overview]
Message-ID: <1374703539-9705-34-git-send-email-gregkh@linuxfoundation.org> (raw)
In-Reply-To: <1374703539-9705-1-git-send-email-gregkh@linuxfoundation.org>

The dev_attrs field of struct class is going away soon, dev_groups
should be used instead.  This converts the rfkill class code to use the
correct field.

Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: John W. Linville <linville@tuxdriver.com>
Cc: linux-wireless@vger.kernel.org
Cc: netdev@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---

Johnannes, feel free to take this through your tree, or ACK it and I can
take it through mine.

 net/rfkill/core.c | 90 +++++++++++++++++++++++++------------------------------
 1 file changed, 41 insertions(+), 49 deletions(-)

diff --git a/net/rfkill/core.c b/net/rfkill/core.c
index 1cec5e4f..1bacc107 100644
--- a/net/rfkill/core.c
+++ b/net/rfkill/core.c
@@ -576,14 +576,14 @@ void rfkill_set_states(struct rfkill *rfkill, bool sw, bool hw)
 }
 EXPORT_SYMBOL(rfkill_set_states);
 
-static ssize_t rfkill_name_show(struct device *dev,
-				struct device_attribute *attr,
-				char *buf)
+static ssize_t name_show(struct device *dev, struct device_attribute *attr,
+			 char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%s\n", rfkill->name);
 }
+static DEVICE_ATTR_RO(name);
 
 static const char *rfkill_get_type_str(enum rfkill_type type)
 {
@@ -611,54 +611,52 @@ static const char *rfkill_get_type_str(enum rfkill_type type)
 	}
 }
 
-static ssize_t rfkill_type_show(struct device *dev,
-				struct device_attribute *attr,
-				char *buf)
+static ssize_t type_show(struct device *dev, struct device_attribute *attr,
+			 char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%s\n", rfkill_get_type_str(rfkill->type));
 }
+static DEVICE_ATTR_RO(type);
 
-static ssize_t rfkill_idx_show(struct device *dev,
-			       struct device_attribute *attr,
-			       char *buf)
+static ssize_t index_show(struct device *dev, struct device_attribute *attr,
+			  char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%d\n", rfkill->idx);
 }
+static DEVICE_ATTR_RO(index);
 
-static ssize_t rfkill_persistent_show(struct device *dev,
-			       struct device_attribute *attr,
-			       char *buf)
+static ssize_t persistent_show(struct device *dev,
+			       struct device_attribute *attr, char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%d\n", rfkill->persistent);
 }
+static DEVICE_ATTR_RO(persistent);
 
-static ssize_t rfkill_hard_show(struct device *dev,
-				 struct device_attribute *attr,
-				 char *buf)
+static ssize_t hard_show(struct device *dev, struct device_attribute *attr,
+			 char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%d\n", (rfkill->state & RFKILL_BLOCK_HW) ? 1 : 0 );
 }
+static DEVICE_ATTR_RO(hard);
 
-static ssize_t rfkill_soft_show(struct device *dev,
-				 struct device_attribute *attr,
-				 char *buf)
+static ssize_t soft_show(struct device *dev, struct device_attribute *attr,
+			 char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%d\n", (rfkill->state & RFKILL_BLOCK_SW) ? 1 : 0 );
 }
 
-static ssize_t rfkill_soft_store(struct device *dev,
-				  struct device_attribute *attr,
-				  const char *buf, size_t count)
+static ssize_t soft_store(struct device *dev, struct device_attribute *attr,
+			  const char *buf, size_t count)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 	unsigned long state;
@@ -680,6 +678,7 @@ static ssize_t rfkill_soft_store(struct device *dev,
 
 	return count;
 }
+static DEVICE_ATTR_RW(soft);
 
 static u8 user_state_from_blocked(unsigned long state)
 {
@@ -691,18 +690,16 @@ static u8 user_state_from_blocked(unsigned long state)
 	return RFKILL_USER_STATE_UNBLOCKED;
 }
 
-static ssize_t rfkill_state_show(struct device *dev,
-				 struct device_attribute *attr,
-				 char *buf)
+static ssize_t state_show(struct device *dev, struct device_attribute *attr,
+			  char *buf)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 
 	return sprintf(buf, "%d\n", user_state_from_blocked(rfkill->state));
 }
 
-static ssize_t rfkill_state_store(struct device *dev,
-				  struct device_attribute *attr,
-				  const char *buf, size_t count)
+static ssize_t state_store(struct device *dev, struct device_attribute *attr,
+			   const char *buf, size_t count)
 {
 	struct rfkill *rfkill = to_rfkill(dev);
 	unsigned long state;
@@ -725,32 +722,27 @@ static ssize_t rfkill_state_store(struct device *dev,
 
 	return count;
 }
+static DEVICE_ATTR_RW(state);
 
-static ssize_t rfkill_claim_show(struct device *dev,
-				 struct device_attribute *attr,
-				 char *buf)
+static ssize_t claim_show(struct device *dev, struct device_attribute *attr,
+			  char *buf)
 {
 	return sprintf(buf, "%d\n", 0);
 }
-
-static ssize_t rfkill_claim_store(struct device *dev,
-				  struct device_attribute *attr,
-				  const char *buf, size_t count)
-{
-	return -EOPNOTSUPP;
-}
-
-static struct device_attribute rfkill_dev_attrs[] = {
-	__ATTR(name, S_IRUGO, rfkill_name_show, NULL),
-	__ATTR(type, S_IRUGO, rfkill_type_show, NULL),
-	__ATTR(index, S_IRUGO, rfkill_idx_show, NULL),
-	__ATTR(persistent, S_IRUGO, rfkill_persistent_show, NULL),
-	__ATTR(state, S_IRUGO|S_IWUSR, rfkill_state_show, rfkill_state_store),
-	__ATTR(claim, S_IRUGO|S_IWUSR, rfkill_claim_show, rfkill_claim_store),
-	__ATTR(soft, S_IRUGO|S_IWUSR, rfkill_soft_show, rfkill_soft_store),
-	__ATTR(hard, S_IRUGO, rfkill_hard_show, NULL),
-	__ATTR_NULL
+static DEVICE_ATTR_RO(claim);
+
+static struct attribute *rfkill_dev_attrs[] = {
+	&dev_attr_name.attr,
+	&dev_attr_type.attr,
+	&dev_attr_index.attr,
+	&dev_attr_persistent.attr,
+	&dev_attr_state.attr,
+	&dev_attr_claim.attr,
+	&dev_attr_soft.attr,
+	&dev_attr_hard.attr,
+	NULL,
 };
+ATTRIBUTE_GROUPS(rfkill_dev);
 
 static void rfkill_release(struct device *dev)
 {
@@ -830,7 +822,7 @@ static int rfkill_resume(struct device *dev)
 static struct class rfkill_class = {
 	.name		= "rfkill",
 	.dev_release	= rfkill_release,
-	.dev_attrs	= rfkill_dev_attrs,
+	.dev_groups	= rfkill_dev_groups,
 	.dev_uevent	= rfkill_dev_uevent,
 	.suspend	= rfkill_suspend,
 	.resume		= rfkill_resume,
-- 
1.8.3.rc0.20.gb99dd2e


  parent reply	other threads:[~2013-07-24 22:06 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-24 22:05 [PATCH 00/36] remove dev_attrs usage in 'struct class' Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 01/36] misc: c2port: use dev_bin_attrs instead of hand-coding it Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 02/36] mips: convert vpe_class to use dev_groups Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 03/36] bsr: convert bsr_class " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 04/36] tile: srom: convert srom_class " Greg Kroah-Hartman
2013-07-25 21:11   ` Chris Metcalf
2013-07-25 21:18     ` Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 05/36] dma: convert dma_devclass " Greg Kroah-Hartman
2013-07-25  8:40   ` Vinod Koul
2013-07-24 22:05 ` [PATCH 06/36] devfreq: convert devfreq_class " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 07/36] extcon: convert extcon_class " Greg Kroah-Hartman
2013-07-24 23:53   ` Chanwoo Choi
2013-07-24 22:05 ` [PATCH 08/36] HID: roccat: convert class code " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 09/36] ISDN: " Greg Kroah-Hartman
2013-07-26  9:38   ` Karsten Keil
2013-07-24 22:05 ` [PATCH 10/36] leds: " Greg Kroah-Hartman
2013-07-26 19:18   ` Bryan Wu
2013-07-24 22:05 ` [PATCH 11/36] v4l2: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 12/36] c2port: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 13/36] enclosure: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 14/36] PCI: " Greg Kroah-Hartman
2013-07-25 18:09   ` Bjorn Helgaas
2013-07-24 22:05 ` [PATCH 15/36] x86: wmi: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 16/36] PPS: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 17/36] PTP: " Greg Kroah-Hartman
2013-07-26  9:19   ` Richard Cochran
2013-07-24 22:05 ` [PATCH 18/36] regulator: " Greg Kroah-Hartman
2013-07-25  9:30   ` Mark Brown
2013-07-24 22:05 ` [PATCH 19/36] rtc: " Greg Kroah-Hartman
2013-07-28 13:23   ` Alessandro Zummo
2013-07-24 22:05 ` [PATCH 20/36] UIO: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 21/36] cuse: " Greg Kroah-Hartman
2013-07-26 10:11   ` Miklos Szeredi
2013-07-24 22:05 ` [PATCH 22/36] staging: comedi: " Greg Kroah-Hartman
2013-07-24 22:11   ` H Hartley Sweeten
2013-07-24 22:26     ` Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 23/36] backing-dev: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 24/36] SCSI: OSD: " Greg Kroah-Hartman
2013-07-25  8:38   ` Boaz Harrosh
2013-07-24 22:05 ` [PATCH 25/36] SCSI: sd: " Greg Kroah-Hartman
2013-07-30 16:11   ` James Bottomley
2013-07-30 19:01     ` Greg Kroah-Hartman
2013-07-30 19:22       ` James Bottomley
2013-07-24 22:05 ` [PATCH 26/36] SCSI: st: " Greg Kroah-Hartman
2013-07-30 18:27   ` James Bottomley
2013-07-30 18:27     ` James Bottomley
2013-07-31  6:03   ` Kai Mäkisara
2013-07-24 22:05 ` [PATCH 27/36] video: backlight: " Greg Kroah-Hartman
2013-07-25  1:51   ` Jingoo Han
2013-07-24 22:05 ` [PATCH 28/36] video: backlight: lcd: " Greg Kroah-Hartman
2013-07-25  1:51   ` Jingoo Han
2013-07-24 22:05 ` [PATCH 29/36] video: output: " Greg Kroah-Hartman
2013-07-26  7:38   ` Tomi Valkeinen
2013-07-24 22:05 ` [PATCH 30/36] net: core: " Greg Kroah-Hartman
2013-07-26 22:40   ` David Miller
2013-07-24 22:05 ` [PATCH 31/36] net: ieee802154: " Greg Kroah-Hartman
2013-07-26 22:40   ` David Miller
2013-07-24 22:05 ` [PATCH 32/36] net: wireless: " Greg Kroah-Hartman
2013-07-25  7:50   ` Johannes Berg
2013-07-24 22:05 ` Greg Kroah-Hartman [this message]
2013-07-25  7:52   ` [PATCH 33/36] net: rfkill: " Johannes Berg
2013-07-25  7:52     ` Johannes Berg
2013-07-24 22:05 ` [PATCH 34/36] c2port: convert class code to use bin_attrs in groups Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 35/36] hid: roccat: " Greg Kroah-Hartman
2013-07-24 22:05 ` [PATCH 36/36] pwm: convert class code to use dev_groups Greg Kroah-Hartman
2013-07-29 11:40   ` Thierry Reding

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1374703539-9705-34-git-send-email-gregkh@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=johannes@sipsolutions.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.