mirror of
https://github.com/switchbrew/libnx.git
synced 2025-06-21 12:32:40 +02:00
32 lines
712 B
C
32 lines
712 B
C
/**
|
|
* @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); |