Hi, On Fri, May 25, 2018 at 03:27:26PM +0300, Sakari Ailus wrote: > Use the "upside-down" property to tell that the sensor is mounted upside > down. This reverses the behaviour of the VFLIP and HFLIP controls as well > as the pixel order. > > Signed-off-by: Sakari Ailus <[email protected]> > ---
Patch subject and description should be s/"upside-down"/"rotation"/g ?
> .../devicetree/bindings/media/i2c/nokia,smia.txt | 2 ++
> drivers/media/i2c/smiapp/smiapp-core.c | 16
> ++++++++++++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
> b/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
> index 33f10a94c381..6f509657470e 100644
> --- a/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
> +++ b/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt
> @@ -29,6 +29,8 @@ Optional properties
> - reset-gpios: XSHUTDOWN GPIO
> - flash-leds: See ../video-interfaces.txt
> - lens-focus: See ../video-interfaces.txt
> +- rotation: Integer property; valid values are 0 (sensor mounted upright)
> + and 180 (sensor mounted upside down).
>
>
> Endpoint node mandatory properties
> diff --git a/drivers/media/i2c/smiapp/smiapp-core.c
> b/drivers/media/i2c/smiapp/smiapp-core.c
> index e1f8208581aa..32286df6ab43 100644
> --- a/drivers/media/i2c/smiapp/smiapp-core.c
> +++ b/drivers/media/i2c/smiapp/smiapp-core.c
> @@ -2764,6 +2764,7 @@ static struct smiapp_hwconfig
> *smiapp_get_hwconfig(struct device *dev)
> struct v4l2_fwnode_endpoint *bus_cfg;
> struct fwnode_handle *ep;
> struct fwnode_handle *fwnode = dev_fwnode(dev);
> + u32 rotation;
> int i;
> int rval;
>
> @@ -2800,6 +2801,21 @@ static struct smiapp_hwconfig
> *smiapp_get_hwconfig(struct device *dev)
>
> dev_dbg(dev, "lanes %u\n", hwcfg->lanes);
>
> + rval = fwnode_property_read_u32(fwnode, "upside-down", &rotation);
"rotation"
> + if (!rval) {
> + switch (rotation) {
> + case 180:
> + hwcfg->module_board_orient =
> + SMIAPP_MODULE_BOARD_ORIENT_180;
> + /* Fall through */
> + case 0:
> + break;
> + default:
> + dev_err(dev, "invalid rotation %u\n", rotation);
> + goto out_err;
> + }
> + }
> +
> /* NVM size is not mandatory */
> fwnode_property_read_u32(fwnode, "nokia,nvm-size", &hwcfg->nvm_size);
-- Sebastian
signature.asc
Description: PGP signature
