si_sm_ioRegular
4.4: Absent ⚠️
4.8: Absent ⚠️
4.10: Absent ⚠️
4.13: Absent ⚠️
4.15: ✅struct si_sm_io {
unsigned char (*inputb)(const struct si_sm_io *, unsigned int);
void (*outputb)(const struct si_sm_io *, unsigned int, unsigned char);
void *addr;
int regspacing;
int regsize;
int regshift;
int addr_type;
long int addr_data;
enum ipmi_addr_src addr_source;
void (*addr_source_cleanup)(struct si_sm_io *);
void *addr_source_data;
union ipmi_smi_info_union addr_info;
int (*io_setup)(struct si_sm_io *);
void (*io_cleanup)(struct si_sm_io *);
unsigned int io_size;
int irq;
int (*irq_setup)(struct si_sm_io *);
void *irq_handler_data;
void (*irq_cleanup)(struct si_sm_io *);
u8 slave_addr;
enum si_type si_type;
struct device *dev;
};
4.18: ✅struct si_sm_io {
unsigned char (*inputb)(const struct si_sm_io *, unsigned int);
void (*outputb)(const struct si_sm_io *, unsigned int, unsigned char);
void *addr;
int regspacing;
int regsize;
int regshift;
int addr_type;
long int addr_data;
enum ipmi_addr_src addr_source;
void (*addr_source_cleanup)(struct si_sm_io *);
void *addr_source_data;
union ipmi_smi_info_union addr_info;
int (*io_setup)(struct si_sm_io *);
void (*io_cleanup)(struct si_sm_io *);
unsigned int io_size;
int irq;
int (*irq_setup)(struct si_sm_io *);
void *irq_handler_data;
void (*irq_cleanup)(struct si_sm_io *);
u8 slave_addr;
enum si_type si_type;
struct device *dev;
};
5.0: ✅struct si_sm_io {
unsigned char (*inputb)(const struct si_sm_io *, unsigned int);
void (*outputb)(const struct si_sm_io *, unsigned int, unsigned char);
void *addr;
int regspacing;
int regsize;
int regshift;
int addr_type;
long int addr_data;
enum ipmi_addr_src addr_source;
void (*addr_source_cleanup)(struct si_sm_io *);
void *addr_source_data;
union ipmi_smi_info_union addr_info;
int (*io_setup)(struct si_sm_io *);
void (*io_cleanup)(struct si_sm_io *);
unsigned int io_size;
int irq;
int (*irq_setup)(struct si_sm_io *);
void *irq_handler_data;
void (*irq_cleanup)(struct si_sm_io *);
u8 slave_addr;
enum si_type si_type;
struct device *dev;
};
5.3: ✅struct si_sm_io {
unsigned char (*inputb)(const struct si_sm_io *, unsigned int);
void (*outputb)(const struct si_sm_io *, unsigned int, unsigned char);
void *addr;
unsigned int regspacing;
unsigned int regsize;
unsigned int regshift;
enum ipmi_addr_space addr_space;
long unsigned int addr_data;
enum ipmi_addr_src addr_source;
void (*addr_source_cleanup)(struct si_sm_io *);
void *addr_source_data;
union ipmi_smi_info_union addr_info;
int (*io_setup)(struct si_sm_io *);
void (*io_cleanup)(struct si_sm_io *);
unsigned int io_size;
int irq;
int (*irq_setup)(struct si_sm_io *);
void *irq_handler_data;
void (*irq_cleanup)(struct si_sm_io *);
u8 slave_addr;
enum si_type si_type;
struct device *dev;
};
5.4: Absent ⚠️
5.8: Absent ⚠️
5.11: Absent ⚠️
5.13: Absent ⚠️
5.15: Absent ⚠️
5.19: Absent ⚠️
6.2: Absent ⚠️
6.5: Absent ⚠️
6.8: Absent ⚠️
arm64: Absent ⚠️
armhf: Absent ⚠️
ppc64el: Absent ⚠️
riscv64: Absent ⚠️
aws: Absent ⚠️
azure: Absent ⚠️
gcp: Absent ⚠️
lowlatency: Absent ⚠️
Regular
4.15 and 4.18 ✅
4.18 and 5.0 ✅
5.0 and 5.3 ⚠️enum ipmi_addr_space addr_space
int addr_type
int regspacing ➡️ unsigned int regspacing
int regsize ➡️ unsigned int regsize
int regshift ➡️ unsigned int regshift
long int addr_data ➡️ long unsigned int addr_data