public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
@ 2006-10-27 15:13 Felipe Balbi
  2006-10-27 16:02 ` Dirk Behme
  0 siblings, 1 reply; 7+ messages in thread
From: Felipe Balbi @ 2006-10-27 15:13 UTC (permalink / raw)
  To: Lindgren Tony (EXT-Atomide/Helsinki), Linux OMAP Mailing List

[-- Attachment #1: Type: text/plain, Size: 536 bytes --]

This small patch solves the problem ;-)

Here's the error dump:
drivers/mmc/omap.c: In function 'mmc_omap_prepare_dma':
drivers/mmc/omap.c:636: error: 'struct mmc_data' has no member named 
'blksz_bits'
drivers/mmc/omap.c:639: error: 'struct mmc_data' has no member named 
'blksz_bits'
drivers/mmc/omap.c: In function 'mmc_omap_prepare_data':
drivers/mmc/omap.c:828: error: 'struct mmc_data' has no member named 
'blksz_bits'

Obs: The same occurs for drivers/mmc/mmc.c file

-- 
Regards,

Felipe Balbi
ext-felipe.lima@nokia.com
OSMRC


[-- Attachment #2: patch-mmc.c.diff --]
[-- Type: text/x-patch, Size: 1210 bytes --]

Index: linux-omap/drivers/mmc/omap.c
===================================================================
--- linux-omap.orig/drivers/mmc/omap.c	2006-10-27 09:18:34.000000000 -0400
+++ linux-omap/drivers/mmc/omap.c	2006-10-27 11:03:14.000000000 -0400
@@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
 	int sync_dev = 0;
 
 	data_addr = host->phys_base + OMAP_MMC_REG_DATA;
-	frame = 1 << data->blksz_bits;
+	frame = 1 << data->blksz;
 	count = sg_dma_len(sg);
 
-	if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
+	if ((data->blocks == 1) && (count > (1 << data->blksz)))
 		count = frame;
 
 	host->dma_len = count;
@@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
 	}
 
 
-	block_size = 1 << data->blksz_bits;
+	block_size = 1 << data->blksz;
 
 	OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
 	OMAP_MMC_WRITE(host, BLEN, block_size - 1);

--- linux-omap/drivers/mmc/mmc.c	2006-10-26 06:42:31.000000000 -0400
+++ linux-omap-dev/drivers/mmc/mmc.c	2006-10-26 09:53:24.000000000 -0400
@@ -996,7 +996,7 @@
 
 		mmc_set_data_timeout(&data, card, 0);
 
-		data.blksz = 1 << 3;
+		data.blksz_bits = 1 << 3;
 		data.blocks = 1;
 		data.flags = MMC_DATA_READ;
 		data.sg = &sg;


[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 15:13 [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c Felipe Balbi
@ 2006-10-27 16:02 ` Dirk Behme
  2006-10-27 16:20   ` Felipe Balbi
  0 siblings, 1 reply; 7+ messages in thread
From: Dirk Behme @ 2006-10-27 16:02 UTC (permalink / raw)
  To: Felipe Balbi
  Cc: Linux OMAP Mailing List, Lindgren Tony (EXT-Atomide/Helsinki)

[-- Attachment #1: Type: text/plain, Size: 2460 bytes --]

Felipe Balbi wrote:
> This small patch solves the problem ;-)
> 
> Here's the error dump:
> drivers/mmc/omap.c: In function 'mmc_omap_prepare_dma':
> drivers/mmc/omap.c:636: error: 'struct mmc_data' has no member named 
> 'blksz_bits'
> drivers/mmc/omap.c:639: error: 'struct mmc_data' has no member named 
> 'blksz_bits'
> drivers/mmc/omap.c: In function 'mmc_omap_prepare_data':
> drivers/mmc/omap.c:828: error: 'struct mmc_data' has no member named 
> 'blksz_bits'
> 
> Obs: The same occurs for drivers/mmc/mmc.c file
> 
> 
> ------------------------------------------------------------------------
> 
> Index: linux-omap/drivers/mmc/omap.c
> ===================================================================
> --- linux-omap.orig/drivers/mmc/omap.c	2006-10-27 09:18:34.000000000 -0400
> +++ linux-omap/drivers/mmc/omap.c	2006-10-27 11:03:14.000000000 -0400
> @@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>  	int sync_dev = 0;
>  
>  	data_addr = host->phys_base + OMAP_MMC_REG_DATA;
> -	frame = 1 << data->blksz_bits;
> +	frame = 1 << data->blksz;
>  	count = sg_dma_len(sg);
>  
> -	if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
> +	if ((data->blocks == 1) && (count > (1 << data->blksz)))
>  		count = frame;
>  
>  	host->dma_len = count;
> @@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>  	}
>  
>  
> -	block_size = 1 << data->blksz_bits;
> +	block_size = 1 << data->blksz;
>  
>  	OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>  	OMAP_MMC_WRITE(host, BLEN, block_size - 1);
> 
> --- linux-omap/drivers/mmc/mmc.c	2006-10-26 06:42:31.000000000 -0400
> +++ linux-omap-dev/drivers/mmc/mmc.c	2006-10-26 09:53:24.000000000 -0400
> @@ -996,7 +996,7 @@
>  
>  		mmc_set_data_timeout(&data, card, 0);
>  
> -		data.blksz = 1 << 3;
> +		data.blksz_bits = 1 << 3;
>  		data.blocks = 1;
>  		data.flags = MMC_DATA_READ;
>  		data.sg = &sg;

This doesn't look correct to me (and compilation still
fails). Why do you add data.blksz_bits in mmc.c again? It
was removed by RMK at

http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blobdiff;h=5b9caa7978d34311839840243e38921255f6da4b;hp=74eaaee66de0e59532ba5655fddac5aaeea5ba08;hb=132919ba80ad207755fe271277bfefff865a54fe;f=drivers/mmc/mmc.c

Whats about the attachment instead? It additionally
removes warning

drivers/mmc/omap.c:587: warning: 'mmc_omap_switch_callback'
defined but not used

too.

Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>

[-- Attachment #2: mmc_omap_fix_patch.txt --]
[-- Type: text/plain, Size: 1182 bytes --]

Index: linux-osk/drivers/mmc/omap.c
===================================================================
--- linux-osk.orig/drivers/mmc/omap.c
+++ linux-osk/drivers/mmc/omap.c
@@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
 	schedule_work(&host->switch_work);
 }
 
-/* FIXME: Handle card insertion and removal properly. Maybe use a mask
- * for MMC state? */
-static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
-{
-}
-
 static void mmc_omap_switch_handler(void *data)
 {
 	struct mmc_omap_host *host = (struct mmc_omap_host *) data;
@@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
 	int sync_dev = 0;
 
 	data_addr = host->phys_base + OMAP_MMC_REG_DATA;
-	frame = 1 << data->blksz_bits;
+	frame = data->blksz;
 	count = sg_dma_len(sg);
 
-	if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
+	if ((data->blocks == 1) && (count > (data->blksz)))
 		count = frame;
 
 	host->dma_len = count;
@@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
 	}
 
 
-	block_size = 1 << data->blksz_bits;
+	block_size = data->blksz;
 
 	OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
 	OMAP_MMC_WRITE(host, BLEN, block_size - 1);



[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 16:02 ` Dirk Behme
@ 2006-10-27 16:20   ` Felipe Balbi
  2006-10-27 16:30     ` Felipe Balbi
  2006-10-27 16:45     ` Dirk Behme
  0 siblings, 2 replies; 7+ messages in thread
From: Felipe Balbi @ 2006-10-27 16:20 UTC (permalink / raw)
  To: ext Dirk Behme, Linux OMAP Mailing List

ext Dirk Behme wrote:
> Felipe Balbi wrote:
>> This small patch solves the problem ;-)
>>
>> Here's the error dump:
>> drivers/mmc/omap.c: In function 'mmc_omap_prepare_dma':
>> drivers/mmc/omap.c:636: error: 'struct mmc_data' has no member named 
>> 'blksz_bits'
>> drivers/mmc/omap.c:639: error: 'struct mmc_data' has no member named 
>> 'blksz_bits'
>> drivers/mmc/omap.c: In function 'mmc_omap_prepare_data':
>> drivers/mmc/omap.c:828: error: 'struct mmc_data' has no member named 
>> 'blksz_bits'
>>
>> Obs: The same occurs for drivers/mmc/mmc.c file
>>
>>
>> ------------------------------------------------------------------------
>>
>> Index: linux-omap/drivers/mmc/omap.c
>> ===================================================================
>> --- linux-omap.orig/drivers/mmc/omap.c    2006-10-27 
>> 09:18:34.000000000 -0400
>> +++ linux-omap/drivers/mmc/omap.c    2006-10-27 11:03:14.000000000 -0400
>> @@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>      int sync_dev = 0;
>>  
>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>> -    frame = 1 << data->blksz_bits;
>> +    frame = 1 << data->blksz;
>>      count = sg_dma_len(sg);
>>  
>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>> +    if ((data->blocks == 1) && (count > (1 << data->blksz)))
>>          count = frame;
>>  
>>      host->dma_len = count;
>> @@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>      }
>>  
>>  
>> -    block_size = 1 << data->blksz_bits;
>> +    block_size = 1 << data->blksz;
>>  
>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>
>> --- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
>> +++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 09:53:24.000000000 
>> -0400
>> @@ -996,7 +996,7 @@
>>  
>>          mmc_set_data_timeout(&data, card, 0);
>>  
>> -        data.blksz = 1 << 3;
>> +        data.blksz_bits = 1 << 3;
>>          data.blocks = 1;
>>          data.flags = MMC_DATA_READ;
>>          data.sg = &sg;
>
> This doesn't look correct to me (and compilation still
> fails). Why do you add data.blksz_bits in mmc.c again? It
> was removed by RMK at
>
> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blobdiff;h=5b9caa7978d34311839840243e38921255f6da4b;hp=74eaaee66de0e59532ba5655fddac5aaeea5ba08;hb=132919ba80ad207755fe271277bfefff865a54fe;f=drivers/mmc/mmc.c 
>
>
> Whats about the attachment instead? It additionally
> removes warning
>
> drivers/mmc/omap.c:587: warning: 'mmc_omap_switch_callback'
> defined but not used
>
> too.
>
> Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
> ------------------------------------------------------------------------
>
> Index: linux-osk/drivers/mmc/omap.c
> ===================================================================
> --- linux-osk.orig/drivers/mmc/omap.c
> +++ linux-osk/drivers/mmc/omap.c
> @@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
>  	schedule_work(&host->switch_work);
>  }
>  
> -/* FIXME: Handle card insertion and removal properly. Maybe use a mask
> - * for MMC state? */
> -static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
> -{
> -}
> -
>  static void mmc_omap_switch_handler(void *data)
>  {
>  	struct mmc_omap_host *host = (struct mmc_omap_host *) data;
> @@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>  	int sync_dev = 0;
>  
>  	data_addr = host->phys_base + OMAP_MMC_REG_DATA;
> -	frame = 1 << data->blksz_bits;
> +	frame = data->blksz;
>  	count = sg_dma_len(sg);
>  
> -	if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
> +	if ((data->blocks == 1) && (count > (data->blksz)))
>  		count = frame;
>  
>  	host->dma_len = count;
> @@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>  	}
>  
>  
> -	block_size = 1 << data->blksz_bits;
> +	block_size = data->blksz;
>  
>  	OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>  	OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>
>
>   
But then you will need to modify the struct mmc_data... and that didn't 
seem correct for me 'cause every module using this structure (and 
probable future modules) would need to modify the same way you did...

-- 
Regards,

Felipe Balbi
ext-felipe.lima@nokia.com
OSMRC

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 16:20   ` Felipe Balbi
@ 2006-10-27 16:30     ` Felipe Balbi
  2006-10-27 16:45     ` Dirk Behme
  1 sibling, 0 replies; 7+ messages in thread
From: Felipe Balbi @ 2006-10-27 16:30 UTC (permalink / raw)
  Cc: Linux OMAP Mailing List

I just saw an error in the patch generation...

(...)

--- linux-omap/drivers/mmc/mmc.c	2006-10-26 06:42:31.000000000 -0400
+++ linux-omap-dev/drivers/mmc/mmc.c	2006-10-26 09:53:24.000000000 -0400
@@ -996,7 +996,7 @@
 
 		mmc_set_data_timeout(&data, card, 0);
 
-		data.blksz = 1 << 3;
+		data.blksz_bits = 1 << 3;
 		data.blocks = 1;
 		data.flags = MMC_DATA_READ;
 		data.sg = &sg;

The module should actually be inverted here... just like:

(...)

--- linux-omap/drivers/mmc/mmc.c	2006-10-26 06:42:31.000000000 -0400
+++ linux-omap-dev/drivers/mmc/mmc.c	2006-10-26 09:53:24.000000000 -0400
@@ -996,7 +996,7 @@
 
 		mmc_set_data_timeout(&data, card, 0);

-		data.blksz_bits = 1 << 3;
+		data.blksz = 1 << 3;
 		data.blocks = 1;
 		data.flags = MMC_DATA_READ;
 		data.sg = &sg;


I look at my quilt "repository" and the patch is ok... Don't know how 
that happened.

ext Felipe Balbi wrote:
> ext Dirk Behme wrote:
>> Felipe Balbi wrote:
>>> This small patch solves the problem ;-)
>>>
>>> Here's the error dump:
>>> drivers/mmc/omap.c: In function 'mmc_omap_prepare_dma':
>>> drivers/mmc/omap.c:636: error: 'struct mmc_data' has no member named 
>>> 'blksz_bits'
>>> drivers/mmc/omap.c:639: error: 'struct mmc_data' has no member named 
>>> 'blksz_bits'
>>> drivers/mmc/omap.c: In function 'mmc_omap_prepare_data':
>>> drivers/mmc/omap.c:828: error: 'struct mmc_data' has no member named 
>>> 'blksz_bits'
>>>
>>> Obs: The same occurs for drivers/mmc/mmc.c file
>>>
>>>
>>> ------------------------------------------------------------------------ 
>>>
>>>
>>> Index: linux-omap/drivers/mmc/omap.c
>>> ===================================================================
>>> --- linux-omap.orig/drivers/mmc/omap.c    2006-10-27 
>>> 09:18:34.000000000 -0400
>>> +++ linux-omap/drivers/mmc/omap.c    2006-10-27 11:03:14.000000000 
>>> -0400
>>> @@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>>      int sync_dev = 0;
>>>  
>>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>> -    frame = 1 << data->blksz_bits;
>>> +    frame = 1 << data->blksz;
>>>      count = sg_dma_len(sg);
>>>  
>>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>>> +    if ((data->blocks == 1) && (count > (1 << data->blksz)))
>>>          count = frame;
>>>  
>>>      host->dma_len = count;
>>> @@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>>      }
>>>  
>>>  
>>> -    block_size = 1 << data->blksz_bits;
>>> +    block_size = 1 << data->blksz;
>>>  
>>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>>
>>> --- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
>>> +++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 
>>> 09:53:24.000000000 -0400
>>> @@ -996,7 +996,7 @@
>>>  
>>>          mmc_set_data_timeout(&data, card, 0);
>>>  
>>> -        data.blksz = 1 << 3;
>>> +        data.blksz_bits = 1 << 3;
>>>          data.blocks = 1;
>>>          data.flags = MMC_DATA_READ;
>>>          data.sg = &sg;
>>
>> This doesn't look correct to me (and compilation still
>> fails). Why do you add data.blksz_bits in mmc.c again? It
>> was removed by RMK at
>>
>> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blobdiff;h=5b9caa7978d34311839840243e38921255f6da4b;hp=74eaaee66de0e59532ba5655fddac5aaeea5ba08;hb=132919ba80ad207755fe271277bfefff865a54fe;f=drivers/mmc/mmc.c 
>>
>>
>> Whats about the attachment instead? It additionally
>> removes warning
>>
>> drivers/mmc/omap.c:587: warning: 'mmc_omap_switch_callback'
>> defined but not used
>>
>> too.
>>
>> Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
>> ------------------------------------------------------------------------
>>
>> Index: linux-osk/drivers/mmc/omap.c
>> ===================================================================
>> --- linux-osk.orig/drivers/mmc/omap.c
>> +++ linux-osk/drivers/mmc/omap.c
>> @@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
>>      schedule_work(&host->switch_work);
>>  }
>>  
>> -/* FIXME: Handle card insertion and removal properly. Maybe use a mask
>> - * for MMC state? */
>> -static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
>> -{
>> -}
>> -
>>  static void mmc_omap_switch_handler(void *data)
>>  {
>>      struct mmc_omap_host *host = (struct mmc_omap_host *) data;
>> @@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>      int sync_dev = 0;
>>  
>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>> -    frame = 1 << data->blksz_bits;
>> +    frame = data->blksz;
>>      count = sg_dma_len(sg);
>>  
>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>> +    if ((data->blocks == 1) && (count > (data->blksz)))
>>          count = frame;
>>  
>>      host->dma_len = count;
>> @@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>      }
>>  
>>  
>> -    block_size = 1 << data->blksz_bits;
>> +    block_size = data->blksz;
>>  
>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>
>>
>>   
> But then you will need to modify the struct mmc_data... and that 
> didn't seem correct for me 'cause every module using this structure 
> (and probable future modules) would need to modify the same way you 
> did...
>

-- 
Regards,

Felipe Balbi
ext-felipe.lima@nokia.com
OSMRC

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 16:20   ` Felipe Balbi
  2006-10-27 16:30     ` Felipe Balbi
@ 2006-10-27 16:45     ` Dirk Behme
  2006-10-27 17:51       ` Felipe Balbi
  1 sibling, 1 reply; 7+ messages in thread
From: Dirk Behme @ 2006-10-27 16:45 UTC (permalink / raw)
  To: Felipe Balbi; +Cc: Linux OMAP Mailing List

Felipe Balbi wrote:
>>> Index: linux-omap/drivers/mmc/omap.c
>>> ===================================================================
>>> --- linux-omap.orig/drivers/mmc/omap.c    2006-10-27 
>>> 09:18:34.000000000 -0400
>>> +++ linux-omap/drivers/mmc/omap.c    2006-10-27 11:03:14.000000000 -0400
>>> @@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>>      int sync_dev = 0;
>>>  
>>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>> -    frame = 1 << data->blksz_bits;
>>> +    frame = 1 << data->blksz;
>>>      count = sg_dma_len(sg);
>>>  
>>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>>> +    if ((data->blocks == 1) && (count > (1 << data->blksz)))
>>>          count = frame;
>>>  
>>>      host->dma_len = count;
>>> @@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>>      }
>>>  
>>>  
>>> -    block_size = 1 << data->blksz_bits;
>>> +    block_size = 1 << data->blksz;
>>>  
>>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>>
>>> --- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
>>> +++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 09:53:24.000000000 
>>> -0400
>>> @@ -996,7 +996,7 @@
>>>  
>>>          mmc_set_data_timeout(&data, card, 0);
>>>  
>>> -        data.blksz = 1 << 3;
>>> +        data.blksz_bits = 1 << 3;
>>>          data.blocks = 1;
>>>          data.flags = MMC_DATA_READ;
>>>          data.sg = &sg;
>>
>>
>> This doesn't look correct to me (and compilation still
>> fails). Why do you add data.blksz_bits in mmc.c again? It
>> was removed by RMK at
>>
>> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blobdiff;h=5b9caa7978d34311839840243e38921255f6da4b;hp=74eaaee66de0e59532ba5655fddac5aaeea5ba08;hb=132919ba80ad207755fe271277bfefff865a54fe;f=drivers/mmc/mmc.c 
>>
>>
>> Whats about the attachment instead? It additionally
>> removes warning
>>
>> drivers/mmc/omap.c:587: warning: 'mmc_omap_switch_callback'
>> defined but not used
>>
>> too.
>>
>> Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
>> ------------------------------------------------------------------------
>>
>> Index: linux-osk/drivers/mmc/omap.c
>> ===================================================================
>> --- linux-osk.orig/drivers/mmc/omap.c
>> +++ linux-osk/drivers/mmc/omap.c
>> @@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
>>      schedule_work(&host->switch_work);
>>  }
>>  
>> -/* FIXME: Handle card insertion and removal properly. Maybe use a mask
>> - * for MMC state? */
>> -static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
>> -{
>> -}
>> -
>>  static void mmc_omap_switch_handler(void *data)
>>  {
>>      struct mmc_omap_host *host = (struct mmc_omap_host *) data;
>> @@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>      int sync_dev = 0;
>>  
>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>> -    frame = 1 << data->blksz_bits;
>> +    frame = data->blksz;
>>      count = sg_dma_len(sg);
>>  
>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>> +    if ((data->blocks == 1) && (count > (data->blksz)))
>>          count = frame;
>>  
>>      host->dma_len = count;
>> @@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>      }
>>  
>>  
>> -    block_size = 1 << data->blksz_bits;
>> +    block_size = data->blksz;
>>  
>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>
>>
>>   
> 
> But then you will need to modify the struct mmc_data...

Mmh, why? Above patch compiles for me.

blksz is part of the global struct mmc_data, isn't it?

http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=commitdiff;h=132919ba80ad207755fe271277bfefff865a54fe

http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=commit;h=132919ba80ad207755fe271277bfefff865a54fe

Do we both talk about recent git? Or do you use an other or 
locally modified version?

Best regards

Dirk

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 16:45     ` Dirk Behme
@ 2006-10-27 17:51       ` Felipe Balbi
  2006-10-27 18:21         ` Dirk Behme
  0 siblings, 1 reply; 7+ messages in thread
From: Felipe Balbi @ 2006-10-27 17:51 UTC (permalink / raw)
  To: ext Dirk Behme; +Cc: Linux OMAP Mailing List

ext Dirk Behme wrote:
> Felipe Balbi wrote:
>>>> Index: linux-omap/drivers/mmc/omap.c
>>>> ===================================================================
>>>> --- linux-omap.orig/drivers/mmc/omap.c    2006-10-27 
>>>> 09:18:34.000000000 -0400
>>>> +++ linux-omap/drivers/mmc/omap.c    2006-10-27 11:03:14.000000000 
>>>> -0400
>>>> @@ -633,10 +633,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>>>      int sync_dev = 0;
>>>>  
>>>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>>> -    frame = 1 << data->blksz_bits;
>>>> +    frame = 1 << data->blksz;
>>>>      count = sg_dma_len(sg);
>>>>  
>>>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>>>> +    if ((data->blocks == 1) && (count > (1 << data->blksz)))
>>>>          count = frame;
>>>>  
>>>>      host->dma_len = count;
>>>> @@ -825,7 +825,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>>>      }
>>>>  
>>>>  
>>>> -    block_size = 1 << data->blksz_bits;
>>>> +    block_size = 1 << data->blksz;
>>>>  
>>>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>>>
>>>> --- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 
>>>> -0400
>>>> +++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 
>>>> 09:53:24.000000000 -0400
>>>> @@ -996,7 +996,7 @@
>>>>  
>>>>          mmc_set_data_timeout(&data, card, 0);
>>>>  
>>>> -        data.blksz = 1 << 3;
>>>> +        data.blksz_bits = 1 << 3;
>>>>          data.blocks = 1;
>>>>          data.flags = MMC_DATA_READ;
>>>>          data.sg = &sg;
>>>
>>>
>>> This doesn't look correct to me (and compilation still
>>> fails). Why do you add data.blksz_bits in mmc.c again? It
>>> was removed by RMK at
>>>
>>> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blobdiff;h=5b9caa7978d34311839840243e38921255f6da4b;hp=74eaaee66de0e59532ba5655fddac5aaeea5ba08;hb=132919ba80ad207755fe271277bfefff865a54fe;f=drivers/mmc/mmc.c 
>>>
>>>
>>> Whats about the attachment instead? It additionally
>>> removes warning
>>>
>>> drivers/mmc/omap.c:587: warning: 'mmc_omap_switch_callback'
>>> defined but not used
>>>
>>> too.
>>>
>>> Signed-off-by: Dirk Behme <dirk.behme_at_gmail.com>
>>> ------------------------------------------------------------------------ 
>>>
>>>
>>> Index: linux-osk/drivers/mmc/omap.c
>>> ===================================================================
>>> --- linux-osk.orig/drivers/mmc/omap.c
>>> +++ linux-osk/drivers/mmc/omap.c
>>> @@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
>>>      schedule_work(&host->switch_work);
>>>  }
>>>  
>>> -/* FIXME: Handle card insertion and removal properly. Maybe use a mask
>>> - * for MMC state? */
>>> -static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
>>> -{
>>> -}
>>> -
>>>  static void mmc_omap_switch_handler(void *data)
>>>  {
>>>      struct mmc_omap_host *host = (struct mmc_omap_host *) data;
>>> @@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>>      int sync_dev = 0;
>>>  
>>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>> -    frame = 1 << data->blksz_bits;
>>> +    frame = data->blksz;
>>>      count = sg_dma_len(sg);
>>>  
>>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>>> +    if ((data->blocks == 1) && (count > (data->blksz)))
>>>          count = frame;
>>>  
>>>      host->dma_len = count;
>>> @@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>>      }
>>>  
>>>  
>>> -    block_size = 1 << data->blksz_bits;
>>> +    block_size = data->blksz;
>>>  
>>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>>
>>>
>>>   
>>
>> But then you will need to modify the struct mmc_data...
>
> Mmh, why? Above patch compiles for me.
>
> blksz is part of the global struct mmc_data, isn't it?
>
> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=commitdiff;h=132919ba80ad207755fe271277bfefff865a54fe 
>
>
> http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=commit;h=132919ba80ad207755fe271277bfefff865a54fe 
>
>
> Do we both talk about recent git? Or do you use an other or locally 
> modified version?
>
> Best regards
>
> Dirk
>
Yep, my git tree is the newest version...
And I made a mistake here...

--- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
+++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 09:53:24.000000000 -0400
@@ -996,7 +996,7 @@
 
         mmc_set_data_timeout(&data, card, 0);
 
-        data.blksz = 1 << 3;
+        data.blksz_bits = 1 << 3;
         data.blocks = 1;
         data.flags = MMC_DATA_READ;
         data.sg = &sg;

It's deordered... it should appear like:

--- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
+++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 09:53:24.000000000 -0400
@@ -996,7 +996,7 @@
 
         mmc_set_data_timeout(&data, card, 0);
 
-        data.blksz_bits = 1 << 3;
+        data.blksz = 1 << 3;
         data.blocks = 1;
         data.flags = MMC_DATA_READ;
         data.sg = &sg;

-- 
Best Regards,

Felipe Balbi
ext-felipe.lima@nokia.com
OSMRC

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c
  2006-10-27 17:51       ` Felipe Balbi
@ 2006-10-27 18:21         ` Dirk Behme
  0 siblings, 0 replies; 7+ messages in thread
From: Dirk Behme @ 2006-10-27 18:21 UTC (permalink / raw)
  To: Felipe Balbi; +Cc: Linux OMAP Mailing List

Felipe Balbi wrote:
> ext Dirk Behme wrote:
>>>> Index: linux-osk/drivers/mmc/omap.c
>>>> ===================================================================
>>>> --- linux-osk.orig/drivers/mmc/omap.c
>>>> +++ linux-osk/drivers/mmc/omap.c
>>>> @@ -581,12 +581,6 @@ static void mmc_omap_switch_timer(unsign
>>>>      schedule_work(&host->switch_work);
>>>>  }
>>>>  
>>>> -/* FIXME: Handle card insertion and removal properly. Maybe use a mask
>>>> - * for MMC state? */
>>>> -static void mmc_omap_switch_callback(unsigned long data, u8 mmc_mask)
>>>> -{
>>>> -}
>>>> -
>>>>  static void mmc_omap_switch_handler(void *data)
>>>>  {
>>>>      struct mmc_omap_host *host = (struct mmc_omap_host *) data;
>>>> @@ -633,10 +627,10 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>>>      int sync_dev = 0;
>>>>  
>>>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>>> -    frame = 1 << data->blksz_bits;
>>>> +    frame = data->blksz;
>>>>      count = sg_dma_len(sg);
>>>>  
>>>> -    if ((data->blocks == 1) && (count > (1 << data->blksz_bits)))
>>>> +    if ((data->blocks == 1) && (count > (data->blksz)))
>>>>          count = frame;
>>>>  
>>>>      host->dma_len = count;
>>>> @@ -825,7 +819,7 @@ mmc_omap_prepare_data(struct mmc_omap_ho
>>>>      }
>>>>  
>>>>  
>>>> -    block_size = 1 << data->blksz_bits;
>>>> +    block_size = data->blksz;
>>>>  
>>>>      OMAP_MMC_WRITE(host, NBLK, data->blocks - 1);
>>>>      OMAP_MMC_WRITE(host, BLEN, block_size - 1);
>>>>
...
> Yep, my git tree is the newest version...
...
> --- linux-omap/drivers/mmc/mmc.c    2006-10-26 06:42:31.000000000 -0400
> +++ linux-omap-dev/drivers/mmc/mmc.c    2006-10-26 09:53:24.000000000 -0400
> @@ -996,7 +996,7 @@
> 
>         mmc_set_data_timeout(&data, card, 0);
> 
> -        data.blksz_bits = 1 << 3;
> +        data.blksz = 1 << 3;
>         data.blocks = 1;
>         data.flags = MMC_DATA_READ;
>         data.sg = &sg;

Weird. My drivers/mmc/mmc.c looks

...
mmc_set_data_timeout(&data, card, 0);

data.blksz = 1 << 3;
data.blocks = 1;
data.flags = MMC_DATA_READ;
data.sg = &sg;
data.sg_len = 1;
...

without any patch. Looking at line ~999 of

http://source.mvista.com/git/gitweb.cgi?p=linux-omap-2.6.git;a=blob;h=ee8863c123e37881e0f35ee658a15fd5e925ad31;hb=591db7639fd7e2b2ae3f82851ee1d25beac714c4;f=drivers/mmc/mmc.c#999

it's the same. So I don't have to touch mmc.c for my patch 
above.

Best regards

Dirk

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2006-10-27 18:21 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-27 15:13 [PATCH]: Fixing blksz_bits calling inside drivers/mmc/mmc.c and drivers/mmc/omap.c Felipe Balbi
2006-10-27 16:02 ` Dirk Behme
2006-10-27 16:20   ` Felipe Balbi
2006-10-27 16:30     ` Felipe Balbi
2006-10-27 16:45     ` Dirk Behme
2006-10-27 17:51       ` Felipe Balbi
2006-10-27 18:21         ` Dirk Behme

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox