diff options
Diffstat (limited to 'target/linux/adm5120/files/drivers')
4 files changed, 142 insertions, 146 deletions
diff --git a/target/linux/adm5120/files/drivers/leds/leds-adm5120.c b/target/linux/adm5120/files/drivers/leds/leds-adm5120.c index c71aeb20d..368a13b7c 100644 --- a/target/linux/adm5120/files/drivers/leds/leds-adm5120.c +++ b/target/linux/adm5120/files/drivers/leds/leds-adm5120.c @@ -54,80 +54,80 @@ struct adm5120_leddev {  	struct gpio_led_platform_data pdata;  }; -static int led_count = 0; +static int led_count;  static struct adm5120_leddev *led_devs[NUM_LEDS_MAX];  #define LED_ARRAY(n)				\  static struct gpio_led n ## _leds [] __initdata = -#define LED_DATA(n,t,g,al) {			\ -	.name = (n),				\ -	.default_trigger = (t),			\ -	.gpio = (g),				\ -	.active_low = (al)			\ -	} +#define LED_DATA(n, t, g, a) {	\ +	.name = (n),		\ +	.default_trigger = (t), \ +	.gpio = (g),		\ +	.active_low = (a)	\ +} -#define LED_STD(g,n,t)	LED_DATA((n),(t),(g), 0) -#define LED_INV(g,n,t)	LED_DATA((n),(t),(g), 1) +#define LED_STD(g, n, t)	LED_DATA((n), (t), (g), 0) +#define LED_INV(g, n, t)	LED_DATA((n), (t), (g), 1)  /*   * Compex boards   */  #if defined(CONFIG_LEDS_ADM5120_EXPERIMENTAL)  LED_ARRAY(np27g) { /* FIXME: untested */ -	LED_STD(ADM5120_GPIO_xxxx, "lan1",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "lan2",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "lan3",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "lan4",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "wan_cond",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "wlan",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "wan_act",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb1",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb2",	NULL ), -	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "diag",	NULL ), +	LED_STD(ADM5120_GPIO_xxxx, "lan1",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "lan2",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "lan3",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "lan4",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "wan_cond",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "wlan",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "wan_act",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb1",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb2",	NULL), +	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "diag",	NULL),  };  #endif  #if defined(CONFIG_LEDS_ADM5120_EXPERIMENTAL)  LED_ARRAY(np28g) { /* FIXME: untested */ -	LED_STD(ADM5120_GPIO_xxxx, "lan1",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "lan2",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "lan3",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "wan",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "wlan",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb1",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb2",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb3",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "usb4",	NULL ), -	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL ), -	LED_STD(ADM5120_GPIO_xxxx, "diag",	NULL ), +	LED_STD(ADM5120_GPIO_xxxx, "lan1",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "lan2",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "lan3",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "wan",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "wlan",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb1",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb2",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb3",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "usb4",	NULL), +	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL), +	LED_STD(ADM5120_GPIO_xxxx, "diag",	NULL),  };  #endif  LED_ARRAY(wp54g) { -	LED_INV(ADM5120_GPIO_PIN2, "diag",	NULL ), -	LED_INV(ADM5120_GPIO_PIN6, "wlan",	NULL ), -	LED_INV(ADM5120_GPIO_PIN7, "wan",	NULL ), -	LED_INV(ADM5120_GPIO_P0L0, "lan1",	NULL ), -	LED_INV(ADM5120_GPIO_P1L0, "lan2",	NULL ), +	LED_INV(ADM5120_GPIO_PIN2, "diag",	NULL), +	LED_INV(ADM5120_GPIO_PIN6, "wlan",	NULL), +	LED_INV(ADM5120_GPIO_PIN7, "wan",	NULL), +	LED_INV(ADM5120_GPIO_P0L0, "lan1",	NULL), +	LED_INV(ADM5120_GPIO_P1L0, "lan2",	NULL),  };  /*   * Edimax boards   */  LED_ARRAY(br6104k) { -	LED_STD(ADM5120_GPIO_PIN0, "power",		NULL ), -	LED_INV(ADM5120_GPIO_P0L1, "wan_speed",		NULL ), -	LED_INV(ADM5120_GPIO_P0L0, "wan_lnkact",	NULL ), -	LED_INV(ADM5120_GPIO_P1L1, "lan1_speed",	NULL ), -	LED_INV(ADM5120_GPIO_P1L0, "lan1_lnkact",	NULL ), -	LED_INV(ADM5120_GPIO_P2L1, "lan2_speed",	NULL ), -	LED_INV(ADM5120_GPIO_P2L0, "lan2_lnkact",	NULL ), -	LED_INV(ADM5120_GPIO_P3L1, "lan3_speed",	NULL ), -	LED_INV(ADM5120_GPIO_P3L0, "lan3_lnkact",	NULL ), -	LED_INV(ADM5120_GPIO_P4L1, "lan4_speed",	NULL ), -	LED_INV(ADM5120_GPIO_P4L0, "lan4_lnkact",	NULL ), +	LED_STD(ADM5120_GPIO_PIN0, "power",		NULL), +	LED_INV(ADM5120_GPIO_P0L1, "wan_speed",		NULL), +	LED_INV(ADM5120_GPIO_P0L0, "wan_lnkact",	NULL), +	LED_INV(ADM5120_GPIO_P1L1, "lan1_speed",	NULL), +	LED_INV(ADM5120_GPIO_P1L0, "lan1_lnkact",	NULL), +	LED_INV(ADM5120_GPIO_P2L1, "lan2_speed",	NULL), +	LED_INV(ADM5120_GPIO_P2L0, "lan2_lnkact",	NULL), +	LED_INV(ADM5120_GPIO_P3L1, "lan3_speed",	NULL), +	LED_INV(ADM5120_GPIO_P3L0, "lan3_lnkact",	NULL), +	LED_INV(ADM5120_GPIO_P4L1, "lan4_speed",	NULL), +	LED_INV(ADM5120_GPIO_P4L0, "lan4_lnkact",	NULL),  };  /* @@ -135,14 +135,14 @@ LED_ARRAY(br6104k) {   */  #if defined(CONFIG_LEDS_ADM5120_EXPERIMENTAL)  LED_ARRAY(rb100) { /* FIXME: untested */ -	LED_STD(ADM5120_GPIO_PIN6, "power",	NULL ), -	LED_STD(ADM5120_GPIO_PIN3, "user",	NULL ), +	LED_STD(ADM5120_GPIO_PIN6, "power",	NULL), +	LED_STD(ADM5120_GPIO_PIN3, "user",	NULL),  };  #endif  LED_ARRAY(rb133) { -	LED_STD(ADM5120_GPIO_PIN6, "power",	NULL ), -	LED_STD(ADM5120_GPIO_PIN5, "user",	NULL ), +	LED_STD(ADM5120_GPIO_PIN6, "power",	NULL), +	LED_STD(ADM5120_GPIO_PIN5, "user",	NULL),  };  /* @@ -150,38 +150,38 @@ LED_ARRAY(rb133) {   */  #if defined(CONFIG_LEDS_ADM5120_EXPERIMENTAL)  LED_ARRAY(p334) { /* FIXME: untested */ -	LED_INV(ADM5120_GPIO_xxxx, "power",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "lan1",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "lan2",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "lan3",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "lan4",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "wan",	NULL ), +	LED_INV(ADM5120_GPIO_xxxx, "power",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "lan1",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "lan2",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "lan3",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "lan4",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "wan",	NULL),  };  #endif  LED_ARRAY(p334wt) { -	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL ), -	LED_INV(ADM5120_GPIO_P3L0, "lan1",	NULL ), -	LED_INV(ADM5120_GPIO_P2L0, "lan2",	NULL ), -	LED_INV(ADM5120_GPIO_P1L0, "lan3",	NULL ), -	LED_INV(ADM5120_GPIO_P0L0, "lan4",	NULL ), -	LED_INV(ADM5120_GPIO_P4L0, "wan",	NULL ), -	LED_INV(ADM5120_GPIO_P4L2, "wlan",	NULL ), -	LED_INV(ADM5120_GPIO_P2L2, "otist",	NULL ), -	LED_INV(ADM5120_GPIO_P1L2, "hidden",	NULL ), +	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL), +	LED_INV(ADM5120_GPIO_P3L0, "lan1",	NULL), +	LED_INV(ADM5120_GPIO_P2L0, "lan2",	NULL), +	LED_INV(ADM5120_GPIO_P1L0, "lan3",	NULL), +	LED_INV(ADM5120_GPIO_P0L0, "lan4",	NULL), +	LED_INV(ADM5120_GPIO_P4L0, "wan",	NULL), +	LED_INV(ADM5120_GPIO_P4L2, "wlan",	NULL), +	LED_INV(ADM5120_GPIO_P2L2, "otist",	NULL), +	LED_INV(ADM5120_GPIO_P1L2, "hidden",	NULL),  };  #if defined(CONFIG_LEDS_ADM5120_EXPERIMENTAL)  LED_ARRAY(p335) { /* FIXME: untested */ -	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL ), -	LED_INV(ADM5120_GPIO_P3L0, "lan1",	NULL ), -	LED_INV(ADM5120_GPIO_P2L0, "lan2",	NULL ), -	LED_INV(ADM5120_GPIO_P1L0, "lan3",	NULL ), -	LED_INV(ADM5120_GPIO_P0L0, "lan4",	NULL ), -	LED_INV(ADM5120_GPIO_P4L0, "wan",	NULL ), -	LED_INV(ADM5120_GPIO_P4L2, "wlan",	NULL ), -	LED_INV(ADM5120_GPIO_P2L2, "otist",	NULL ), -	LED_INV(ADM5120_GPIO_xxxx, "usb",	NULL ), +	LED_INV(ADM5120_GPIO_PIN2, "power",	NULL), +	LED_INV(ADM5120_GPIO_P3L0, "lan1",	NULL), +	LED_INV(ADM5120_GPIO_P2L0, "lan2",	NULL), +	LED_INV(ADM5120_GPIO_P1L0, "lan3",	NULL), +	LED_INV(ADM5120_GPIO_P0L0, "lan4",	NULL), +	LED_INV(ADM5120_GPIO_P4L0, "wan",	NULL), +	LED_INV(ADM5120_GPIO_P4L2, "wlan",	NULL), +	LED_INV(ADM5120_GPIO_P2L2, "otist",	NULL), +	LED_INV(ADM5120_GPIO_xxxx, "usb",	NULL),  };  #endif @@ -190,36 +190,36 @@ LED_ARRAY(p335) { /* FIXME: untested */   */  LED_ARRAY(generic) {  #if defined(CONFIG_LEDS_ADM5120_DIAG) -	LED_STD(ADM5120_GPIO_PIN0, "gpio0",	NULL ), -	LED_STD(ADM5120_GPIO_PIN1, "gpio1",	NULL ), -	LED_STD(ADM5120_GPIO_PIN2, "gpio2",	NULL ), -	LED_STD(ADM5120_GPIO_PIN3, "gpio3",	NULL ), -	LED_STD(ADM5120_GPIO_PIN4, "gpio4",	NULL ), -	LED_STD(ADM5120_GPIO_PIN5, "gpio5",	NULL ), -	LED_STD(ADM5120_GPIO_PIN6, "gpio6",	NULL ), -	LED_STD(ADM5120_GPIO_PIN7, "gpio7",	NULL ), -	LED_STD(ADM5120_GPIO_P0L0, "port0led0",	NULL ), -	LED_STD(ADM5120_GPIO_P0L1, "port0led1",	NULL ), -	LED_STD(ADM5120_GPIO_P0L2, "port0led2",	NULL ), -	LED_STD(ADM5120_GPIO_P1L0, "port1led0",	NULL ), -	LED_STD(ADM5120_GPIO_P1L1, "port1led1",	NULL ), -	LED_STD(ADM5120_GPIO_P1L2, "port1led2",	NULL ), -	LED_STD(ADM5120_GPIO_P2L0, "port2led0",	NULL ), -	LED_STD(ADM5120_GPIO_P2L1, "port2led1",	NULL ), -	LED_STD(ADM5120_GPIO_P2L2, "port2led2",	NULL ), -	LED_STD(ADM5120_GPIO_P3L0, "port3led0",	NULL ), -	LED_STD(ADM5120_GPIO_P3L1, "port3led1",	NULL ), -	LED_STD(ADM5120_GPIO_P3L2, "port3led2",	NULL ), -	LED_STD(ADM5120_GPIO_P4L0, "port4led0",	NULL ), -	LED_STD(ADM5120_GPIO_P4L1, "port4led1",	NULL ), -	LED_STD(ADM5120_GPIO_P4L2, "port4led2",	NULL ), +	LED_STD(ADM5120_GPIO_PIN0, "gpio0",	NULL), +	LED_STD(ADM5120_GPIO_PIN1, "gpio1",	NULL), +	LED_STD(ADM5120_GPIO_PIN2, "gpio2",	NULL), +	LED_STD(ADM5120_GPIO_PIN3, "gpio3",	NULL), +	LED_STD(ADM5120_GPIO_PIN4, "gpio4",	NULL), +	LED_STD(ADM5120_GPIO_PIN5, "gpio5",	NULL), +	LED_STD(ADM5120_GPIO_PIN6, "gpio6",	NULL), +	LED_STD(ADM5120_GPIO_PIN7, "gpio7",	NULL), +	LED_STD(ADM5120_GPIO_P0L0, "port0led0",	NULL), +	LED_STD(ADM5120_GPIO_P0L1, "port0led1",	NULL), +	LED_STD(ADM5120_GPIO_P0L2, "port0led2",	NULL), +	LED_STD(ADM5120_GPIO_P1L0, "port1led0",	NULL), +	LED_STD(ADM5120_GPIO_P1L1, "port1led1",	NULL), +	LED_STD(ADM5120_GPIO_P1L2, "port1led2",	NULL), +	LED_STD(ADM5120_GPIO_P2L0, "port2led0",	NULL), +	LED_STD(ADM5120_GPIO_P2L1, "port2led1",	NULL), +	LED_STD(ADM5120_GPIO_P2L2, "port2led2",	NULL), +	LED_STD(ADM5120_GPIO_P3L0, "port3led0",	NULL), +	LED_STD(ADM5120_GPIO_P3L1, "port3led1",	NULL), +	LED_STD(ADM5120_GPIO_P3L2, "port3led2",	NULL), +	LED_STD(ADM5120_GPIO_P4L0, "port4led0",	NULL), +	LED_STD(ADM5120_GPIO_P4L1, "port4led1",	NULL), +	LED_STD(ADM5120_GPIO_P4L2, "port4led2",	NULL),  #endif  }; -#define MACH_DATA(m, n) {				\ +#define MACH_DATA(m, n) { 				\  	.machtype	= (m),				\  	.nr_leds	= ARRAY_SIZE(n ## _leds),	\ -	.leds		= n ## _leds			\ +	.leds		= n ## _leds 			\  }  static struct mach_data machines[] __initdata = { @@ -262,19 +262,12 @@ create_leddev(int id, struct gpio_led *led)  	p->pdev.name = "leds-gpio";  	p->pdev.id = id;  	p->pdev.dev.platform_data = &p->pdata; -	p->pdata.num_leds=1; +	p->pdata.num_leds = 1;  	p->pdata.leds = &p->led;  	return p;  } -static void -destroy_leddev(struct adm5120_leddev *leddev) -{ -	if (leddev) -		kfree(leddev); -} -  static struct mach_data * __init  adm5120_leds_findmach(unsigned long machtype)  { @@ -282,7 +275,7 @@ adm5120_leds_findmach(unsigned long machtype)  	int i;  	mach = NULL; -	for (i=0; i<ARRAY_SIZE(machines); i++) { +	for (i = 0; i < ARRAY_SIZE(machines); i++) {  		if (machines[i].machtype == machtype) {  			mach = &machines[i];  			break; @@ -315,7 +308,7 @@ adm5120_leds_init(void)  		goto err;  	} -	for (i=0; i < mach->nr_leds; i++) { +	for (i = 0; i < mach->nr_leds; i++) {  		led_devs[i] = create_leddev(i, &mach->leds[i]);  		if (led_devs[i] == NULL) {  			ret = -ENOMEM; @@ -323,7 +316,7 @@ adm5120_leds_init(void)  		}  	} -	for (i=0; i < mach->nr_leds; i++) { +	for (i = 0; i < mach->nr_leds; i++) {  		ret = platform_device_register(&led_devs[i]->pdev);  		if (ret)  			goto err_unregister; @@ -333,12 +326,12 @@ adm5120_leds_init(void)  	return 0;  err_unregister: -	for (i--; i>=0; i--) +	for (i--; i >= 0; i--)  		platform_device_unregister(&led_devs[i]->pdev);  err_destroy: -	for (i=0; i<led_count; i++) -		destroy_leddev(led_devs[i]); +	for (i = 0; i < led_count; i++) +		kfree(led_devs[i]);  err:  	return ret;  } @@ -348,9 +341,9 @@ adm5120_leds_exit(void)  {  	int i; -	for (i=0; i < led_count; i++) { +	for (i = 0; i < led_count; i++) {  		platform_device_unregister(&led_devs[i]->pdev); -		destroy_leddev(led_devs[i]); +		kfree(led_devs[i]);  	}  } diff --git a/target/linux/adm5120/files/drivers/mtd/maps/adm5120-flash.c b/target/linux/adm5120/files/drivers/mtd/maps/adm5120-flash.c index 7a55396e7..e07fb96d2 100644 --- a/target/linux/adm5120/files/drivers/mtd/maps/adm5120-flash.c +++ b/target/linux/adm5120/files/drivers/mtd/maps/adm5120-flash.c @@ -32,15 +32,14 @@  #include <linux/kernel.h>  #include <linux/init.h>  #include <linux/slab.h> +#include <linux/io.h>  #include <linux/device.h> -  #include <linux/platform_device.h> +  #include <linux/mtd/mtd.h>  #include <linux/mtd/map.h>  #include <linux/mtd/partitions.h> -#include <asm/io.h> -  #include <adm5120_defs.h>  #include <adm5120_switch.h>  #include <adm5120_mpmc.h> @@ -173,7 +172,7 @@ static void adm5120_flash_write(struct map_info *map, const map_word datum,  {  	struct adm5120_map_info *amap = map_to_amap(map); -	MAP_DBG(map,"writing to ofs %lX\n", ofs); +	MAP_DBG(map, "writing to ofs %lX\n", ofs);  	if (ofs > amap->window_size)  		return; @@ -329,7 +328,7 @@ static void adm5120_flash_initbanks(struct adm5120_flash_info *info)  #ifdef CONFIG_MTD_PARTITIONS  static int adm5120_flash_initparts(struct adm5120_flash_info *info)  { -	struct adm5120_flash_platform_data *pdata = info->dev->dev.platform_data; +	struct adm5120_flash_platform_data *pdata;  	struct map_info *map = &info->amap.map;  	int num_parsers;  	const char *parser[2]; @@ -339,6 +338,7 @@ static int adm5120_flash_initparts(struct adm5120_flash_info *info)  	info->nr_parts = 0; +	pdata = info->dev->dev.platform_data;  	if (pdata == NULL)  		goto out; @@ -357,7 +357,7 @@ static int adm5120_flash_initparts(struct adm5120_flash_info *info)  		num_parsers = MAX_PARSED_PARTS;  	parser[1] = NULL; -	for (i=0; i<num_parsers; i++) { +	for (i = 0; i < num_parsers; i++) {  		parser[0] = parse_types[i];  		MAP_INFO(map, "parsing \"%s\" partitions\n", @@ -394,7 +394,7 @@ static void adm5120_flash_remove_mtd(struct adm5120_flash_info *info)  	if (info->nr_parts) {  		del_mtd_partitions(info->mtd); -		for (i=0; i<MAX_PARSED_PARTS; i++) +		for (i = 0; i < MAX_PARSED_PARTS; i++)  			if (info->parts[i] != NULL)  				kfree(info->parts[i]);  	} else { @@ -496,7 +496,8 @@ static int adm5120_flash_probe(struct platform_device *dev)  		goto err_out;  	if (info->nr_parts == 0) { -		MAP_INFO(map, "no partitions available, registering whole flash\n"); +		MAP_INFO(map, "no partitions available, registering " +			"whole flash\n");  		add_mtd_device(info->mtd);  	} @@ -508,7 +509,8 @@ err_out:  }  #ifdef CONFIG_PM -static int adm5120_flash_suspend(struct platform_device *dev, pm_message_t state) +static int adm5120_flash_suspend(struct platform_device *dev, +		pm_message_t state)  {  	struct adm5120_flash_info *info = platform_get_drvdata(dev);  	int ret = 0; diff --git a/target/linux/adm5120/files/drivers/mtd/myloader.c b/target/linux/adm5120/files/drivers/mtd/myloader.c index ad207e555..24d41c559 100644 --- a/target/linux/adm5120/files/drivers/mtd/myloader.c +++ b/target/linux/adm5120/files/drivers/mtd/myloader.c @@ -54,7 +54,6 @@ int parse_myloader_partitions(struct mtd_info *master,  	int num_parts;  	int ret, i;  	size_t retlen; -	size_t parts_len;  	char *names;  	unsigned long offset;  	unsigned long blocklen; @@ -104,8 +103,8 @@ int parse_myloader_partitions(struct mtd_info *master,  		num_parts++;  	} -	mtd_parts = kzalloc((num_parts*sizeof(*mtd_part) + num_parts*NAME_LEN_MAX), -			 GFP_KERNEL); +	mtd_parts = kzalloc((num_parts * sizeof(*mtd_part) + +				num_parts * NAME_LEN_MAX), GFP_KERNEL);  	if (!mtd_parts) {  		ret = -ENOMEM; diff --git a/target/linux/adm5120/files/drivers/mtd/trxsplit.c b/target/linux/adm5120/files/drivers/mtd/trxsplit.c index ad0e25a11..19d1e9da9 100644 --- a/target/linux/adm5120/files/drivers/mtd/trxsplit.c +++ b/target/linux/adm5120/files/drivers/mtd/trxsplit.c @@ -38,24 +38,24 @@  #define TRX_MAGIC	0x30524448	/* "HDR0" */  #define TRX_VERSION	1  #define TRX_MAX_LEN	0x3A0000 -#define TRX_NO_HEADER	1		/* Do not write TRX header */ -#define TRX_GZ_FILES	0x2     /* Contains up to TRX_MAX_OFFSET individual gzip files */ +#define TRX_NO_HEADER	0x1	/* do not write TRX header */ +#define TRX_GZ_FILES	0x2     /* contains individual gzip files */  #define TRX_MAX_OFFSET	3  #define TRX_MIN_KERNEL_SIZE	256*1024  struct trx_header { -	u32 magic;		/* "HDR0" */ -	u32 len;		/* Length of file including header */ -	u32 crc32;		/* 32-bit CRC from flag_version to end of file */ -	u32 flag_version;	/* 0:15 flags, 16:31 version */ -	u32 offsets[TRX_MAX_OFFSET];	/* Offsets of partitions from start of header */ +	u32 magic;	/* "HDR0" */ +	u32 len;	/* Length of file including header */ +	u32 crc32;	/* 32-bit CRC from flag_version to end of file */ +	u32 flag_version; /* 0:15 flags, 16:31 version */ +	u32 offsets[TRX_MAX_OFFSET]; /* Offsets of partitions */  };  #define BLOCK_LEN_MIN		0x10000 -static struct mtd_info *trx_mtd = NULL; -static unsigned long trx_offset = 0; -static int trx_nr_parts = 0; +static int trx_nr_parts; +static unsigned long trx_offset; +static struct mtd_info *trx_mtd;  static struct mtd_partition trx_parts[TRX_MAX_OFFSET];  static struct trx_header trx_hdr; @@ -66,7 +66,8 @@ static int trxsplit_checktrx(struct mtd_info *mtd, unsigned long offset)  	size_t retlen;  	int err; -	err = mtd->read(mtd, offset, sizeof(trx_hdr), &retlen, (void *)&trx_hdr); +	err = mtd->read(mtd, offset, sizeof(trx_hdr), &retlen, +			(void *)&trx_hdr);  	if (err) {  		printk(KERN_ALERT PFX "unable to read from '%s'\n", mtd->name);  		goto err_out; @@ -113,7 +114,7 @@ static void trxsplit_findtrx(struct mtd_info *mtd)  	printk(KERN_INFO PFX "searching TRX header in '%s'\n", mtd->name);  	err = 0; -	for (offset=0; offset < mtd->size; offset+=blocklen) { +	for (offset = 0; offset < mtd->size; offset += blocklen) {  		err = trxsplit_checktrx(mtd, offset);  		if (err == 0)  			break; @@ -134,7 +135,7 @@ static void trxsplit_create_partitions(struct mtd_info *mtd)  	int err;  	int i; -	for (i=0; i<TRX_MAX_OFFSET;i++) { +	for (i = 0; i < TRX_MAX_OFFSET; i++) {  		part = &trx_parts[i];  		if (trx_hdr.offsets[i] == 0)  			continue; @@ -142,12 +143,12 @@ static void trxsplit_create_partitions(struct mtd_info *mtd)  		trx_nr_parts++;  	} -	for (i=0; i<trx_nr_parts-1; i++) { +	for (i = 0; i < trx_nr_parts-1; i++)  		trx_parts[i].size = trx_parts[i+1].offset - trx_parts[i].offset; -	} +  	trx_parts[i].size = mtd->size - trx_parts[i].offset; -	i=0; +	i = 0;  	part = &trx_parts[i];  	if (part->size < TRX_MIN_KERNEL_SIZE) {  		part->name = "loader"; @@ -216,8 +217,9 @@ static int __init trxsplit_init(void)  	trxsplit_scan();  	if (trx_mtd) { -		printk(KERN_INFO PFX "creating TRX partitions in '%s' (%d,%d)\n", -			trx_mtd->name, MTD_BLOCK_MAJOR, trx_mtd->index); +		printk(KERN_INFO PFX "creating TRX partitions in '%s' " +			"(%d,%d)\n", trx_mtd->name, MTD_BLOCK_MAJOR, +			trx_mtd->index);  		trxsplit_create_partitions(trx_mtd);  	}  | 
