max98390.c (122cef68f1035e704ff7fe778c07d596bf5a1fa2) max98390.c (397ff024960634962af93e9e2775fc0e4fe7de92)
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * max98390.c -- MAX98390 ALSA Soc Audio driver
4 *
5 * Copyright (C) 2020 Maxim Integrated Products
6 *
7 */
8

--- 1007 unchanged lines hidden (view full) ---

1016
1017static int max98390_i2c_probe(struct i2c_client *i2c)
1018{
1019 int ret = 0;
1020 int reg = 0;
1021
1022 struct max98390_priv *max98390 = NULL;
1023 struct i2c_adapter *adapter = i2c->adapter;
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * max98390.c -- MAX98390 ALSA Soc Audio driver
4 *
5 * Copyright (C) 2020 Maxim Integrated Products
6 *
7 */
8

--- 1007 unchanged lines hidden (view full) ---

1016
1017static int max98390_i2c_probe(struct i2c_client *i2c)
1018{
1019 int ret = 0;
1020 int reg = 0;
1021
1022 struct max98390_priv *max98390 = NULL;
1023 struct i2c_adapter *adapter = i2c->adapter;
1024 struct gpio_desc *reset_gpio;
1024
1025 ret = i2c_check_functionality(adapter,
1026 I2C_FUNC_SMBUS_BYTE
1027 | I2C_FUNC_SMBUS_BYTE_DATA);
1028 if (!ret) {
1029 dev_err(&i2c->dev, "I2C check functionality failed\n");
1030 return -ENXIO;
1031 }

--- 35 unchanged lines hidden (view full) ---

1067 max98390->regmap = devm_regmap_init_i2c(i2c, &max98390_regmap);
1068 if (IS_ERR(max98390->regmap)) {
1069 ret = PTR_ERR(max98390->regmap);
1070 dev_err(&i2c->dev,
1071 "Failed to allocate regmap: %d\n", ret);
1072 return ret;
1073 }
1074
1025
1026 ret = i2c_check_functionality(adapter,
1027 I2C_FUNC_SMBUS_BYTE
1028 | I2C_FUNC_SMBUS_BYTE_DATA);
1029 if (!ret) {
1030 dev_err(&i2c->dev, "I2C check functionality failed\n");
1031 return -ENXIO;
1032 }

--- 35 unchanged lines hidden (view full) ---

1068 max98390->regmap = devm_regmap_init_i2c(i2c, &max98390_regmap);
1069 if (IS_ERR(max98390->regmap)) {
1070 ret = PTR_ERR(max98390->regmap);
1071 dev_err(&i2c->dev,
1072 "Failed to allocate regmap: %d\n", ret);
1073 return ret;
1074 }
1075
1076 reset_gpio = devm_gpiod_get_optional(&i2c->dev,
1077 "reset", GPIOD_OUT_HIGH);
1078
1079 /* Power on device */
1080 if (reset_gpio) {
1081 usleep_range(1000, 2000);
1082 /* bring out of reset */
1083 gpiod_set_value_cansleep(reset_gpio, 0);
1084 usleep_range(1000, 2000);
1085 }
1086
1075 /* Check Revision ID */
1076 ret = regmap_read(max98390->regmap,
1077 MAX98390_R24FF_REV_ID, &reg);
1078 if (ret) {
1079 dev_err(&i2c->dev,
1080 "ret=%d, Failed to read: 0x%02X\n",
1081 ret, MAX98390_R24FF_REV_ID);
1082 return ret;

--- 49 unchanged lines hidden ---
1087 /* Check Revision ID */
1088 ret = regmap_read(max98390->regmap,
1089 MAX98390_R24FF_REV_ID, &reg);
1090 if (ret) {
1091 dev_err(&i2c->dev,
1092 "ret=%d, Failed to read: 0x%02X\n",
1093 ret, MAX98390_R24FF_REV_ID);
1094 return ret;

--- 49 unchanged lines hidden ---