RE: [PATCH] dspi: config dspi master regmap with right mode depend on BE or LE

From: Po Liu
Date: Mon Apr 18 2016 - 23:04:37 EST


Hi Mark and Scott,

Thank you very much both!
The default dspi in the .dtsi setting to be Big endian as default. But it will hang at cpu setting big endian mode. After setting _format_endian = REGMAP_ENDIAN_LITTLE will fix it only in big endian mode.

We'll check it more about the val_format_endian_default.


Best regards,
Liu Po


Best regards,
Liu Po

EXT:8038


-----Original Message-----
From: Mark Brown [mailto:broonie@xxxxxxxxxx]
Sent: Monday, April 18, 2016 6:11 PM
To: Scott Wood
Cc: Po Liu; linux-spi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: [PATCH] dspi: config dspi master regmap with right mode depend on BE or LE

On Sun, Apr 17, 2016 at 02:41:40AM +0000, Scott Wood wrote:

> Looking more closely, the binding has a big-endian property. It says
> the default if that property is absent is native endian, which is
> insane. Fix the binding to say that little endian is the default
> (this change shouldn't break any existing trees), and make sure that's
> what the code implements. I think you need val_format_endian_default,
> not val_format_endian.

The binding defaults to little endian and (in implmentation terms) always has done though that used to be unintentional. There *are* a reasonable number of devices out there which are native endian, for example most of the MIPS chips switch the endianness of the entire chip rather than just the CPU, but most of the current usage has been on ARM devices which only switch the core.