xref: /kernel/linux/linux-6.6/drivers/char/ipmi/kcs_bmc_device.h
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /kernel/linux/linux-6.6/drivers/char/ipmi/
162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
262306a36Sopenharmony_ci/* Copyright (c) 2021, IBM Corp. */
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci#ifndef __KCS_BMC_DEVICE_H__
562306a36Sopenharmony_ci#define __KCS_BMC_DEVICE_H__
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include <linux/irqreturn.h>
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include "kcs_bmc.h"
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_cistruct kcs_bmc_device_ops {
1262306a36Sopenharmony_ci	void (*irq_mask_update)(struct kcs_bmc_device *kcs_bmc, u8 mask, u8 enable);
1362306a36Sopenharmony_ci	u8 (*io_inputb)(struct kcs_bmc_device *kcs_bmc, u32 reg);
1462306a36Sopenharmony_ci	void (*io_outputb)(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 b);
1562306a36Sopenharmony_ci	void (*io_updateb)(struct kcs_bmc_device *kcs_bmc, u32 reg, u8 mask, u8 b);
1662306a36Sopenharmony_ci};
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciirqreturn_t kcs_bmc_handle_event(struct kcs_bmc_device *kcs_bmc);
1962306a36Sopenharmony_ciint kcs_bmc_add_device(struct kcs_bmc_device *kcs_bmc);
2062306a36Sopenharmony_civoid kcs_bmc_remove_device(struct kcs_bmc_device *kcs_bmc);
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci#endif
23

Indexes created Thu Nov 07 10:32:03 CST 2024