[Meego-kernel] [PATCH 5/5] replaced some defines w/ enums and made module parameters writable

Russ Gorby russ.gorby at intel.com
Tue Nov 2 10:49:42 PDT 2010


Signed-off-by: Russ Gorby <russ.gorby at intel.com>
---
RRG: minor fixes for readability and debuggability

 drivers/serial/ifx6x60.c |   10 ++++----
 drivers/serial/ifx6x60.h |   50 ++++++++++++++++++++++++++-------------------
 2 files changed, 34 insertions(+), 26 deletions(-)

diff --git a/drivers/serial/ifx6x60.c b/drivers/serial/ifx6x60.c
index 5bfac1d..2a0c2f1 100644
--- a/drivers/serial/ifx6x60.c
+++ b/drivers/serial/ifx6x60.c
@@ -86,18 +86,18 @@ enum ifx_mdm {
 };
 
 #define TESTMODE_COMMON_MASK	0x00ff
-#define TESTMODE_PRIV_MASK	0xff00
 #define TESTMODE_ENABLE_DMA	0x01
 #define TESTMODE_ENABLE_POLL	0x02
 #define TESTMODE_ENABLE_LOOPBACK 0x04
 #define TESTMODE_ENABLE_INTR	0x08
+#define TESTMODE_PRIV_MASK	0xff00
 #define TESTMODE_IGNORE_SRDY	0x100
 #define TESTMODE_IGNORE_SPITO	0x200
 #define TESTMODE(x)		(testmode & x)
 
-module_param(testmode, uint, S_IRUGO);
-module_param(ignore_spito_stop, uint, S_IRUGO);
-module_param(ignore_srdy_start, uint, S_IRUGO);
+module_param(testmode, uint, S_IRUGO|S_IWUSR);
+module_param(ignore_spito_stop, uint, S_IRUGO|S_IWUSR);
+module_param(ignore_srdy_start, uint, S_IRUGO|S_IWUSR);
 MODULE_PARM_DESC(testmode, "supply test mode bits");
 MODULE_PARM_DESC(ignore_spito_stop, "number of spi timeouts to ignore");
 MODULE_PARM_DESC(ignore_srdy_start,
@@ -958,7 +958,7 @@ static void ifx_spi_insert_flip_string(struct ifx_spi_serial *ifx_ser,
  *	ifx_spi_complete	-	SPI transfer completed
  *	@ctx: our SPI device
  *
- *	An SPI transfer has completed. Process any received data and kick off
+ *	A SPI transfer has completed. Process any received data and kick off
  *	any further transmits we can commence.
  */
 static void ifx_spi_complete(void *ctx)
diff --git a/drivers/serial/ifx6x60.h b/drivers/serial/ifx6x60.h
index 734edb1..0536d52 100644
--- a/drivers/serial/ifx6x60.h
+++ b/drivers/serial/ifx6x60.h
@@ -41,23 +41,34 @@
 #define IFX_RESET_TIMEOUT		msecs_to_jiffies(50)
 
 /* device flags bitfield definitions */
-#define IFX_SPI_STATE_PRESENT		0
-#define IFX_SPI_STATE_IO_IN_PROGRESS	1
-#define IFX_SPI_STATE_IO_READY		2
-#define IFX_SPI_STATE_TIMER_PENDING	3
+enum ifx_spi_state {
+	IFX_SPI_STATE_PRESENT,
+	IFX_SPI_STATE_IO_IN_PROGRESS,
+	IFX_SPI_STATE_IO_READY,
+	IFX_SPI_STATE_TIMER_PENDING,
+};
 
 /* flow control bitfields */
-#define IFX_SPI_DCD			0
-#define IFX_SPI_CTS			1
-#define IFX_SPI_DSR			2
-#define IFX_SPI_RI			3
-#define IFX_SPI_DTR			4
-#define IFX_SPI_RTS			5
-#define IFX_SPI_TX_FC			6
-#define IFX_SPI_RX_FC			7
-#define IFX_SPI_UPDATE			8
-
-#define IFX_SPI_PAYLOAD_SIZE		(IFX_SPI_TRANSFER_SIZE - \
+enum ifx_flow_ctl {
+	IFX_SPI_DCD,
+	IFX_SPI_CTS,
+	IFX_SPI_DSR,
+	IFX_SPI_RI,
+	IFX_SPI_DTR,
+	IFX_SPI_RTS,
+	IFX_SPI_TX_FC,
+	IFX_SPI_RX_FC,
+	IFX_SPI_UPDATE,
+};
+
+/* modem reset state */
+enum ifx_mdm_reset_state {
+	MR_START,
+	MR_INPROGRESS,
+	MR_COMPLETE,
+};
+
+#define IFX_SPI_PAYLOAD_SIZE		(IFX_SPI_TRANSFER_SIZE -	\
 						IFX_SPI_HEADER_OVERHEAD)
 
 #define IFX_SPI_IRQ_TYPE		DETECT_EDGE_RISING
@@ -76,7 +87,7 @@ struct ifx_spi_device {
 	struct tasklet_struct io_work_tasklet;
 	struct work_struct write_wakeup_work;
 	struct work_struct reset_work;
-	unsigned long flags;
+	unsigned long flags;		/* enum ifx_spi_state */
 	int modem;
 	dma_addr_t rx_dma;
 	dma_addr_t tx_dma;
@@ -109,10 +120,7 @@ struct ifx_spi_device {
 	} gpio;
 
 	/* modem reset */
-	unsigned long mdm_reset_state;
-#define MR_START	0
-#define MR_INPROGRESS	1
-#define MR_COMPLETE	2
+	unsigned long mdm_reset_state;		/* enum ifx_mdm_reset_state */
 	wait_queue_head_t mdm_reset_wait;
 	unsigned int mdm_reset_cnt;		/* total reset count */
 	unsigned int mdm_reset_unsol;		/* unsolicited resets */
@@ -134,7 +142,7 @@ struct ifx_spi_port_data {
 	int port_id;
 	struct kfifo tx_fifo;
 	spinlock_t fifo_lock;
-	unsigned long signal_state;
+	unsigned long signal_state;		/* enum ifx_flow_ctl */
 	struct ifx_spi_serial serial;
 	struct ifx_spi_device *ifx_spi;
 };
-- 
1.6.0.6



More information about the MeeGo-kernel mailing list