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]
Message-ID: <3554031.r9sGg8j827@wuerfel>
Date:	Wed, 03 Feb 2016 14:41:10 +0100
From:	Arnd Bergmann <arnd@...db.de>
To:	Zubair Lutfullah Kakakhel <Zubair.Kakakhel@...tec.com>
Cc:	tj@...nel.org, hdegoede@...hat.com, david.daney@...ium.com,
	aleksey.makarov@...iumnetworks.com, devicetree@...r.kernel.org,
	linux-kernel@...r.kernel.org, linux-ide@...r.kernel.org
Subject: Re: [PATCH v6] SATA: OCTEON: support SATA on OCTEON platform

On Wednesday 03 February 2016 13:24:10 Zubair Lutfullah Kakakhel wrote:
> 
> Bitfields for both endians are used and handled by mips.
> Mainly used by cavium.
> 
> As this is a cavium driver, would it be acceptable?
> 
> Or should I replace with the following.
> 
>         v = cvmx_read_csr((uint64_t)base + CVMX_SATA_UCTL_SHIM_CFG);
>         v &= ~(SATA_UCTL_ENDIAN_MODE_E_MASK << DMA_ENDIAN_MODE);
>         v &= ~(SATA_UCTL_ENDIAN_MODE_E_MASK << CSR_ENDIAN_MODE);
> #ifdef __BIG_ENDIAN
>         v |= SATA_UCTL_ENDIAN_MODE_E_BIG << DMA_ENDIAN_MODE;
>         v |= SATA_UCTL_ENDIAN_MODE_E_BIG << CSR_ENDIAN_MODE;
> #else
>         v |= SATA_UCTL_ENDIAN_MODE_E_LITTLE << DMA_ENDIAN_MODE;
>         v |= SATA_UCTL_ENDIAN_MODE_E_LITTLE << CSR_ENDIAN_MODE;
> #endif
>         v |= 1 << DMA_READ_CMD;
>         cvmx_write_csr((uint64_t)base + CVMX_SATA_UCTL_SHIM_CFG, v);

I think something like this would be more conventional, yes. Or maybe
define the macros so you don't have to do the shift everywhere:

         v &= ~SATA_UCTL_ENDIAN_MODE_E_MASK | SATA_UCTL_ENDIAN_MODE | SATA_UCTL_DMA_READ_CMD;

	Arnd

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ