Immutable branch between MFD, Pinctrl and soundwire due for the v6.6 merge window
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmTfkKAACgkQUa+KL4f8
d2FwzxAArqA6/pebr+19TNvv6hFuUxpbR57jr0XM4YzPNvBJs/iEk1wfdGTkOdFG
NSWVGDIE4aY62mwehq0AEfYQVrTzKcAuMJZgOeg0lzReBYMhn6WuyCc192L7tgRA
H3bm2oQcSVXiNGXvKoTr9fDckBf5Ta9OcoVmf48YFQXvwv+vuO/kS77JuVkLZxwH
yycmLxD7PJlvikj8ITsg8pzj/xLhCpHziLsyMjQpgvr7hRPG+f5W0Dq9vNONI5IL
YU810I2Dp+bU5YGAElGTrSwHnI2FrCUlrcR88ukGPN9rBn84TcmypWsetMR83juo
zcn6AfUp6WuhaQxs06tTzsNc9cQpKjtjYojTZ1OYYsC7eOhlF3ifQLEiqVJbfY0W
8BN1e3QDf59ZwXAUJJKrV37yHc9/uuGVerc7dzkng0f2OHosNWzLNyy7LiOb80dD
Hp/yGxXXyiASGjswSaxqbu67TuEPWKuoceW0wRS9/ExZx+cPvEzdTzdCWYej7cDH
UmJup/J053htC1k/vos+0SRezqeuXvHXDRuwP9Lnhdct9eeDiGFn920S9d2DVjgR
PImk+O9dTnOVehNY7+I9tqBK9dM3AolH/jbEQQ6VkIfm2clewBy+1M0SohWIBW/E
4iQbtPkVXwGHI9Lp+6pP4exhA58FQCDL4KoUkchWsokF9zTM/eM=
=Sb7O
-----END PGP SIGNATURE-----
mergetag object c01467355f
type commit
tag ib-mfd-regulator-v6.6
tagger Lee Jones <lee@kernel.org> 1692391395 +0100
Immutable branch between MFD and Regulator due for the v6.6 merge window
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmTf1+MACgkQUa+KL4f8
d2G9Zg/+PKbGOPxuOunK2TJMZM2JsgLgNGWPraGnCTW3RZ7YCRmykFDX1sSAopgF
jZ8ObrbpL6sa1FxdN0FV4yh5i0DtJIj6hL6tiR/rbAagij7Sm8PsXQo/GQ89OJmp
+iioDd23pjIGMAYeG24sNor8SGG5ZDudluiSc9lGvYC6m9wUgah+LyKPuX3Zkypq
/WPlMfDsSsidlgvsvrc197h1By+XVAv//ReuPSNzA7Y9Jq+LKrK3pwgCT+AKB783
VaqaDNSGnzvTvvvHaguxyQEnmdrFG12Elom+kkP/6ZeVj3KDTE3QDRgolBnlRk4P
KPCIxJ7gWfET81H4/z+XOHSRVUHjc3puxbw9boSCm2j3YJCHbtScje6MQT6YSzeG
8FuJJXjqZf+YYhHZt4LwZQvfoS91+P/5xve9DdYStOtvGS2k9562yZmXJWYFM3uF
uu1TPgWHkA6ryF/1QRVkz4oLA71kQc47W30gZuu9xLclXRlU0OQQk/oPXCplwzUN
K1aG5GAg1Q3fsvBtfxv0xnzUGNOQbqoLHgnmx2qzY/scyhzQ9EzlqVmpI/jP9dOq
63mpIQe5OvJDyCJ1auKjBBsYR4Q2SUmTA40/4lcG0VYs/tb1jJeauxPuGTuhEFur
YpU5luPHfbWhkNO0uYq25ih8+RRXkH51CQu4TGhigMacH4b+ZX4=
=jD5V
-----END PGP SIGNATURE-----
Merge tags 'ib-mfd-pinctrl-soundwire-v6.6' and 'ib-mfd-regulator-v6.6' into ibs-for-mfd-merged
Immutable branch between MFD, Pinctrl and soundwire due for the v6.6 merge window
Immutable branch between MFD and Regulator due for the v6.6 merge window
This commit is contained in:
commit
2ccfad1c2b
@ -81,16 +81,23 @@ static int tps65086_probe(struct i2c_client *client)
|
||||
return PTR_ERR(tps->regmap);
|
||||
}
|
||||
|
||||
ret = regmap_read(tps->regmap, TPS65086_DEVICEID, &version);
|
||||
/* Store device ID to load regulator configuration that fit to IC variant */
|
||||
ret = regmap_read(tps->regmap, TPS65086_DEVICEID1, &tps->chip_id);
|
||||
if (ret) {
|
||||
dev_err(tps->dev, "Failed to read revision register\n");
|
||||
dev_err(tps->dev, "Failed to read revision register 1\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
ret = regmap_read(tps->regmap, TPS65086_DEVICEID2, &version);
|
||||
if (ret) {
|
||||
dev_err(tps->dev, "Failed to read revision register 2\n");
|
||||
return ret;
|
||||
}
|
||||
|
||||
dev_info(tps->dev, "Device: TPS65086%01lX, OTP: %c, Rev: %ld\n",
|
||||
(version & TPS65086_DEVICEID_PART_MASK),
|
||||
(char)((version & TPS65086_DEVICEID_OTP_MASK) >> 4) + 'A',
|
||||
(version & TPS65086_DEVICEID_REV_MASK) >> 6);
|
||||
(version & TPS65086_DEVICEID2_PART_MASK),
|
||||
(char)((version & TPS65086_DEVICEID2_OTP_MASK) >> 4) + 'A',
|
||||
(version & TPS65086_DEVICEID2_REV_MASK) >> 6);
|
||||
|
||||
if (tps->irq > 0) {
|
||||
ret = regmap_add_irq_chip(tps->regmap, tps->irq, IRQF_ONESHOT, 0,
|
||||
|
@ -13,8 +13,9 @@
|
||||
#include <linux/regmap.h>
|
||||
|
||||
/* List of registers for TPS65086 */
|
||||
#define TPS65086_DEVICEID 0x01
|
||||
#define TPS65086_IRQ 0x02
|
||||
#define TPS65086_DEVICEID1 0x00
|
||||
#define TPS65086_DEVICEID2 0x01
|
||||
#define TPS65086_IRQ 0x02
|
||||
#define TPS65086_IRQ_MASK 0x03
|
||||
#define TPS65086_PMICSTAT 0x04
|
||||
#define TPS65086_SHUTDNSRC 0x05
|
||||
@ -75,10 +76,16 @@
|
||||
#define TPS65086_IRQ_SHUTDN_MASK BIT(3)
|
||||
#define TPS65086_IRQ_FAULT_MASK BIT(7)
|
||||
|
||||
/* DEVICEID Register field definitions */
|
||||
#define TPS65086_DEVICEID_PART_MASK GENMASK(3, 0)
|
||||
#define TPS65086_DEVICEID_OTP_MASK GENMASK(5, 4)
|
||||
#define TPS65086_DEVICEID_REV_MASK GENMASK(7, 6)
|
||||
/* DEVICEID1 Register field definitions */
|
||||
#define TPS6508640_ID 0x00
|
||||
#define TPS65086401_ID 0x01
|
||||
#define TPS6508641_ID 0x10
|
||||
#define TPS65086470_ID 0x70
|
||||
|
||||
/* DEVICEID2 Register field definitions */
|
||||
#define TPS65086_DEVICEID2_PART_MASK GENMASK(3, 0)
|
||||
#define TPS65086_DEVICEID2_OTP_MASK GENMASK(5, 4)
|
||||
#define TPS65086_DEVICEID2_REV_MASK GENMASK(7, 6)
|
||||
|
||||
/* VID Masks */
|
||||
#define BUCK_VID_MASK GENMASK(7, 1)
|
||||
@ -100,6 +107,7 @@ enum tps65086_irqs {
|
||||
struct tps65086 {
|
||||
struct device *dev;
|
||||
struct regmap *regmap;
|
||||
unsigned int chip_id;
|
||||
|
||||
/* IRQ Data */
|
||||
int irq;
|
||||
|
Loading…
Reference in New Issue
Block a user