Added more mcuHwc functions. (#378)
This commit is contained in:
parent
8e2d82ae9a
commit
65673fd3f3
@ -4,6 +4,16 @@
|
|||||||
*/
|
*/
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
LED_NORMAL = 1, ///< The normal mode of the led
|
||||||
|
LED_SLEEP_MODE, ///< The led pulses slowly as it does in the sleep mode
|
||||||
|
LED_OFF, ///< Switch off power led
|
||||||
|
LED_RED, ///< Red state of the led
|
||||||
|
LED_BLUE, ///< Blue state of the led
|
||||||
|
LED_BLINK_RED, ///< Blinking red state of power led and notification led
|
||||||
|
}powerLedState;
|
||||||
|
|
||||||
/// Initializes mcuHwc.
|
/// Initializes mcuHwc.
|
||||||
Result mcuHwcInit(void);
|
Result mcuHwcInit(void);
|
||||||
|
|
||||||
@ -11,7 +21,7 @@ Result mcuHwcInit(void);
|
|||||||
void mcuHwcExit(void);
|
void mcuHwcExit(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Reads data from a mcuHwc Register
|
* @brief Reads data from an i2c device3 register
|
||||||
* @param reg Register number. See https://www.3dbrew.org/wiki/I2C_Registers#Device_3 for more info
|
* @param reg Register number. See https://www.3dbrew.org/wiki/I2C_Registers#Device_3 for more info
|
||||||
* @param data Pointer to write the data to.
|
* @param data Pointer to write the data to.
|
||||||
* @param size Size of data to be read
|
* @param size Size of data to be read
|
||||||
@ -19,7 +29,7 @@ void mcuHwcExit(void);
|
|||||||
Result mcuHwcReadRegister(u8 reg, void *data, u32 size);
|
Result mcuHwcReadRegister(u8 reg, void *data, u32 size);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Writes data to a mcuHwc Register
|
* @brief Writes data to a i2c device3 register
|
||||||
* @param reg Register number. See https://www.3dbrew.org/wiki/I2C_Registers#Device_3 for more info
|
* @param reg Register number. See https://www.3dbrew.org/wiki/I2C_Registers#Device_3 for more info
|
||||||
* @param data Pointer to write the data to.
|
* @param data Pointer to write the data to.
|
||||||
* @param size Size of data to be written
|
* @param size Size of data to be written
|
||||||
@ -43,3 +53,21 @@ Result mcuHwcGetBatteryLevel(u8 *level);
|
|||||||
* @param level Pointer to write the slider level to.
|
* @param level Pointer to write the slider level to.
|
||||||
*/
|
*/
|
||||||
Result mcuHwcGetSoundSliderLevel(u8 *level);
|
Result mcuHwcGetSoundSliderLevel(u8 *level);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Sets Wifi LED state
|
||||||
|
* @param state State of Wifi LED. (True/False)
|
||||||
|
*/
|
||||||
|
Result mcuHwcSetWifiLedState(bool state);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Sets Power LED state
|
||||||
|
* @param state powerLedState State of power LED.
|
||||||
|
*/
|
||||||
|
Result mcuHwcSetPowerLedState(powerLedState state);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Gets 3d slider level
|
||||||
|
* @param level Pointer to write 3D slider level to.
|
||||||
|
*/
|
||||||
|
Result mcuHwcGet3dSliderLevel(u8 *level);
|
||||||
|
@ -78,6 +78,32 @@ Result mcuHwcGetBatteryLevel(u8 *level)
|
|||||||
return (Result)cmdbuf[1];
|
return (Result)cmdbuf[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Result mcuHwcSetPowerLedState(powerLedState state)
|
||||||
|
{
|
||||||
|
Result ret = 0;
|
||||||
|
u32 *cmdbuf = getThreadCommandBuffer();
|
||||||
|
|
||||||
|
cmdbuf[0] = IPC_MakeHeader(0x6,2,0); // 0x60040
|
||||||
|
cmdbuf[1] = state;
|
||||||
|
|
||||||
|
if(R_FAILED(ret = svcSendSyncRequest(mcuHwcHandle)))return ret;
|
||||||
|
|
||||||
|
return (Result)cmdbuf[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
Result mcuHwcSetWifiLedState(bool state)
|
||||||
|
{
|
||||||
|
Result ret = 0;
|
||||||
|
u32 *cmdbuf = getThreadCommandBuffer();
|
||||||
|
|
||||||
|
cmdbuf[0] = IPC_MakeHeader(0x7,0,0); // 0x70000
|
||||||
|
cmdbuf[1] = state;
|
||||||
|
|
||||||
|
if(R_FAILED(ret = svcSendSyncRequest(mcuHwcHandle)))return ret;
|
||||||
|
|
||||||
|
return (Result)cmdbuf[1];
|
||||||
|
}
|
||||||
|
|
||||||
Result mcuHwcGetSoundSliderLevel(u8 *level)
|
Result mcuHwcGetSoundSliderLevel(u8 *level)
|
||||||
{
|
{
|
||||||
Result ret = 0;
|
Result ret = 0;
|
||||||
@ -91,3 +117,8 @@ Result mcuHwcGetSoundSliderLevel(u8 *level)
|
|||||||
|
|
||||||
return (Result)cmdbuf[1];
|
return (Result)cmdbuf[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Result mcuHwcGet3dSliderLevel(u8 *level)
|
||||||
|
{
|
||||||
|
return mcuHwcReadRegister(8, &level, 1);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user