diff --git a/i2c_smbus/i2c_smbus_i801.cpp b/i2c_smbus/i2c_smbus_i801.cpp index d6ca6fe0..ca4b3216 100644 --- a/i2c_smbus/i2c_smbus_i801.cpp +++ b/i2c_smbus/i2c_smbus_i801.cpp @@ -11,6 +11,7 @@ #include "i2c_smbus_i801.h" #include #include "inpout32.h" +#include "LogManager.h" using namespace std::chrono_literals; @@ -488,6 +489,12 @@ s32 i2c_smbus_i801::i2c_smbus_xfer(u8 addr, char read_write, u8 command, int siz void i2c_smbus_i801_detect() { + if(!IsInpOutDriverOpen()) + { + LOG_NOTICE("inpout32 is not loaded, i801 I2C bus detection aborted"); + return; + } + i2c_smbus_interface * bus; HRESULT hres; Wmi wmi; diff --git a/i2c_smbus/i2c_smbus_nct6775.cpp b/i2c_smbus/i2c_smbus_nct6775.cpp index 8b24f4b1..d809cdd4 100644 --- a/i2c_smbus/i2c_smbus_nct6775.cpp +++ b/i2c_smbus/i2c_smbus_nct6775.cpp @@ -9,6 +9,7 @@ #include "i2c_smbus_nct6775.h" #include #include "inpout32.h" +#include "LogManager.h" using namespace std::chrono_literals; @@ -193,6 +194,12 @@ s32 i2c_smbus_nct6775::i2c_smbus_xfer(u8 addr, char read_write, u8 command, int void i2c_smbus_nct6775_detect() { + if(!IsInpOutDriverOpen()) + { + LOG_NOTICE("inpout32 is not loaded, nct6775 I2C bus detection aborted"); + return; + } + i2c_smbus_interface* bus; int sioaddr = 0x2E; superio_enter(sioaddr); diff --git a/i2c_smbus/i2c_smbus_piix4.cpp b/i2c_smbus/i2c_smbus_piix4.cpp index d59a138f..d5c5a6da 100644 --- a/i2c_smbus/i2c_smbus_piix4.cpp +++ b/i2c_smbus/i2c_smbus_piix4.cpp @@ -11,6 +11,7 @@ #include "i2c_smbus_piix4.h" #include #include "inpout32.h" +#include "LogManager.h" //Logic adapted from piix4_transaction() in i2c-piix4.c int i2c_smbus_piix4::piix4_transaction() @@ -182,6 +183,12 @@ s32 i2c_smbus_piix4::i2c_smbus_xfer(u8 addr, char read_write, u8 command, int si void i2c_smbus_piix4_detect() { + if(!IsInpOutDriverOpen()) + { + LOG_NOTICE("inpout32 is not loaded, piix4 I2C bus detection aborted"); + return; + } + i2c_smbus_interface * bus; HRESULT hres; Wmi wmi;