linux-stable/include/linux/mfd/ntxec.h
Andreas Kemnade d1157530d4 mfd: ntxec: Support for EC in Tolino Shine 2 HD
Add the version of the EC in the Tolino Shine 2 HD
to the supported versions. It seems not to have an RTC
and does not ack data written to it.
The vendor kernel happily ignores write errors, using
I2C via userspace i2c-set also shows the error.
So add a quirk to ignore that error.

PWM can be successfully configured despite of that error.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Reviewed-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
2021-04-14 16:06:29 +01:00

38 lines
907 B
C

/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright 2020 Jonathan Neuschäfer
*
* Register access and version information for the Netronix embedded
* controller.
*/
#ifndef NTXEC_H
#define NTXEC_H
#include <linux/types.h>
struct device;
struct regmap;
struct ntxec {
struct device *dev;
struct regmap *regmap;
};
/*
* Some registers, such as the battery status register (0x41), are in
* big-endian, but others only have eight significant bits, which are in the
* first byte transmitted over I2C (the MSB of the big-endian value).
* This convenience function converts an 8-bit value to 16-bit for use in the
* second kind of register.
*/
static inline __be16 ntxec_reg8(u8 value)
{
return value << 8;
}
/* Known firmware versions */
#define NTXEC_VERSION_KOBO_AURA 0xd726 /* found in Kobo Aura */
#define NTXEC_VERSION_TOLINO_SHINE2 0xf110 /* found in Tolino Shine 2 HD */
#endif