twl4030-core: cleanups
PATCH 1/1 twl4030-core: cleanups
From: David Brownell <[email protected]>
A bunch of little cleanups to twl4030-core.
- Remove needless header inclusions, symbols, and forward declarations.
- Make coding style more standard.
And shrink the object size a bit.
Signed-off-by David Brownell <[email protected]>
--- drivers/i2c/chips/twl4030-core.c | 79 +++++++++++++------------------------ 1 file changed, 28 insertions(+), 51 deletions(-)
drivers/i2c/chips/twl4030-core.c +28 -51
@@ -25,34 +25,23 @@* You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -* */ -#include <linux/module.h> #include <linux/kernel_stat.h> #include <linux/init.h> -#include <linux/time.h> #include <linux/mutex.h> #include <linux/interrupt.h> +#include <linux/irq.h> #include <linux/random.h> -#include <linux/syscalls.h> #include <linux/kthread.h> #include <linux/platform_device.h> +#include <linux/clk.h> #include <linux/i2c.h> #include <linux/i2c/twl4030.h> #include <linux/i2c/twl4030-gpio.h> #include <linux/i2c/twl4030-madc.h> #include <linux/i2c/twl4030-pwrirq.h> -#include <linux/slab.h> -#include <linux/clk.h> -#include <linux/device.h> -#include <linux/irq.h> - -#include <asm/mach/irq.h> - -#include <mach/gpio.h> -#include <mach/mux.h> #define DRIVER_NAME "twl4030"
@@ -70,16 +59,13 @@/* Last - for index max*/ #define TWL4030_MODULE_LAST TWL4030_MODULE_SECURED_REG +#define TWL4030_NUM_SLAVES 4 +/* Slave address */ -#define TWL4030_NUM_SLAVES 0x04#define TWL4030_SLAVENUM_NUM0 0x00#define TWL4030_SLAVENUM_NUM1 0x01#define TWL4030_SLAVENUM_NUM2 0x02#define TWL4030_SLAVENUM_NUM3 0x03 -#define TWL4030_SLAVEID_ID0 0x48 -#define TWL4030_SLAVEID_ID1 0x49 -#define TWL4030_SLAVEID_ID2 0x4A -#define TWL4030_SLAVEID_ID3 0x4B/* Base Address defns */ /* USB ID */
@@ -143,9 +129,6 @@#define HFCLK_FREQ_38p4_MHZ (3 << 0)#define HIGH_PERF_SQ (1 << 3) -/* on I2C-1 for 2430SDP */ -#define CONFIG_I2C_TWL4030_ID 1 -/* SIH_CTRL registers that aren't defined elsewhere */ #define TWL4030_INTERRUPTS_BCISIHCTRL 0x0d#define TWL4030_MADC_MADC_SIH_CTRL 0x67
@@ -284,9 +267,6 @@ static const struct twl4030_mod_iregs __ }; -/* Helper functions */ -static void do_twl4030_irq (unsigned int irq,irq_desc_t *desc); -/* Data Structures */ /* To have info on T2 IRQ substem activated or not */ static struct completion irq_event;
@@ -294,8 +274,7 @@ static struct completion irq_event;/* Structure to define on TWL4030 Slave ID */ struct twl4030_client {struct i2c_client *client; -const unsigned char address; -const char adapter_index; +u8 address;bool inuse;/* max numb of i2c_msg required is for read =2 */
@@ -337,33 +316,24 @@ static struct twl4030mapping twl4030_map { TWL4030_SLAVENUM_NUM3, TWL4030_BASEADD_SECURED_REG }, }; -static struct twl4030_client twl4030_modules[TWL4030_NUM_SLAVES ] = { - { - .address =TWL4030_SLAVEID_ID0 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID1 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID2 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID3 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, -}; +static struct twl4030_client twl4030_modules[TWL4030_NUM_SLAVES ];/* * TWL4030 doesn't have PIH mask, hence dummy function for mask * and unmask. */ -static void twl4030_i2c_ackirq (unsigned int irq) {} -static void twl4030_i2c_disableint (unsigned int irq) {} -static void twl4030_i2c_enableint (unsigned int irq) {} +static void twl4030_i2c_ackirq (unsigned int irq) +{ +} + +static void twl4030_i2c_disableint (unsigned int irq) +{ +} + +static void twl4030_i2c_enableint (unsigned int irq) +{ +}/* information for processing in the Work Item */ static struct irq_chip twl4030_irq_chip = {
@@ -749,7 +719,7 @@ static struct task_struct * __init start "twl4030 irq %d", irq);if (!thread)pr_err ("%s: could not create twl4030 irq %d thread!\n" , - __func__, irq); +DRIVER_NAME , irq);return thread; }
@@ -799,9 +769,15 @@ static int __init power_companion_init(vclk_put (osc);switch (rate) { -case 19200000 : ctrl = HFCLK_FREQ_19p2_MHZ;break ; -case 26000000 : ctrl =HFCLK_FREQ_26_MHZ ;break ; -case 38400000 : ctrl = HFCLK_FREQ_38p4_MHZ;break ; +case 19200000 : + ctrl = HFCLK_FREQ_19p2_MHZ; +break ; +case 26000000 : + ctrl =HFCLK_FREQ_26_MHZ ; +break ; +case 38400000 : + ctrl = HFCLK_FREQ_38p4_MHZ; +break ; } ctrl |=HIGH_PERF_SQ ;
@@ -980,6 +956,7 @@ twl4030_probe(struct i2c_client *client,for (i =0 ; i <TWL4030_NUM_SLAVES ; i++) {struct twl4030_client *twl = &twl4030_modules[i]; + twl->address = client->addr + i;if (i ==0 ) twl->client = client;else {
Quoted 10 lines · David Brownell
From: David Brownell <[email protected]>
A bunch of little cleanups to twl4030-core.
- Remove needless header inclusions, symbols, and forward declarations.
- Make coding style more standard.
And shrink the object size a bit.
Pushing today.
Tony
Quoted 180 lines
Signed-off-by David Brownell <[email protected]>--- drivers/i2c/chips/twl4030-core.c | 79 +++++++++++++------------------------ 1 file changed, 28 insertions(+), 51 deletions(-)drivers/i2c/chips/twl4030-core.c +28
-52@@ -25,34 +25,23 @@* You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -* */ -#include <linux/module.h> #include <linux/kernel_stat.h> #include <linux/init.h> -#include <linux/time.h> #include <linux/mutex.h> #include <linux/interrupt.h> +#include <linux/irq.h> #include <linux/random.h> -#include <linux/syscalls.h> #include <linux/kthread.h> #include <linux/platform_device.h> +#include <linux/clk.h> #include <linux/i2c.h> #include <linux/i2c/twl4030.h> #include <linux/i2c/twl4030-gpio.h> #include <linux/i2c/twl4030-madc.h> #include <linux/i2c/twl4030-pwrirq.h> -#include <linux/slab.h> -#include <linux/clk.h> -#include <linux/device.h> -#include <linux/irq.h> - -#include <asm/mach/irq.h> - -#include <mach/gpio.h> -#include <mach/mux.h> #define DRIVER_NAME "twl4030"@@ -70,16 +59,13 @@/* Last - for index max*/ #define TWL4030_MODULE_LAST TWL4030_MODULE_SECURED_REG +#define TWL4030_NUM_SLAVES 4 +/* Slave address */ -#define TWL4030_NUM_SLAVES 0x04#define TWL4030_SLAVENUM_NUM0 0x00#define TWL4030_SLAVENUM_NUM1 0x01#define TWL4030_SLAVENUM_NUM2 0x02#define TWL4030_SLAVENUM_NUM3 0x03 -#define TWL4030_SLAVEID_ID0 0x48 -#define TWL4030_SLAVEID_ID1 0x49 -#define TWL4030_SLAVEID_ID2 0x4A -#define TWL4030_SLAVEID_ID3 0x4B/* Base Address defns */ /* USB ID */ @@ -143,9 +129,6 @@#define HFCLK_FREQ_38p4_MHZ (3 << 0)#define HIGH_PERF_SQ (1 << 3) -/* on I2C-1 for 2430SDP */ -#define CONFIG_I2C_TWL4030_ID 1 -/* SIH_CTRL registers that aren't defined elsewhere */ #define TWL4030_INTERRUPTS_BCISIHCTRL 0x0d#define TWL4030_MADC_MADC_SIH_CTRL 0x67@@ -284,9 +267,6 @@ static const struct twl4030_mod_iregs __ }; -/* Helper functions */ -static void do_twl4030_irq (unsigned int irq,irq_desc_t *desc); -/* Data Structures */ /* To have info on T2 IRQ substem activated or not */ static struct completion irq_event;@@ -294,8 +274,7 @@ static struct completion irq_event;/* Structure to define on TWL4030 Slave ID */ struct twl4030_client {struct i2c_client *client; -const unsigned char address; -const char adapter_index; +u8 address;bool inuse;/* max numb of i2c_msg required is for read =2 */ @@ -337,33 +316,24 @@ static struct twl4030mapping twl4030_map { TWL4030_SLAVENUM_NUM3, TWL4030_BASEADD_SECURED_REG }, }; -static struct twl4030_client twl4030_modules[TWL4030_NUM_SLAVES ] = { - { - .address =TWL4030_SLAVEID_ID0 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID1 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID2 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, - { - .address =TWL4030_SLAVEID_ID3 , - .adapter_index =CONFIG_I2C_TWL4030_ID , - }, -}; +static struct twl4030_client twl4030_modules[TWL4030_NUM_SLAVES ];/* * TWL4030 doesn't have PIH mask, hence dummy function for mask * and unmask. */ -static void twl4030_i2c_ackirq (unsigned int irq) {} -static void twl4030_i2c_disableint (unsigned int irq) {} -static void twl4030_i2c_enableint (unsigned int irq) {} +static void twl4030_i2c_ackirq (unsigned int irq) +{ +} + +static void twl4030_i2c_disableint (unsigned int irq) +{ +} + +static void twl4030_i2c_enableint (unsigned int irq) +{ +}/* information for processing in the Work Item */ static struct irq_chip twl4030_irq_chip = {@@ -749,7 +719,7 @@ static struct task_struct * __init start "twl4030 irq %d", irq);if (!thread)pr_err ("%s: could not create twl4030 irq %d thread!\n" , - __func__, irq); +DRIVER_NAME , irq);return thread; }@@ -799,9 +769,15 @@ static int __init power_companion_init(vclk_put (osc);switch (rate) { -case 19200000 : ctrl = HFCLK_FREQ_19p2_MHZ;break ; -case 26000000 : ctrl =HFCLK_FREQ_26_MHZ ;break ; -case 38400000 : ctrl = HFCLK_FREQ_38p4_MHZ;break ; +case 19200000 : + ctrl = HFCLK_FREQ_19p2_MHZ; +break ; +case 26000000 : + ctrl =HFCLK_FREQ_26_MHZ ; +break ; +case 38400000 : + ctrl = HFCLK_FREQ_38p4_MHZ; +break ; } ctrl |=HIGH_PERF_SQ ;@@ -980,6 +956,7 @@ twl4030_probe(struct i2c_client *client,for (i =0 ; i <TWL4030_NUM_SLAVES ; i++) {struct twl4030_client *twl = &twl4030_modules[i]; + twl->address = client->addr + i;if (i ==0 ) twl->client = client;else { --To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html