Lines Matching full:occ
6 #include <linux/fsi-occ.h>
18 /* OCB (on-chip control bridge - interface to OCC) registers */
23 /* OCC SRAM address space */
30 struct occ occ; member
34 #define to_p8_i2c_occ(x) container_of((x), struct p8_i2c_occ, occ)
51 /* data from OCC is big-endian */ in p8_i2c_occ_getscom()
114 static int p8_i2c_occ_send_cmd(struct occ *occ, u8 *cmd, size_t len, in p8_i2c_occ_send_cmd() argument
122 struct p8_i2c_occ *ctx = to_p8_i2c_occ(occ); in p8_i2c_occ_send_cmd()
138 /* trigger OCC attention */ in p8_i2c_occ_send_cmd()
154 /* wait for OCC */ in p8_i2c_occ_send_cmd()
166 /* check the OCC response */ in p8_i2c_occ_send_cmd()
212 struct occ *occ; in p8_i2c_occ_probe() local
219 occ = &ctx->occ; in p8_i2c_occ_probe()
220 occ->bus_dev = &client->dev; in p8_i2c_occ_probe()
221 dev_set_drvdata(&client->dev, occ); in p8_i2c_occ_probe()
223 occ->powr_sample_time_us = 250; in p8_i2c_occ_probe()
224 occ->poll_cmd_data = 0x10; /* P8 OCC poll data */ in p8_i2c_occ_probe()
225 occ->send_cmd = p8_i2c_occ_send_cmd; in p8_i2c_occ_probe()
227 return occ_setup(occ); in p8_i2c_occ_probe()
232 struct occ *occ = dev_get_drvdata(&client->dev); in p8_i2c_occ_remove() local
234 occ_shutdown(occ); in p8_i2c_occ_remove()
238 { .compatible = "ibm,p8-occ-hwmon" },
245 .name = "occ-hwmon",
255 MODULE_DESCRIPTION("BMC P8 OCC hwmon driver");