lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 27 Nov 2006 09:43:12 -0400
From:	Anderson Briglia <anderson.briglia@...t.org.br>
To:	ext Pierre Ossman <drzeus-list@...eus.cx>
CC:	"Linux-omap-open-source@...ux.omap.com" 
	<linux-omap-open-source@...ux.omap.com>,
	Russell King <rmk+lkml@....linux.org.uk>,
	Tony Lindgren <tony@...mide.com>,
	"Aguiar Carlos (EXT-INdT/Manaus)" <carlos.aguiar@...t.org.br>,
	ext David Brownell <david-b@...bell.net>,
	"Lizardo Anderson (EXT-INdT/Manaus)" <anderson.lizardo@...t.org.br>,
	linux-kernel@...r.kernel.org
Subject: Re: [patch 5/5] [RFC] Add MMC Password Protection (lock/unlock) support
 V7: mmc_omap_dma.diff

ext Pierre Ossman wrote:
> Anderson Briglia wrote:
>> OMAP platform specific patch.
>> - Adjust the frame size for DMA transfers.
>>
>> Signed-off-by: Anderson Briglia <anderson.briglia <at> indt.org.br>
>> Signed-off-by: Carlos Eduardo Aguiar <carlos.aguiar <at> indt.org.br>
>>
> 
> This looks like a generic patch for OMAP and shouldn't be in this set.

This patch is needed only for lock/unlock commands. So, it's necessary to
make MMC omap works when using that feature. It's not a generic patch.
But I can take off this one from the series and send after (if) the series
is integrated.

> 
>> Index: linux-omap-2.6.git/drivers/mmc/omap.c
>> ===================================================================
>> --- linux-omap-2.6.git.orig/drivers/mmc/omap.c    2006-11-22
>> 09:07:25.000000000 -0400
>> +++ linux-omap-2.6.git/drivers/mmc/omap.c    2006-11-22
>> 09:19:03.000000000 -0400
>> @@ -629,6 +629,14 @@ mmc_omap_prepare_dma(struct mmc_omap_hos
>>
>>      data_addr = host->phys_base + OMAP_MMC_REG_DATA;
>>      frame = data->blksz;
>> +
>> +#ifdef CONFIG_MMC_PASSWORDS
>> +    /* MMC LOCK/UNLOCK: Do frame size multiple of two. This is
>> +     * needed for DMA transfers to work properly, once
>> +     * the block size depends on MMC password length.
>> +     */
>> +    frame += frame&0x1;
>> +#endif
>>      count = sg_dma_len(sg);
>>
>>      if ((data->blocks == 1) && (count > (data->blksz)))
>>
> 
> Now this you're going to have to explain to me. Especially the part
> where why this is specific to the lock commands.

frame depends on data->blksz. When we were using data->blksz_bits everything was
ok because we always had a multiple of 16 bits (2 bytes). Once a pwd can has a size
not multiple of 2, the value must be rounded.
According to MMC OMAP Technical Reference Manual, because of each DMA transfer is of
equal size, it is necessary to have the block size of the transfer be a multiple of
the DMA write access size (which is 2 bytes).

I'm not a DMA expert, If I misunderstand something, please, correct me.

Best Regards,

Anderson Briglia

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ