/** * @file i2c.h * @brief I2C service IPC wrapper. * @author SciresM * @copyright libnx Authors */ #pragma once #include "../types.h" #include "sm.h" typedef enum { I2cDevice_AudioCodec = 4, } I2cDevice; typedef struct { Service s; } I2cSession; typedef enum { I2cTransactionOption_Start = (1 << 0), I2cTransactionOption_Stop = (1 << 1), I2cTransactionOption_All = I2cTransactionOption_Start | I2cTransactionOption_Stop, } I2cTransactionOption; Result i2cInitialize(void); void i2cExit(void); Result i2cOpenSession(I2cSession *out, I2cDevice dev); Result i2csessionSendAuto(I2cSession *s, void *buf, size_t size, I2cTransactionOption option); void i2csessionClose(I2cSession *s);