Lines Matching refs:bgp

186 	struct k3_j72xx_bandgap *bgp;  member
220 struct k3_j72xx_bandgap *bgp; in k3_bgp_read_temp() local
223 bgp = devdata->bgp; in k3_bgp_read_temp()
233 s0 = readl(bgp->base + devdata->stat_offset) & in k3_bgp_read_temp()
235 s1 = readl(bgp->base + devdata->stat_offset) & in k3_bgp_read_temp()
237 s2 = readl(bgp->base + devdata->stat_offset) & in k3_bgp_read_temp()
286 struct k3_j72xx_bandgap *bgp) in get_efuse_values() argument
308 tmp = (readl(bgp->fuse_base + 0x8) & 0xE0000000) >> (29); in get_efuse_values()
309 tmp |= ((readl(bgp->fuse_base + 0xC) & 0x1F) << 3); in get_efuse_values()
313 tmp = (readl(bgp->fuse_base + 0x4) & 0xF8000000) >> (27); in get_efuse_values()
314 tmp |= ((readl(bgp->fuse_base + 0x8) & 0xF) << 5); in get_efuse_values()
317 tmp = readl(bgp->fuse_base + ct_offsets[id][i]); in get_efuse_values()
359 struct k3_j72xx_bandgap *bgp; in k3_j72xx_bandgap_probe() local
381 bgp = devm_kzalloc(&pdev->dev, sizeof(*bgp), GFP_KERNEL); in k3_j72xx_bandgap_probe()
382 if (!bgp) in k3_j72xx_bandgap_probe()
385 bgp->dev = dev; in k3_j72xx_bandgap_probe()
387 bgp->base = devm_ioremap_resource(dev, res); in k3_j72xx_bandgap_probe()
388 if (IS_ERR(bgp->base)) in k3_j72xx_bandgap_probe()
389 return PTR_ERR(bgp->base); in k3_j72xx_bandgap_probe()
392 bgp->cfg2_base = devm_ioremap_resource(dev, res); in k3_j72xx_bandgap_probe()
393 if (IS_ERR(bgp->cfg2_base)) in k3_j72xx_bandgap_probe()
394 return PTR_ERR(bgp->cfg2_base); in k3_j72xx_bandgap_probe()
397 bgp->fuse_base = devm_ioremap_resource(dev, res); in k3_j72xx_bandgap_probe()
398 if (IS_ERR(bgp->fuse_base)) in k3_j72xx_bandgap_probe()
399 return PTR_ERR(bgp->fuse_base); in k3_j72xx_bandgap_probe()
414 val = readl(bgp->base + K3_VTM_DEVINFO_PWR0_OFFSET); in k3_j72xx_bandgap_probe()
418 data = devm_kcalloc(bgp->dev, cnt, sizeof(*data), GFP_KERNEL); in k3_j72xx_bandgap_probe()
430 derived_table = devm_kzalloc(bgp->dev, sizeof(*derived_table) * TABLE_SIZE, in k3_j72xx_bandgap_probe()
438 if (workaround_needed && (readl(bgp->fuse_base + 0x0) & 0xc0000000) == 0xc0000000) in k3_j72xx_bandgap_probe()
441 dev_dbg(bgp->dev, "Work around %sneeded\n", in k3_j72xx_bandgap_probe()
451 data[id].bgp = bgp; in k3_j72xx_bandgap_probe()
462 get_efuse_values(id, &data[id], err_vals.errs, bgp); in k3_j72xx_bandgap_probe()
470 val = readl(data[id].bgp->cfg2_base + data[id].ctrl_offset); in k3_j72xx_bandgap_probe()
474 writel(val, data[id].bgp->cfg2_base + data[id].ctrl_offset); in k3_j72xx_bandgap_probe()
476 bgp->ts_data[id] = &data[id]; in k3_j72xx_bandgap_probe()
477 ti_thermal = devm_thermal_of_zone_register(bgp->dev, id, &data[id], in k3_j72xx_bandgap_probe()
480 dev_err(bgp->dev, "thermal zone device is NULL\n"); in k3_j72xx_bandgap_probe()
496 writel((low_temp << 16) | high_max, data[0].bgp->cfg2_base + in k3_j72xx_bandgap_probe()
499 writel(K3_VTM_ANYMAXT_OUTRG_ALERT_EN, data[0].bgp->cfg2_base + in k3_j72xx_bandgap_probe()
502 platform_set_drvdata(pdev, bgp); in k3_j72xx_bandgap_probe()