CC: [email protected] BCC: [email protected] In-Reply-To: <[email protected]> References: <[email protected]> TO: "Amjad Ouled-Ameur" <[email protected]> TO: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: [email protected] CC: "Amjad Ouled-Ameur" <[email protected]> CC: default avatarMichael Kao <[email protected]> CC: "default avatarHsin-Yi Wang" <[email protected]>
Hi Amjad, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on rafael-pm/thermal] [also build test WARNING on clk/clk-next soc/for-next linus/master v5.19-rc7 next-20220721] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Amjad-Ouled-Ameur/thermal-mediatek-Add-support-for-MT8365-SoC/20220721-022321 base: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git thermal :::::: branch date: 27 hours ago :::::: commit date: 27 hours ago config: ia64-randconfig-m041-20220718 (https://download.01.org/0day-ci/archive/20220722/[email protected]/config) compiler: ia64-linux-gcc (GCC) 12.1.0 If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <[email protected]> Reported-by: Dan Carpenter <[email protected]> smatch warnings: drivers/thermal/mtk_thermal.c:1223 mtk_thermal_probe() error: uninitialized symbol 'tzdev'. vim +/tzdev +1223 drivers/thermal/mtk_thermal.c 89945047b1666c Henry Yen 2020-04-30 1098 a92db1c8089e82 Sascha Hauer 2015-11-30 1099 static int mtk_thermal_probe(struct platform_device *pdev) a92db1c8089e82 Sascha Hauer 2015-11-30 1100 { bd9403943d7d19 Michael Kao 2019-02-01 1101 int ret, i, ctrl_id; a92db1c8089e82 Sascha Hauer 2015-11-30 1102 struct device_node *auxadc, *apmixedsys, *np = pdev->dev.of_node; a92db1c8089e82 Sascha Hauer 2015-11-30 1103 struct mtk_thermal *mt; a92db1c8089e82 Sascha Hauer 2015-11-30 1104 struct resource *res; a92db1c8089e82 Sascha Hauer 2015-11-30 1105 u64 auxadc_phys_base, apmixed_phys_base; 1f6b0889d0ea03 Axel Lin 2016-09-07 1106 struct thermal_zone_device *tzdev; 89945047b1666c Henry Yen 2020-04-30 1107 void __iomem *apmixed_base, *auxadc_base; f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1108 struct mtk_thermal_zone *tz; a92db1c8089e82 Sascha Hauer 2015-11-30 1109 a92db1c8089e82 Sascha Hauer 2015-11-30 1110 mt = devm_kzalloc(&pdev->dev, sizeof(*mt), GFP_KERNEL); a92db1c8089e82 Sascha Hauer 2015-11-30 1111 if (!mt) a92db1c8089e82 Sascha Hauer 2015-11-30 1112 return -ENOMEM; a92db1c8089e82 Sascha Hauer 2015-11-30 1113 9efc58dfa14a20 Ryder Lee 2018-04-16 1114 mt->conf = of_device_get_match_data(&pdev->dev); b7cf0053738c54 [email protected] 2016-08-18 1115 a92db1c8089e82 Sascha Hauer 2015-11-30 1116 mt->clk_peri_therm = devm_clk_get(&pdev->dev, "therm"); a92db1c8089e82 Sascha Hauer 2015-11-30 1117 if (IS_ERR(mt->clk_peri_therm)) a92db1c8089e82 Sascha Hauer 2015-11-30 1118 return PTR_ERR(mt->clk_peri_therm); a92db1c8089e82 Sascha Hauer 2015-11-30 1119 a92db1c8089e82 Sascha Hauer 2015-11-30 1120 mt->clk_auxadc = devm_clk_get(&pdev->dev, "auxadc"); a92db1c8089e82 Sascha Hauer 2015-11-30 1121 if (IS_ERR(mt->clk_auxadc)) a92db1c8089e82 Sascha Hauer 2015-11-30 1122 return PTR_ERR(mt->clk_auxadc); a92db1c8089e82 Sascha Hauer 2015-11-30 1123 a92db1c8089e82 Sascha Hauer 2015-11-30 1124 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); a92db1c8089e82 Sascha Hauer 2015-11-30 1125 mt->thermal_base = devm_ioremap_resource(&pdev->dev, res); a92db1c8089e82 Sascha Hauer 2015-11-30 1126 if (IS_ERR(mt->thermal_base)) a92db1c8089e82 Sascha Hauer 2015-11-30 1127 return PTR_ERR(mt->thermal_base); a92db1c8089e82 Sascha Hauer 2015-11-30 1128 a92db1c8089e82 Sascha Hauer 2015-11-30 1129 ret = mtk_thermal_get_calibration_data(&pdev->dev, mt); a92db1c8089e82 Sascha Hauer 2015-11-30 1130 if (ret) a92db1c8089e82 Sascha Hauer 2015-11-30 1131 return ret; a92db1c8089e82 Sascha Hauer 2015-11-30 1132 a92db1c8089e82 Sascha Hauer 2015-11-30 1133 mutex_init(&mt->lock); a92db1c8089e82 Sascha Hauer 2015-11-30 1134 a92db1c8089e82 Sascha Hauer 2015-11-30 1135 mt->dev = &pdev->dev; a92db1c8089e82 Sascha Hauer 2015-11-30 1136 a92db1c8089e82 Sascha Hauer 2015-11-30 1137 auxadc = of_parse_phandle(np, "mediatek,auxadc", 0); a92db1c8089e82 Sascha Hauer 2015-11-30 1138 if (!auxadc) { a92db1c8089e82 Sascha Hauer 2015-11-30 1139 dev_err(&pdev->dev, "missing auxadc node\n"); a92db1c8089e82 Sascha Hauer 2015-11-30 1140 return -ENODEV; a92db1c8089e82 Sascha Hauer 2015-11-30 1141 } a92db1c8089e82 Sascha Hauer 2015-11-30 1142 89945047b1666c Henry Yen 2020-04-30 1143 auxadc_base = of_iomap(auxadc, 0); a92db1c8089e82 Sascha Hauer 2015-11-30 1144 auxadc_phys_base = of_get_phys_base(auxadc); a92db1c8089e82 Sascha Hauer 2015-11-30 1145 a92db1c8089e82 Sascha Hauer 2015-11-30 1146 of_node_put(auxadc); a92db1c8089e82 Sascha Hauer 2015-11-30 1147 a92db1c8089e82 Sascha Hauer 2015-11-30 1148 if (auxadc_phys_base == OF_BAD_ADDR) { a92db1c8089e82 Sascha Hauer 2015-11-30 1149 dev_err(&pdev->dev, "Can't get auxadc phys address\n"); a92db1c8089e82 Sascha Hauer 2015-11-30 1150 return -EINVAL; a92db1c8089e82 Sascha Hauer 2015-11-30 1151 } a92db1c8089e82 Sascha Hauer 2015-11-30 1152 a92db1c8089e82 Sascha Hauer 2015-11-30 1153 apmixedsys = of_parse_phandle(np, "mediatek,apmixedsys", 0); a92db1c8089e82 Sascha Hauer 2015-11-30 1154 if (!apmixedsys) { a92db1c8089e82 Sascha Hauer 2015-11-30 1155 dev_err(&pdev->dev, "missing apmixedsys node\n"); a92db1c8089e82 Sascha Hauer 2015-11-30 1156 return -ENODEV; a92db1c8089e82 Sascha Hauer 2015-11-30 1157 } a92db1c8089e82 Sascha Hauer 2015-11-30 1158 89945047b1666c Henry Yen 2020-04-30 1159 apmixed_base = of_iomap(apmixedsys, 0); a92db1c8089e82 Sascha Hauer 2015-11-30 1160 apmixed_phys_base = of_get_phys_base(apmixedsys); a92db1c8089e82 Sascha Hauer 2015-11-30 1161 a92db1c8089e82 Sascha Hauer 2015-11-30 1162 of_node_put(apmixedsys); a92db1c8089e82 Sascha Hauer 2015-11-30 1163 a92db1c8089e82 Sascha Hauer 2015-11-30 1164 if (apmixed_phys_base == OF_BAD_ADDR) { a92db1c8089e82 Sascha Hauer 2015-11-30 1165 dev_err(&pdev->dev, "Can't get auxadc phys address\n"); a92db1c8089e82 Sascha Hauer 2015-11-30 1166 return -EINVAL; a92db1c8089e82 Sascha Hauer 2015-11-30 1167 } a92db1c8089e82 Sascha Hauer 2015-11-30 1168 703456ba76e944 Fabien Parent 2020-10-21 1169 ret = device_reset_optional(&pdev->dev); 6760f3f74e72d6 Louis Yu 2017-08-01 1170 if (ret) 6760f3f74e72d6 Louis Yu 2017-08-01 1171 return ret; 6760f3f74e72d6 Louis Yu 2017-08-01 1172 a92db1c8089e82 Sascha Hauer 2015-11-30 1173 ret = clk_prepare_enable(mt->clk_auxadc); a92db1c8089e82 Sascha Hauer 2015-11-30 1174 if (ret) { a92db1c8089e82 Sascha Hauer 2015-11-30 1175 dev_err(&pdev->dev, "Can't enable auxadc clk: %d\n", ret); a92db1c8089e82 Sascha Hauer 2015-11-30 1176 return ret; a92db1c8089e82 Sascha Hauer 2015-11-30 1177 } a92db1c8089e82 Sascha Hauer 2015-11-30 1178 a92db1c8089e82 Sascha Hauer 2015-11-30 1179 ret = clk_prepare_enable(mt->clk_peri_therm); a92db1c8089e82 Sascha Hauer 2015-11-30 1180 if (ret) { a92db1c8089e82 Sascha Hauer 2015-11-30 1181 dev_err(&pdev->dev, "Can't enable peri clk: %d\n", ret); a92db1c8089e82 Sascha Hauer 2015-11-30 1182 goto err_disable_clk_auxadc; a92db1c8089e82 Sascha Hauer 2015-11-30 1183 } a92db1c8089e82 Sascha Hauer 2015-11-30 1184 b91b391dd49f5d Markus Schneider-Pargmann 2022-07-20 1185 mtk_thermal_turn_on_buffer(mt, apmixed_base); b91b391dd49f5d Markus Schneider-Pargmann 2022-07-20 1186 89945047b1666c Henry Yen 2020-04-30 1187 if (mt->conf->version == MTK_THERMAL_V2) { 89945047b1666c Henry Yen 2020-04-30 1188 mtk_thermal_release_periodic_ts(mt, auxadc_base); 89945047b1666c Henry Yen 2020-04-30 1189 } 89945047b1666c Henry Yen 2020-04-30 1190 bd9403943d7d19 Michael Kao 2019-02-01 1191 for (ctrl_id = 0; ctrl_id < mt->conf->num_controller ; ctrl_id++) b7cf0053738c54 [email protected] 2016-08-18 1192 for (i = 0; i < mt->conf->num_banks; i++) eb4fc33eb26807 Eduardo Valentin 2016-02-18 1193 mtk_thermal_init_bank(mt, i, apmixed_phys_base, bd9403943d7d19 Michael Kao 2019-02-01 1194 auxadc_phys_base, ctrl_id); a92db1c8089e82 Sascha Hauer 2015-11-30 1195 a92db1c8089e82 Sascha Hauer 2015-11-30 1196 platform_set_drvdata(pdev, mt); a92db1c8089e82 Sascha Hauer 2015-11-30 1197 f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1198 for (i = 0; i < mt->conf->num_sensors + 1; i++) { f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1199 tz = kmalloc(sizeof(*tz), GFP_KERNEL); f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1200 if (!tz) f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1201 return -ENOMEM; f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1202 f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1203 tz->mt = mt; f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1204 tz->id = i; f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1205 f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1206 tzdev = devm_thermal_zone_of_sensor_register(&pdev->dev, i, tz, (i == 0) ? f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1207 &mtk_thermal_ops : f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1208 &mtk_thermal_sensor_ops); f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1209 1f6b0889d0ea03 Axel Lin 2016-09-07 1210 if (IS_ERR(tzdev)) { f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1211 if (PTR_ERR(tzdev) == -ENODEV) { f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1212 dev_warn(&pdev->dev, f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1213 "sensor %d not registered in thermal zone in dt\n", i); f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1214 continue; f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1215 } f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1216 if (PTR_ERR(tzdev) == -EACCES) { 1f6b0889d0ea03 Axel Lin 2016-09-07 1217 ret = PTR_ERR(tzdev); 1f6b0889d0ea03 Axel Lin 2016-09-07 1218 goto err_disable_clk_peri_therm; 1f6b0889d0ea03 Axel Lin 2016-09-07 1219 } f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1220 } f478b3ee651af2 Amjad Ouled-Ameur 2022-07-20 1221 } a92db1c8089e82 Sascha Hauer 2015-11-30 1222 24e21d9f40ec3f Frank Wunderlich 2021-06-08 @1223 ret = devm_thermal_add_hwmon_sysfs(tzdev); 24e21d9f40ec3f Frank Wunderlich 2021-06-08 1224 if (ret) 24e21d9f40ec3f Frank Wunderlich 2021-06-08 1225 dev_warn(&pdev->dev, "error in thermal_add_hwmon_sysfs"); 24e21d9f40ec3f Frank Wunderlich 2021-06-08 1226 a92db1c8089e82 Sascha Hauer 2015-11-30 1227 return 0; a92db1c8089e82 Sascha Hauer 2015-11-30 1228 1f6b0889d0ea03 Axel Lin 2016-09-07 1229 err_disable_clk_peri_therm: 1f6b0889d0ea03 Axel Lin 2016-09-07 1230 clk_disable_unprepare(mt->clk_peri_therm); a92db1c8089e82 Sascha Hauer 2015-11-30 1231 err_disable_clk_auxadc: a92db1c8089e82 Sascha Hauer 2015-11-30 1232 clk_disable_unprepare(mt->clk_auxadc); a92db1c8089e82 Sascha Hauer 2015-11-30 1233 a92db1c8089e82 Sascha Hauer 2015-11-30 1234 return ret; a92db1c8089e82 Sascha Hauer 2015-11-30 1235 } a92db1c8089e82 Sascha Hauer 2015-11-30 1236 -- 0-DAY CI Kernel Test Service https://01.org/lkp _______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
