/linux-6.12.1/drivers/char/ipmi/ ! |
D | kcs_bmc.c | 25 u8 kcs_bmc_read_data(struct kcs_bmc_device *kcs_bmc) in kcs_bmc_read_data() argument 27 return kcs_bmc->ops->io_inputb(kcs_bmc, kcs_bmc->ioreg.idr); in kcs_bmc_read_data() 31 void kcs_bmc_write_data(struct kcs_bmc_device *kcs_bmc, u8 data) in kcs_bmc_write_data() argument 33 kcs_bmc->ops->io_outputb(kcs_bmc, kcs_bmc->ioreg.odr, data); in kcs_bmc_write_data() 37 u8 kcs_bmc_read_status(struct kcs_bmc_device *kcs_bmc) in kcs_bmc_read_status() argument 39 return kcs_bmc->ops->io_inputb(kcs_bmc, kcs_bmc->ioreg.str); in kcs_bmc_read_status() 43 void kcs_bmc_write_status(struct kcs_bmc_device *kcs_bmc, u8 data) in kcs_bmc_write_status() argument 45 kcs_bmc->ops->io_outputb(kcs_bmc, kcs_bmc->ioreg.str, data); in kcs_bmc_write_status() 49 void kcs_bmc_update_status(struct kcs_bmc_device *kcs_bmc, u8 mask, u8 val) in kcs_bmc_update_status() argument 51 kcs_bmc->ops->io_updateb(kcs_bmc, kcs_bmc->ioreg.str, mask, val); in kcs_bmc_update_status() [all …]
|
D | kcs_bmc_npcm7xx.c | 69 struct kcs_bmc_device kcs_bmc; member 82 static inline struct npcm7xx_kcs_bmc *to_npcm7xx_kcs_bmc(struct kcs_bmc_device *kcs_bmc) in to_npcm7xx_kcs_bmc() argument 84 return container_of(kcs_bmc, struct npcm7xx_kcs_bmc, kcs_bmc); in to_npcm7xx_kcs_bmc() 87 static u8 npcm7xx_kcs_inb(struct kcs_bmc_device *kcs_bmc, u32 reg) in npcm7xx_kcs_inb() argument 89 struct npcm7xx_kcs_bmc *priv = to_npcm7xx_kcs_bmc(kcs_bmc); in npcm7xx_kcs_inb() 99 static void npcm7xx_kcs_outb(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 data) in npcm7xx_kcs_outb() argument 101 struct npcm7xx_kcs_bmc *priv = to_npcm7xx_kcs_bmc(kcs_bmc); in npcm7xx_kcs_outb() 108 static void npcm7xx_kcs_updateb(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 mask, u8 data) in npcm7xx_kcs_updateb() argument 110 struct npcm7xx_kcs_bmc *priv = to_npcm7xx_kcs_bmc(kcs_bmc); in npcm7xx_kcs_updateb() 117 static void npcm7xx_kcs_enable_channel(struct kcs_bmc_device *kcs_bmc, bool enable) in npcm7xx_kcs_enable_channel() argument [all …]
|
D | kcs_bmc_aspeed.c | 114 struct kcs_bmc_device kcs_bmc; member 130 static inline struct aspeed_kcs_bmc *to_aspeed_kcs_bmc(struct kcs_bmc_device *kcs_bmc) in to_aspeed_kcs_bmc() argument 132 return container_of(kcs_bmc, struct aspeed_kcs_bmc, kcs_bmc); in to_aspeed_kcs_bmc() 135 static u8 aspeed_kcs_inb(struct kcs_bmc_device *kcs_bmc, u32 reg) in aspeed_kcs_inb() argument 137 struct aspeed_kcs_bmc *priv = to_aspeed_kcs_bmc(kcs_bmc); in aspeed_kcs_inb() 147 static void aspeed_kcs_outb(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 data) in aspeed_kcs_outb() argument 149 struct aspeed_kcs_bmc *priv = to_aspeed_kcs_bmc(kcs_bmc); in aspeed_kcs_outb() 170 switch (kcs_bmc->channel) { in aspeed_kcs_outb() 199 static void aspeed_kcs_updateb(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 mask, u8 val) in aspeed_kcs_updateb() argument 201 struct aspeed_kcs_bmc *priv = to_aspeed_kcs_bmc(kcs_bmc); in aspeed_kcs_updateb() [all …]
|
D | kcs_bmc_client.h | 12 int (*add_device)(struct kcs_bmc_device *kcs_bmc); 13 int (*remove_device)(struct kcs_bmc_device *kcs_bmc); 35 int kcs_bmc_enable_device(struct kcs_bmc_device *kcs_bmc, struct kcs_bmc_client *client); 36 void kcs_bmc_disable_device(struct kcs_bmc_device *kcs_bmc, struct kcs_bmc_client *client); 38 void kcs_bmc_update_event_mask(struct kcs_bmc_device *kcs_bmc, u8 mask, u8 events); 40 u8 kcs_bmc_read_data(struct kcs_bmc_device *kcs_bmc); 41 void kcs_bmc_write_data(struct kcs_bmc_device *kcs_bmc, u8 data); 42 u8 kcs_bmc_read_status(struct kcs_bmc_device *kcs_bmc); 43 void kcs_bmc_write_status(struct kcs_bmc_device *kcs_bmc, u8 data); 44 void kcs_bmc_update_status(struct kcs_bmc_device *kcs_bmc, u8 mask, u8 val);
|
D | kcs_bmc_device.h | 12 void (*irq_mask_update)(struct kcs_bmc_device *kcs_bmc, u8 mask, u8 enable); 13 u8 (*io_inputb)(struct kcs_bmc_device *kcs_bmc, u32 reg); 14 void (*io_outputb)(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 b); 15 void (*io_updateb)(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 mask, u8 b); 18 irqreturn_t kcs_bmc_handle_event(struct kcs_bmc_device *kcs_bmc); 19 int kcs_bmc_add_device(struct kcs_bmc_device *kcs_bmc); 20 void kcs_bmc_remove_device(struct kcs_bmc_device *kcs_bmc);
|
D | kcs_bmc_serio.c | 70 static int kcs_bmc_serio_add_device(struct kcs_bmc_device *kcs_bmc) in kcs_bmc_serio_add_device() argument 75 priv = devm_kzalloc(kcs_bmc->dev, sizeof(*priv), GFP_KERNEL); in kcs_bmc_serio_add_device() 88 port->dev.parent = kcs_bmc->dev; in kcs_bmc_serio_add_device() 92 priv->client.dev = kcs_bmc; in kcs_bmc_serio_add_device() 101 dev_info(kcs_bmc->dev, "Initialised serio client for channel %d", kcs_bmc->channel); in kcs_bmc_serio_add_device() 106 static int kcs_bmc_serio_remove_device(struct kcs_bmc_device *kcs_bmc) in kcs_bmc_serio_remove_device() argument 112 if (pos->client.dev == kcs_bmc) { in kcs_bmc_serio_remove_device() 127 kcs_bmc_disable_device(kcs_bmc, &priv->client); in kcs_bmc_serio_remove_device()
|
D | kcs_bmc_cdev_ipmi.c | 472 static int kcs_bmc_ipmi_add_device(struct kcs_bmc_device *kcs_bmc) in kcs_bmc_ipmi_add_device() argument 477 priv = devm_kzalloc(kcs_bmc->dev, sizeof(*priv), GFP_KERNEL); in kcs_bmc_ipmi_add_device() 486 priv->client.dev = kcs_bmc; in kcs_bmc_ipmi_add_device() 488 priv->data_in = devm_kmalloc(kcs_bmc->dev, KCS_MSG_BUFSIZ, GFP_KERNEL); in kcs_bmc_ipmi_add_device() 489 priv->data_out = devm_kmalloc(kcs_bmc->dev, KCS_MSG_BUFSIZ, GFP_KERNEL); in kcs_bmc_ipmi_add_device() 490 priv->kbuffer = devm_kmalloc(kcs_bmc->dev, KCS_MSG_BUFSIZ, GFP_KERNEL); in kcs_bmc_ipmi_add_device() 493 priv->miscdev.name = devm_kasprintf(kcs_bmc->dev, GFP_KERNEL, "%s%u", DEVICE_NAME, in kcs_bmc_ipmi_add_device() 494 kcs_bmc->channel); in kcs_bmc_ipmi_add_device() 502 dev_err(kcs_bmc->dev, "Unable to register device: %d\n", rc); in kcs_bmc_ipmi_add_device() 510 dev_info(kcs_bmc->dev, "Initialised IPMI client for channel %d", kcs_bmc->channel); in kcs_bmc_ipmi_add_device() [all …]
|
D | Makefile | 23 obj-$(CONFIG_IPMI_KCS_BMC) += kcs_bmc.o
|