Line 6: |
Line 6: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#OpenSessionForDev]] | + | | 0 || [5.0.0+] [[#OpenSessionForDevDeprecated|OpenSessionForDevDeprecated]] ([1.0.0-4.1.0] OpenSessionForDev) |
| |- | | |- |
− | | 1 || [[#OpenSession]] | + | | 1 || [5.0.0+] [[#OpenSessionDeprecated|OpenSessionDeprecated]] ([1.0.0-4.1.0] OpenSession) |
| |- | | |- |
− | | 2 || [[#OpenSessionForTest]] | + | | 2 || [5.0.0+] [[#OpenSessionForTestDeprecated|OpenSessionForTestDeprecated]] ([1.0.0-4.1.0] OpenSessionForTest) |
| |- | | |- |
− | | 3 || [1.0.0-6.2.0] [[#IsWakeEventActive]] | + | | 3 || [5.0.0-6.2.0] [[#IsWakeEventActiveDeprecated|IsWakeEventActiveDeprecated]] ([1.0.0-4.1.0] IsWakeEventActive) |
| |- | | |- |
− | | 4 || [1.0.0-6.2.0] GetWakeEventActiveFlagSet | + | | 4 || [5.0.0-6.2.0] [[#GetWakeEventActiveFlagSetDeprecated|GetWakeEventActiveFlagSetDeprecated]] ([1.0.0-4.1.0] GetWakeEventActiveFlagSet) |
| |- | | |- |
− | | 5 || [1.0.0-6.2.0] SetWakeEventActiveFlagSetForDebug | + | | 5 || [5.0.0-6.2.0] [[#SetWakeEventActiveFlagSetForDebugDeprecated|SetWakeEventActiveFlagSetForDebugDeprecated]] ([1.0.0-4.1.0] SetWakeEventActiveFlagSetForDebug) |
| |- | | |- |
− | | 6 || [[#SetWakePinDebugMode]] | + | | 6 || [[#SetWakePinDebugMode|SetWakePinDebugMode]] |
| |- | | |- |
− | | 7 || [5.0.0+] [[#OpenSession2]] | + | | 7 || [5.0.0+] [[#OpenSession|OpenSession]] |
| |- | | |- |
− | | 8 || [5.0.0+] [[#IsWakeEventActive2]] | + | | 8 || [5.0.0+] [[#IsWakeEventActive|IsWakeEventActive]] |
| |- | | |- |
− | | 9 || [5.0.0+] SetWakeEventActiveFlagSetForDebug2 | + | | 9 || [5.0.0+] [[#SetWakeEventActiveFlagSetForDebug|SetWakeEventActiveFlagSetForDebug]] |
| |- | | |- |
− | | 10 || [6.0.0+] [[#SetRetryValues]] | + | | 10 || [6.0.0+] [[#DumpStateForDebug|DumpStateForDebug]] |
| |} | | |} |
| | | |
− | == OpenSessionForDev == | + | == OpenSessionForDevDeprecated == |
− | Takes a raw [[#GpioPadDescriptor]] and returns an [[#IPadSession]]. | + | Takes an input [[#GpioPadDescriptor]]. Returns an [[#IPadSession]]. |
| + | |
| + | == OpenSessionDeprecated == |
| + | Same as [[#OpenSessionForDevDeprecated]] except it takes a [[#GpioPadName]] which is then converted to a [[#GpioPadDescriptor]]. Returns an [[#IPadSession]]. |
| + | |
| + | == OpenSessionForTestDeprecated == |
| + | Same as [[#OpenSessionDeprecated]] but panics on failure. |
| | | |
− | == OpenSession == | + | == IsWakeEventActiveDeprecated == |
− | Same as [[#OpenSessionForDev]] except it takes a [[#GpioPadName]] which is then converted to a [[#GpioPadDescriptor]]. Returns an [[#IPadSession]].
| + | Takes an input [[#GpioPadName]]. Returns a bool '''IsActive'''. |
| | | |
− | == OpenSessionForTest == | + | == GetWakeEventActiveFlagSetDeprecated == |
− | Same as [[#OpenSession]] but panics on failure.
| + | No input. Returns an output u128 [[#WakeBitFlag]]. |
| | | |
− | == IsWakeEventActive == | + | == SetWakeEventActiveFlagSetForDebugDeprecated == |
− | Takes a [[#GpioPadName]] and returns a bool. | + | Takes an input [[#GpioPadName]] and an input bool '''IsEnabled'''. No output. |
| | | |
| == SetWakePinDebugMode == | | == SetWakePinDebugMode == |
− | Takes an u32 '''WakePinDebugMode'''. No output. | + | Takes an input u32 '''WakePinDebugMode'''. No output. |
| + | |
| + | == OpenSession == |
| + | Same as [[#OpenSessionDeprecated]] but takes a [[#GpioPadName|DeviceCode]] and an input [[#OpenMode]]. |
| | | |
− | == OpenSession2 == | + | == IsWakeEventActive == |
− | Same as [[#OpenSession]] but takes a [[#GpioPadName|DeviceCode]] and an u32. | + | Same as [[#IsWakeEventActiveDeprecated]] but takes a [[#GpioPadName|DeviceCode]]. |
| | | |
− | == IsWakeEventActive2 == | + | == SetWakeEventActiveFlagSetForDebug == |
− | Same as [[#IsWakeEventActive]] but takes a [[#GpioPadName|DeviceCode]]. | + | Same as [[#SetWakeEventActiveFlagSetForDebugDeprecated]] but takes a [[#GpioPadName|DeviceCode]]. |
| | | |
− | == SetRetryValues == | + | == DumpStateForDebug == |
| Stubbed. Returns 0. | | Stubbed. Returns 0. |
| | | |
Line 60: |
Line 69: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || SetDirection | + | | 0 || [12.0.0+] [[#SetDirectionDeprecated|SetDirectionDeprecated]] ([1.0.0-11.0.1] SetDirection) |
| + | |- |
| + | | 1 || [[#GetDirection|GetDirection]] |
| + | |- |
| + | | 2 || [[#SetInterruptMode|SetInterruptMode]] |
| |- | | |- |
− | | 1 || GetDirection | + | | 3 || [[#GetInterruptMode|GetInterruptMode]] |
| |- | | |- |
− | | 2 || SetInterruptMode | + | | 4 || [[#SetInterruptEnable|SetInterruptEnable]] |
| |- | | |- |
− | | 3 || GetInterruptMode | + | | 5 || [[#GetInterruptEnable|GetInterruptEnable]] |
| |- | | |- |
− | | 4 || SetInterruptEnable | + | | 6 || [1.0.0-16.1.0] [[#GetInterruptStatus|GetInterruptStatus]] |
| |- | | |- |
− | | 5 || GetInterruptEnable | + | | 7 || [1.0.0-16.1.0] [[#ClearInterruptStatus|ClearInterruptStatus]] |
| |- | | |- |
− | | 6 || GetInterruptStatus | + | | 8 || [[#SetValue|SetValue]] |
| |- | | |- |
− | | 7 || ClearInterruptStatus | + | | 9 || [[#GetValue|GetValue]] |
| |- | | |- |
− | | 8 || SetValue | + | | 10 || [[#BindInterrupt|BindInterrupt]] |
| |- | | |- |
− | | 9 || GetValue | + | | 11 || [[#UnbindInterrupt|UnbindInterrupt]] |
| |- | | |- |
− | | 10 || BindInterrupt | + | | 12 || [[#SetDebounceEnabled|SetDebounceEnabled]] |
| |- | | |- |
− | | 11 || UnbindInterrupt | + | | 13 || [[#GetDebounceEnabled|GetDebounceEnabled]] |
| |- | | |- |
− | | 12 || SetDebounceEnabled | + | | 14 || [[#SetDebounceTime|SetDebounceTime]] |
| |- | | |- |
− | | 13 || GetDebounceEnabled | + | | 15 || [[#GetDebounceTime|GetDebounceTime]] |
| |- | | |- |
− | | 14 || SetDebounceTime | + | | 16 || [4.0.0+] [[#SetValueForSleepState|SetValueForSleepState]] |
| |- | | |- |
− | | 15 || GetDebounceTime | + | | 17 || [6.0.0+] [[#GetMaxDebounceTime|GetMaxDebounceTime]] |
| |- | | |- |
− | | 16 || [4.0.0+] SetValueForSleepState | + | | 18 || [12.0.0+] [[#SetDirectionInput|SetDirectionInput]] |
| |- | | |- |
− | | 17 || [6.0.0+] GetValueForSleepState | + | | 19 || [12.0.0+] [[#SetDirectionOutput|SetDirectionOutput]] |
| |} | | |} |
| + | |
| + | === SetDirectionDeprecated === |
| + | Takes an input u32 [[#Direction]]. No output. |
| + | |
| + | === GetDirection === |
| + | No input. Returns an output u32 [[#Direction]]. |
| + | |
| + | === SetInterruptMode === |
| + | Takes an input u32 [[#InterruptMode]]. No output. |
| + | |
| + | === GetInterruptMode === |
| + | No input. Returns an output u32 [[#InterruptMode]]. |
| + | |
| + | === SetInterruptEnable === |
| + | Takes an input bool '''IsEnable'''. No output. |
| + | |
| + | === GetInterruptEnable === |
| + | No input. Returns an output bool '''IsEnable'''. |
| + | |
| + | === GetInterruptStatus === |
| + | No input. Returns an output u32 [[#InterruptStatus]]. |
| + | |
| + | === ClearInterruptStatus === |
| + | No input/output. |
| + | |
| + | === SetValue === |
| + | Takes an input u32 [[#GpioValue]]. No output. |
| + | |
| + | === GetValue === |
| + | No input. Returns an output u32 [[#GpioValue]]. |
| + | |
| + | === BindInterrupt === |
| + | No input. Returns an output Event handle. |
| + | |
| + | === UnbindInterrupt === |
| + | No input/output. |
| + | |
| + | === SetDebounceEnabled === |
| + | Takes an input bool '''IsEnable'''. No output. |
| + | |
| + | === GetDebounceEnabled === |
| + | No input. Returns an output bool '''IsEnable'''. |
| + | |
| + | === SetDebounceTime === |
| + | Takes an input s32 '''MsecTime'''. No output. |
| + | |
| + | === GetDebounceTime === |
| + | No input. Returns an output s32 '''MsecTime'''. |
| + | |
| + | === SetValueForSleepState === |
| + | Takes an input u32 '''ValueForSleepState'''. No output. |
| + | |
| + | === GetMaxDebounceTime === |
| + | No input. Returns an output u32 '''MaxDebounceTime'''. |
| + | |
| + | === SetDirectionInput === |
| + | No input/output. |
| + | |
| + | === SetDirectionOutput === |
| + | Takes an input u32 [[#GpioValue]]. No output. |
| | | |
| = i2c, i2c:pcv = | | = i2c, i2c:pcv = |
Line 116: |
Line 189: |
| | | |
| == OpenSessionForDev == | | == OpenSessionForDev == |
− | Takes an input u32 '''BusIdx''', an input u16 '''SlaveAddress''', and 2 input u32s [[#AddressingMode]] and [[#SpeedMode]]. Returns an [[#II2cSession]]. | + | Takes an input u16 '''SlaveAddress''' (padded to u32) and 3 input u32s '''BusIdx''', [[#AddressingMode]] and [[#SpeedMode]]. Returns an [[#II2cSession]]. |
| | | |
| == OpenSession == | | == OpenSession == |
− | Takes an input u32 [[#I2cDevice]]. Returns an output [[#II2cSession]]. | + | Takes an input [[#I2cDevice]]. Returns an output [[#II2cSession]]. |
| | | |
| == HasDevice == | | == HasDevice == |
− | Takes an input u32 [[#I2cDevice]]. Returns an output boolean success value. | + | Takes an input [[#I2cDevice]]. Returns an output boolean success value. |
| | | |
| == HasDeviceForDev == | | == HasDeviceForDev == |
− | Takes an input u32 '''BusIdx''', an input u16 '''SlaveAddress''', and 2 input u32s [[#AddressingMode]] and [[#SpeedMode]]. Returns an output boolean success value. | + | Takes an input u16 '''SlaveAddress''' (padded to u32) and 3 input u32s '''BusIdx''', [[#AddressingMode]] and [[#SpeedMode]]. Returns an output boolean success value. |
| | | |
| == OpenSession2 == | | == OpenSession2 == |
− | Same as [[#OpenSession_2|OpenSession]] but takes an input u32 [[#I2cDevice|DeviceCode]]. | + | Same as [[#OpenSession_2|OpenSession]], but takes an input u32 [[#I2cDevice|DeviceCode]]. |
| | | |
| == II2cSession == | | == II2cSession == |
Line 143: |
Line 216: |
| | 2 || [1.0.0-5.1.0] ExecuteCommandListOld | | | 2 || [1.0.0-5.1.0] ExecuteCommandListOld |
| |- | | |- |
− | | 10 || [[#Send]] | + | | 10 || [[#Send|Send]] |
| |- | | |- |
− | | 11 || [[#Receive]] | + | | 11 || [[#Receive|Receive]] |
| |- | | |- |
− | | 12 || [[#ExecuteCommandList]] | + | | 12 || [[#ExecuteCommandList|ExecuteCommandList]] |
| |- | | |- |
− | | 13 || [6.0.0+] [[#SetRetryValues]] | + | | 13 || [6.0.0+] [[#SetRetryPolicy_2|SetRetryPolicy]] |
| |} | | |} |
| | | |
Line 178: |
Line 251: |
| An extension sleep command will stall the device using the format: [u8 cmd_extension] [u8 ms] | | An extension sleep command will stall the device using the format: [u8 cmd_extension] [u8 ms] |
| | | |
− | == SetRetryValues == | + | == SetRetryPolicy == |
− | Takes 2 input u32s '''MaxRetries''' and '''RetryDelay'''. No output. | + | Takes 2 input u32s '''MaxRetries''' and '''RetryIntervalMicroSeconds'''. No output. |
| | | |
| = uart = | | = uart = |
Line 188: |
Line 261: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#HasPort]] | + | | 0 || [1.0.0-16.1.0] [[#HasPort|HasPort]] |
| |- | | |- |
− | | 1 || [[#HasPortForDev]] | + | | 1 || [1.0.0-16.1.0] [[#HasPortForDev|HasPortForDev]] |
| |- | | |- |
− | | 2 || [[#IsSupportedBaudRate]] | + | | 2 || [1.0.0-16.1.0] [[#IsSupportedBaudRate|IsSupportedBaudRate]] |
| |- | | |- |
− | | 3 || [[#IsSupportedBaudRateForDev]] | + | | 3 || [1.0.0-16.1.0] [[#IsSupportedBaudRateForDev|IsSupportedBaudRateForDev]] |
| |- | | |- |
− | | 4 || [[#IsSupportedFlowControlMode]] | + | | 4 || [1.0.0-16.1.0] [[#IsSupportedFlowControlMode|IsSupportedFlowControlMode]] |
| |- | | |- |
− | | 5 || [[#IsSupportedFlowControlModeForDev]] | + | | 5 || [1.0.0-16.1.0] [[#IsSupportedFlowControlModeForDev|IsSupportedFlowControlModeForDev]] |
| |- | | |- |
− | | 6 || [[#CreatePortSession]] | + | | 6 || [[#CreatePortSession|CreatePortSession]] |
| |- | | |- |
− | | 7 || [[#IsSupportedPortEvent]] | + | | 7 || [1.0.0-16.1.0] [[#IsSupportedPortEvent|IsSupportedPortEvent]] |
| |- | | |- |
− | | 8 || [[#IsSupportedPortEventForDev]] | + | | 8 || [1.0.0-16.1.0] [[#IsSupportedPortEventForDev|IsSupportedPortEventForDev]] |
| |- | | |- |
− | | 9 || [7.0.0+] [[#IsSupportedDeviceVariation]] | + | | 9 || [7.0.0-16.1.0] [[#IsSupportedDeviceVariation|IsSupportedDeviceVariation]] |
| |- | | |- |
− | | 10 || [7.0.0+] [[#IsSupportedDeviceVariationForDev]] | + | | 10 || [7.0.0-16.1.0] [[#IsSupportedDeviceVariationForDev|IsSupportedDeviceVariationForDev]] |
| |} | | |} |
| | | |
Line 223: |
Line 296: |
| | | |
| == IsSupportedBaudRateForDev == | | == IsSupportedBaudRateForDev == |
− | Takes 2 input u32s [[#UartPortForDev]] '''BaudRate'''. Returns an output boolean success value. | + | Takes 2 input u32s [[#UartPortForDev]] and '''BaudRate'''. Returns an output boolean success value. |
| | | |
| Supported baud rates are 57600, 115200, 1000000 and 3000000. | | Supported baud rates are 57600, 115200, 1000000 and 3000000. |
Line 245: |
Line 318: |
| Takes 2 input u32s [[#UartPort]] and '''DeviceVariation'''. Returns an output boolean success value. | | Takes 2 input u32s [[#UartPort]] and '''DeviceVariation'''. Returns an output boolean success value. |
| | | |
− | Supported device variations are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (MCU) for UART-C. | + | Supported device variations are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (SioMcu) for UART-C. |
| | | |
| == IsSupportedDeviceVariationForDev == | | == IsSupportedDeviceVariationForDev == |
| Takes 2 input u32s [[#UartPortForDev]] and '''DeviceVariation'''. Returns an output boolean success value. | | Takes 2 input u32s [[#UartPortForDev]] and '''DeviceVariation'''. Returns an output boolean success value. |
| | | |
− | Supported device variations are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (MCU) for UART-C. | + | Supported device variations are 0 (Bluetooth) for UART-D, 0 (Joy-Con(R)) for UART-B, 0 (Joy-Con(L)) and 1 (SioMcu) for UART-C. |
| | | |
| == IPortSession == | | == IPortSession == |
Line 259: |
Line 332: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#OpenPort]] | + | | 0 || [[#OpenPort|OpenPort]] |
| + | |- |
| + | | 1 || [[#OpenPortForDev|OpenPortForDev]] |
| |- | | |- |
− | | 1 || [[#OpenPortForDev]] | + | | 2 || [[#GetWritableLength|GetWritableLength]] |
| |- | | |- |
− | | 2 || [[#GetWritableLength]] | + | | 3 || [[#Send_2|Send]] |
| |- | | |- |
− | | 3 || [[#Send]] | + | | 4 || [[#GetReadableLength|GetReadableLength]] |
| |- | | |- |
− | | 4 || [[#GetReadableLength]] | + | | 5 || [[#Receive_2|Receive]] |
| |- | | |- |
− | | 5 || [[#Receive]] | + | | 6 || [[#BindPortEvent|BindPortEvent]] |
| |- | | |- |
− | | 6 || [[#BindPortEvent]] | + | | 7 || [[#UnbindPortEvent|UnbindPortEvent]] |
| |- | | |- |
− | | 7 || [[#UnbindPortEvent]] | + | | 8 || [14.0.0+] [[#OpenPort2|OpenPort2]] |
| |} | | |} |
| | | |
Line 305: |
Line 380: |
| === UnbindPortEvent === | | === UnbindPortEvent === |
| Takes an input u32 [[#PortEventType]]. Returns an output boolean success value. | | Takes an input u32 [[#PortEventType]]. Returns an output boolean success value. |
| + | |
| + | === OpenPort2 === |
| + | Same as [[#OpenPort]], but takes an input u32 [[#UartPort|DeviceCode]] instead of an [[#UartPort]] and no longer returns an output boolean success value. |
| | | |
| = pwm = | | = pwm = |
Line 334: |
Line 412: |
| | 1 || GetPeriod | | | 1 || GetPeriod |
| |- | | |- |
− | | 2 || SetDuty | + | | 2 || [1.0.0-13.2.1] SetDuty |
| |- | | |- |
− | | 3 || GetDuty | + | | 3 || [1.0.0-13.2.1] GetDuty |
| |- | | |- |
| | 4 || SetEnabled | | | 4 || SetEnabled |
Line 342: |
Line 420: |
| | 5 || GetEnabled | | | 5 || GetEnabled |
| |- | | |- |
− | | 6 || [6.0.0+] SetScale | + | | 6 || [6.0.0+] [[#SetDutyCycle|SetDutyCycle]] |
| |- | | |- |
− | | 7 || [6.0.0+] GetScale | + | | 7 || [6.0.0+] [[#GetDutyCycle|GetDutyCycle]] |
| |} | | |} |
| + | |
| + | === SetDutyCycle === |
| + | Takes an input double '''DutyCycle'''. No output. |
| + | |
| + | === GetDutyCycle === |
| + | No input. Returns an output double '''DutyCycle'''. |
| | | |
| = pinmux = | | = pinmux = |
Line 367: |
Line 451: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#SetPinAssignment]] | + | | 0 || [[#SetPinAssignment|SetPinAssignment]] |
| + | |- |
| + | | 1 || [[#GetPinAssignment|GetPinAssignment]] |
| + | |- |
| + | | 2 || [[#SetPinAssignmentForHardwareTest|SetPinAssignmentForHardwareTest]] |
| + | |- |
| + | | 3 || [17.0.0+] SetSfioConfiguration |
| + | |- |
| + | | 4 || [17.0.0+] GetSfioConfiguration |
| + | |- |
| + | | 5 || [17.0.0+] SetInputEnableConfiguration |
| + | |- |
| + | | 6 || [17.0.0+] GetInputEnableConfiguration |
| + | |- |
| + | | 7 || [17.0.0+] SetPullConfiguration |
| + | |- |
| + | | 8 || [17.0.0+] GetPullConfiguration |
| |- | | |- |
− | | 1 || [[#GetPinAssignment]] | + | | 9 || [17.0.0+] SetPmConfiguration |
| |- | | |- |
− | | 2 || [[#SetPinAssignmentForHardwareTest]] | + | | 10 || [17.0.0+] GetPmConfiguration |
| |} | | |} |
| | | |
| === SetPinAssignment === | | === SetPinAssignment === |
− | Takes an u32 '''PinAssignment'''. No output. | + | Takes a [[#PinAssignment]]. No output. |
| | | |
| === GetPinAssignment === | | === GetPinAssignment === |
− | No input. Returns an u32 '''PinAssignment'''. | + | No input. Returns a [[#PinAssignment]]. |
| | | |
| === SetPinAssignmentForHardwareTest === | | === SetPinAssignmentForHardwareTest === |
− | Takes an u32 '''PinAssignmentForHardwareTest'''. No output. | + | Takes a [[#PinAssignmentForHardwareTest]]. No output. |
| | | |
| = sasbus = | | = sasbus = |
Line 405: |
Line 505: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#Write]] | + | | 0 || [[#Send_3|Send]] |
| + | |- |
| + | | 1 || [[#Receive_3|Receive]] |
| + | |- |
| + | | 2 || [[#StartPeriodicReceiveMode|StartPeriodicReceiveMode]] |
| |- | | |- |
− | | 1 || [[#Read]] | + | | 3 || [[#StopPeriodicReceiveMode|StopPeriodicReceiveMode]] |
| |- | | |- |
− | | 2 || [[#StartPeriodicReceiveMode]] | + | | 4 || [19.0.0+] |
| |- | | |- |
− | | 3 || [[#StopPeriodicReceiveMode]] | + | | 5 || [19.0.0+] |
| |} | | |} |
| | | |
− | === Write === | + | === Send === |
| Takes a type-0x21 input buffer and an u8 '''SpiCommand'''. No output. | | Takes a type-0x21 input buffer and an u8 '''SpiCommand'''. No output. |
| | | |
− | === Read === | + | === Receive === |
| Takes a type-0x22 output buffer and an u8 '''SpiCommand'''. No output. | | Takes a type-0x22 output buffer and an u8 '''SpiCommand'''. No output. |
| | | |
Line 425: |
Line 529: |
| === StopPeriodicReceiveMode === | | === StopPeriodicReceiveMode === |
| No input/output. | | No input/output. |
| + | |
| + | === Cmd4 === |
| + | Takes a total of 0x10-bytes of input and an input handle. No output. |
| + | |
| + | This is similar to [[#StartPeriodicReceiveMode|StartPeriodicReceiveMode]]. This eventually calls an impl func which just writes some input fields into state, then (on NX) Aborts. |
| + | |
| + | === Cmd5 === |
| + | No input/output. |
| + | |
| + | This is identical to [[#StopPeriodicReceiveMode|StopPeriodicReceiveMode]]. |
| | | |
| = led = | | = led = |
Line 435: |
Line 549: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || [[#OpenController]] | + | | 0 || [[#OpenController|OpenController]] |
| |} | | |} |
| | | |
Line 450: |
Line 564: |
| ! Cmd || Name | | ! Cmd || Name |
| |- | | |- |
− | | 0 || | + | | 0 || StartLighting |
| |- | | |- |
− | | 1 || | + | | 1 || StopLighting |
| |- | | |- |
− | | 2 || | + | | 2 || SetLightingMode |
| |- | | |- |
− | | 3 || | + | | 3 || GetLightingMode |
| |- | | |- |
− | | 4 || | + | | 4 || IsLighting |
| |- | | |- |
− | | 5 || | + | | 5 || SetRisingTime |
| |- | | |- |
− | | 6 || | + | | 6 || GetRisingTime |
| |- | | |- |
− | | 7 || | + | | 7 || SetFallingTime |
| |- | | |- |
− | | 8 || | + | | 8 || GetFallingTime |
| |- | | |- |
− | | 9 || | + | | 9 || SetPeakTime |
| |- | | |- |
− | | 10 || | + | | 10 || GetPeakTime |
| |- | | |- |
− | | 11 || | + | | 11 || SetPulseInterval |
| |- | | |- |
− | | 12 || | + | | 12 || GetPulseInterval |
| |- | | |- |
− | | 13 || | + | | 13 || SetPulseCount |
| |- | | |- |
− | | 14 || | + | | 14 || GetPulseCount |
| |- | | |- |
− | | 15 || | + | | 15 || GetMaxPulseCount |
| |- | | |- |
− | | 16 || | + | | 16 || SetBreathInterval |
| |- | | |- |
− | | 17 || | + | | 17 || GetBreathInterval |
| |- | | |- |
− | | 18 || | + | | 18 || SetConstantBrightness |
| |- | | |- |
− | | 19 || | + | | 19 || GetConstantBrightness |
| |- | | |- |
− | | 20 || | + | | 20 || [10.0.0+] GetBreathingStatus ([8.1.1-9.2.0] RegisterPwmChannel) |
| |- | | |- |
− | | 21 || [8.1.1-9.2.0] | + | | 21 || [8.1.1-9.2.0] UnregisterPwmChannel |
| |} | | |} |
| | | |
Line 502: |
Line 616: |
| ! Value || Name || [[#GpioPadDescriptor|GpioPadDescriptor]] || DeviceCode || Tegra (port, pin) || Description || Direction || Used by (services) || Used by (hardware) | | ! Value || Name || [[#GpioPadDescriptor|GpioPadDescriptor]] || DeviceCode || Tegra (port, pin) || Description || Direction || Used by (services) || Used by (hardware) |
| |- | | |- |
− | | 0x01 || CodecLdoEnTemp || 0xCC || 0x33000002 || Z, 4 || Audio Codec (ALC5639) Power || Out || [[Audio services]], [[Fatal services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x01 || CodecLdoEnTemp || 0xCC || 0x33000002 || Z, 4 || Audio Codec (ALC5639) Power || Out || [[Audio services]], [[Fatal services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x02 || PowSdEn || 0x24 || 0x3C000001 || E, 4 || SDCard Power || Out || [[PCV services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x02 || PowSdEn || 0x24 || 0x3C000001 || E, 4 || SdCard Power || Out || [[PCV services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x03 || BtRst || 0x3C || 0x37000002 || H, 4 || Bluetooth Reset || Out || [[Bluetooth Driver services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x03 || BtRst || 0x3C || 0x37000002 || H, 4 || Bluetooth Reset || Out || [[Bluetooth Driver services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
| | 0x04 || RamCode3 || 0xDA || 0xC9000402 || BB, 2 || Secondary Boot Device Configration || In || || Icosa, Iowa | | | 0x04 || RamCode3 || 0xDA || 0xC9000402 || BB, 2 || Secondary Boot Device Configration || In || || Icosa, Iowa |
| |- | | |- |
− | | 0x05 || GameCardReset || 0xDB || 0x3C000402 || BB, 3 || Gamecard Reset || Out || [[Filesystem services]] || Icosa, Copper, Hoag, Iowa, Unknown | + | | 0x05 || GameCardReset || 0xDB || 0x3C000402 || BB, 3 || Gamecard Reset || Out || [[Filesystem services]] || Icosa, Copper, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x06 || CodecAlert || 0xDC || 0x33000003 || BB, 4 || Audio Codec (ALC5639) Alert || In || [[Audio services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x06 || CodecAlert || 0xDC || 0x33000003 || BB, 4 || Audio Codec (ALC5639) Alert || In || [[Audio services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
| | 0x07 || PowGc || 0x25 || 0x3C000401 || E, 5 || Gamecard Power || Out || || Icosa, Copper | | | 0x07 || PowGc || 0x25 || 0x3C000401 || E, 5 || Gamecard Power || Out || || Icosa, Copper |
Line 518: |
Line 632: |
| | 0x08 || DebugControllerDet || 0x90 || 0x350000CA || S, 0 || Debug Pad Detect || In || [[HID services]] || Icosa, Iowa | | | 0x08 || DebugControllerDet || 0x90 || 0x350000CA || S, 0 || Debug Pad Detect || In || [[HID services]] || Icosa, Iowa |
| |- | | |- |
− | | 0x09 || BattChgStatus || 0x91 || 0x39000407 || S, 1 || Battery Charge Status || In || || Icosa, Hoag, Iowa, Unknown | + | | 0x09 || BattChgStatus || 0x91 || 0x39000407 || S, 1 || Battery Charge Status || In || || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x0A || BattChgEnableN || 0x96 || 0x39000003 || S, 6 || Charger IC (BQ24193) Charge Enable || Out || [[PTM services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x0A || BattChgEnableN || 0x96 || 0x39000003 || S, 6 || Charger IC (BQ24193) Charge Enable || Out || [[PTM services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x0B || FanTach || 0x97 || 0x3D000002 || S, 7 || Fan Tachometer || In || || Icosa, Hoag, Iowa, Calcio, Unknown | + | | 0x0B || FanTach || 0x97 || 0x3D000002 || S, 7 || Fan Tachometer || In || || Icosa, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x0C || ExtconDetS || 0x26 || 0x3500040B || E, 6 || Joy-Con(L) IsAttached (insertion, Joy-Con pin 5/console TX, pulled low on insert) || In || [[HID services]], [[AM services]] || Icosa, Iowa, Unknown | + | | 0x0C || ExtconDetS || 0x26 || 0x3500040B || E, 6 || Joy-Con(L) IsAttached (insertion, Joy-Con pin 5/console TX, pulled low on insert) || In || [[HID services]], [[AM services]] || Icosa, Iowa, Aula |
| |- | | |- |
− | | 0x0D || Vdd50AEn || 0x05 || 0x39000401 || A, 5 || Fan and Joy-Con Rails Power (Battery - BQ24193 5V) || Out || [[PTM services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x0D || Vdd50AEn || 0x05 || 0x39000401 || A, 5 || Fan and Joy-Con 5V Power (Battery) || Out || [[PTM services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x0E || SdevCoaxSel1 || 0x78 || 0xCA000402 || P, 0 || SDEV Coax Select || In || || Icosa, Iowa | + | | 0x0E || SdevCoaxSel1 || 0x78 || 0xCA000406 ([1.0.0-10.0.0] 0xCA000402) || P, 0 || SDEV Coax Select || In || || Icosa, Iowa |
| |- | | |- |
− | | 0x0F || GameCardCd || 0x93 || 0x3C000403 || S, 3 || Gamecard Card Detect || In || [[Filesystem services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Unknown | + | | 0x0F || GameCardCd || 0x93 || 0x3C000403 || S, 3 || Gamecard Card Detect || In || [[Filesystem services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Aula |
| |- | | |- |
| | 0x10 || ProdType0 || 0x7D || 0xC900040B || P, 5 || || In || || Icosa, Copper, Iowa | | | 0x10 || ProdType0 || 0x7D || 0xC900040B || P, 5 || || In || || Icosa, Copper, Iowa |
Line 540: |
Line 654: |
| | 0x13 || ProdType3 || 0x7A || 0xC900040E || P, 2 || || In || || Icosa, Copper, Iowa | | | 0x13 || ProdType3 || 0x7A || 0xC900040E || P, 2 || || In || || Icosa, Copper, Iowa |
| |- | | |- |
− | | 0x14 || TempAlert || 0xBC || 0x3E000002 || X, 4 || Temperature Sensor || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x14 || TempAlert || 0xBC || 0x3E000002 || X, 4 || Temperature Sensor || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x15 || CodecHpDetIrq || 0xAE || 0x33000004 || V, 6 || Audio Codec (ALC5639) Headphone Detect || In || [[Audio services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x15 || CodecHpDetIrq || 0xAE || 0x33000004 || V, 6 || Audio Codec (ALC5639) Headphone Detect || In || [[Audio services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x16 || MotionInt || 0xBA || 0x35000041 || X, 2 || || In || || Icosa, Hoag, Iowa, Unknown | + | | 0x16 || MotionInt || 0xBA || 0x35000041 || X, 2 || Built-in IMU IRQ || In || || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x17 || TpIrq || 0xB9 || 0x35000036 || X, 1 || TouchPanel IRQ || In || [[HID services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x17 || TpIrq || 0xB9 || 0x35000036 || X, 1 || TouchPanel IRQ || In || [[HID services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x18 || ButtonSleep2 || 0xBD || 0x35000001 || X, 5 || Power Button || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x18 || ButtonSleep2 || 0xBD || 0x35000001 || X, 5 || Power Button (Connected only on Hoag) || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x19 || ButtonVolUp || 0xBE || 0x35000002 || X, 6 || Volume Up || In || [[Boot2]], [[Audio services]], [[Fatal services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x19 || ButtonVolUp || 0xBE || 0x35000002 || X, 6 || Volume Up || In || [[Boot2]], [[Audio services]], [[Fatal services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x1A || ButtonVolDn || 0xBF || 0x35000003 || X, 7 || Volume Down || In || [[Boot2]], [[Audio services]] || Icosa, Copper, Hoag, Iowa, Calcio , Unknown | + | | 0x1A || ButtonVolDn || 0xBF || 0x35000003 || X, 7 || Volume Down || In || [[Boot2]], [[Audio services]] || Icosa, Copper, Hoag, Iowa, Calcio , Aula |
| |- | | |- |
− | | 0x1B || BattMgicIrq || 0xC0 || 0x39000034 || Y, 0 || Fuel Gauge IC (MAX17050) IRQ || In || [[PTM services]], [[AM services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x1B || BattMgicIrq || 0xC0 || 0x39000034 || Y, 0 || Fuel Gauge IC (MAX17050) IRQ || In || [[PTM services]], [[AM services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x1C || RecoveryKey || 0xC1 || 0x35000004 || Y, 1 || Recovery Mode Key || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x1C || RecoveryKey || 0xC1 || 0x35000004 || Y, 1 || Recovery Mode Key (HOME Button) || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x1D || PowLcdBlEn || 0xA9 || 0x3400003E || V, 1 || Backlight Enable || Out || [[NV services]], [[Backlight services]] || Icosa, Hoag, Iowa | + | | 0x1D || PowLcdBlEn || 0xA9 || 0x3400003E || V, 1 || LCD Backlight Power || Out || [[NV services]], [[Backlight services]] || Icosa, Hoag, Iowa |
| |- | | |- |
− | | 0x1E || LcdReset || 0xAA || 0x34000033 || V, 2 || Backlight Reset || Out || [[NV services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x1E || LcdReset || 0xAA || 0x34000033 || V, 2 || LCD Reset || Out || [[NV services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x1F || PdVconnEn || 0x55 || 0x040000CC || K, 5 || USB-PD Controller (RHOM BM92T30MWV) VCONN Power || Out || [[PTM services]], [[USB services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x1F || PdVconnEn || 0x55 || 0x040000CC || K, 5 || USB-PD Controller (RHOM BM92T30MWV) VCONN Power || Out || [[PTM services]], [[USB services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x20 || PdRstN || 0xAD || 0x040000CA || V, 5 || USB-PD Controller (RHOM BM92T30MWV) Reset || Out || [[USB services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x20 || PdRstN || 0xAD || 0x040000CA || V, 5 || USB-PD Controller (RHOM BM92T30MWV) ResetN || Out || [[USB services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x21 || Bq24190Irq || 0xC8 || 0x39000002 || Z, 0 || Charger IC (BQ24193) IRQ || In || [[PTM services]], [[AM services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x21 || Bq24190Irq || 0xC8 || 0x39000002 || Z, 0 || Charger IC (BQ24193) IRQ || In || [[PTM services]], [[AM services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x22 || SdevCoaxSel0 || 0xCA || 0xCA000401 || Z, 2 || SDEV Coax Select || In || || Icosa, Iowa | + | | 0x22 || SdevCoaxSel0 || 0xCA || 0xCA000405 ([1.0.0-10.0.0] 0xCA000401) || Z, 2 || SDEV Coax Select || In || || Icosa, Iowa |
| |- | | |- |
− | | 0x23 || SdWp || 0xCB || 0x3C000003 || Z, 3 || SDCard Write Protect || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x23 || SdWp || 0xCB || 0x3C000003 || Z, 3 || SdCard Write Protect || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x24 || TpReset || 0x4F || 0x35000035 || J, 7 || TouchPanel Reset || Out || [[HID services]] || Icosa, Hoag, Iowa, Unknown | + | | 0x24 || TpReset || 0x4F || 0x35000035 || J, 7 || TouchPanel Reset || Out || [[HID services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x25 || BtGpio2 || 0x50 || 0x37000401 || K, 0 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x25 || BtGpio2 || 0x50 || 0x37000401 || K, 0 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x26 || BtGpio3 || 0x51 || 0x37000402 || K, 1 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x26 || BtGpio3 || 0x51 || 0x37000402 || K, 1 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x27 || BtGpio4 || 0x52 || 0x37000403 || K, 2 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x27 || BtGpio4 || 0x52 || 0x37000403 || K, 2 || || In || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x28 || CradleIrq || 0x54 || 0x040000CB || K, 4 || USB-PD Controller (RHOM BM92T30MWV) IRQ || In || [[USB services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x28 || CradleIrq || 0x54 || 0x040000CB || K, 4 || USB-PD Controller (RHOM BM92T30MWV) IRQ || In || [[USB services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x29 || PowVcpuInt || 0x56 || 0x3E000003 || K, 6 || || In || || Icosa, Copper, Unknown | + | | 0x29 || PowVcpuInt || 0x56 || 0x3E000003 || K, 6 || Sub-PMIC for CPU (MAX77621) IRQ || In || || Icosa, Copper, Aula |
| |- | | |- |
− | | 0x2A || Max77621GpuInt || 0x57 || 0x3E000004 || K, 7 || || In || || Icosa, Copper | + | | 0x2A || Max77621GpuInt || 0x57 || 0x3E000004 || K, 7 || Sub-PMIC for GPU (MAX77621) IRQ || In || || Icosa, Copper |
| |- | | |- |
− | | 0x2B || ExtconChgU || 0x53 || 0x35000402 || K, 3 || Joy-Con(R) Charge || Out || [[HID services]] || Icosa, Iowa, Unknown | + | | 0x2B || ExtconChgU || 0x53 || 0x35000402 || K, 3 || Joy-Con(R) Charge || Out || [[HID services]] || Icosa, Iowa, Aula |
| |- | | |- |
− | | 0x2C || ExtconChgS || 0xE3 || 0x3500040C || CC, 3 || Joy-Con(L) Charge || Out || [[HID services]] || Icosa, Iowa, Unknown | + | | 0x2C || ExtconChgS || 0xE3 || 0x3500040C || CC, 3 || Joy-Con(L) Charge || Out || [[HID services]] || Icosa, Iowa, Aula |
| |- | | |- |
| | 0x2D || WifiRfDisable || 0x38 || 0x38000003 || H, 0 || || Out || || Icosa, Copper, Hoag, Iowa, Calcio | | | 0x2D || WifiRfDisable || 0x38 || 0x38000003 || H, 0 || || Out || || Icosa, Copper, Hoag, Iowa, Calcio |
| |- | | |- |
− | | 0x2E || WifiReset || 0x39 || 0x38000002 || H, 1 || WiFi Reset || Out || [[WLAN services]], [[PCIe services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x2E || WifiReset || 0x39 || 0x38000002 || H, 1 || WiFi Reset || Out || [[WLAN services]], [[PCIe services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x2F || ApWakeBt || 0x3B || 0x37000003 || H, 3 || || Out || [[Bluetooth Driver services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x2F || ApWakeBt || 0x3B || 0x37000003 || H, 3 || Wake Bluetooth from Host || Out || [[Bluetooth Driver services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x30 || BtWakeAp || 0x3D || 0x37000004 || H, 5 || || In || [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x30 || BtWakeAp || 0x3D || 0x37000004 || H, 5 || Wake Host from Bluetooth || In || [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x31 || BtGpio5 || 0x3F || 0x37000404 || H, 7 || || Out || || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x31 || BtGpio5 || 0x3F || 0x37000404 || H, 7 || || Out || || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x32 || PowLcdVddPEn || 0x40 || 0x34000034 || I, 0 || Backlight +5V || Out || [[NV services]] || Icosa, Hoag, Iowa | + | | 0x32 || PowLcdVddPEn || 0x40 || 0x34000034 || I, 0 || LCD Backlight PAVDD +5V || Out || [[NV services]] || Icosa, Hoag, Iowa |
| |- | | |- |
− | | 0x33 || PowLcdVddNEn || 0x41 || 0x34000035 || I, 1 || Backlight -5V || Out || [[NV services]] || Icosa, Hoag, Iowa | + | | 0x33 || PowLcdVddNEn || 0x41 || 0x34000035 || I, 1 || LCD Backlight NAVDD -5V || Out || [[NV services]] || Icosa, Hoag, Iowa |
| |- | | |- |
− | | 0x34 || ExtconDetU || 0x3E || 0x35000401 || H, 6 || Joy-Con(R) IsAttached (insertion, Joy-Con pin 5/console TX, pulled low on insert) || In || [[HID services]], [[AM services]] || Icosa, Iowa, Unknown | + | | 0x34 || ExtconDetU || 0x3E || 0x35000401 || H, 6 || Joy-Con(R) IsAttached (insertion, Joy-Con pin 5/console TX, pulled low on insert) || In || [[HID services]], [[AM services]] || Icosa, Iowa, Aula |
| |- | | |- |
| | 0x35 || RamCode2 || 0xE2 || 0xC9000401 || CC, 2 || Secondary Boot Device Configration || In || || Icosa, Iowa | | | 0x35 || RamCode2 || 0xE2 || 0xC9000401 || CC, 2 || Secondary Boot Device Configration || In || || Icosa, Iowa |
| |- | | |- |
− | | 0x36 || Vdd50BEn || 0xE4 || 0x39000402 || CC, 4 || Fan and Joy-Con Rails Power (USB 5V) || Out || [[PTM services]] || Icosa, Iowa | + | | 0x36 || Vdd50BEn || 0xE4 || 0x39000402 || CC, 4 || Fan and Joy-Con 5V Power (USB) || Out || [[PTM services]] || Icosa, Iowa |
| |- | | |- |
− | | 0x37 || WifiWakeHost || 0x3A || 0x38000004 || H, 2 || || In || [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x37 || WifiWakeHost || 0x3A || 0x38000004 || H, 2 || Wake Host from Wifi || In || [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 0x38 || SdCd || 0xC9 || 0x3C000002 || Z, 1 || SDCard Card Detect || In || [[Filesystem services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 0x38 || SdCd || 0xC9 || 0x3C000002 || Z, 1 || SdCard Card Detect || In || [[Filesystem services]], [[AM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
| | 0x39 || OtgFet1ForSdev || 0x4D || 0x39000404 || J, 5 || Charger IC (BQ24193) OTG Charge Select || Out || [[PTM services]], [[USB services]] || Icosa, Iowa | | | 0x39 || OtgFet1ForSdev || 0x4D || 0x39000404 || J, 5 || Charger IC (BQ24193) OTG Charge Select || Out || [[PTM services]], [[USB services]] || Icosa, Iowa |
Line 618: |
Line 732: |
| | 0x3A || OtgFet2ForSdev || 0x58 || 0x39000405 || L, 0 || Charger IC (BQ24193) OTG Charge Select || Out || [[PTM services]], [[USB services]] || Icosa, Iowa | | | 0x3A || OtgFet2ForSdev || 0x58 || 0x39000405 || L, 0 || Charger IC (BQ24193) OTG Charge Select || Out || [[PTM services]], [[USB services]] || Icosa, Iowa |
| |- | | |- |
− | | 0x3B || ExtConWakeU || 0x3E || 0x35000403 || H, 6 || Joy-Con(R) Wake Detect || In || || Icosa, Hoag, Iowa, Unknown | + | | 0x3B || ExtConWakeU || 0x3E || 0x35000403 || H, 6 || Joy-Con(R) Wake Detect || In || || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x3C || ExtConWakeS || 0x26 || 0x3500040D || E, 6 || Joy-Con(L) Wake Detect || In || || Icosa, Hoag, Iowa, Unknown | + | | 0x3C || ExtConWakeS || 0x26 || 0x3500040D || E, 6 || Joy-Con(L) Wake Detect || In || || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 0x3D || PmuIrq || -1 || 0x39000406 || || || || || | + | | 0x3D || PmuIrq || -1 || 0x39000406 || GIC 86 || Main PMIC IRQ (PMU_EXT IRQ) || || || |
| |- | | |- |
| | 0x3E || ExtUart2Cts || 0x33 || 0x35000404 || G, 3 || Joy-Con(R) CTS (checked low) || In || [[HID services]], [[AM services]] || | | | 0x3E || ExtUart2Cts || 0x33 || 0x35000404 || G, 3 || Joy-Con(R) CTS (checked low) || In || [[HID services]], [[AM services]] || |
Line 644: |
Line 758: |
| | 0x47 || UsbSwitchB2En || 0x98 || 0x04000406 || T, 0 || USB Root Port 2 Power || Out || [[USB services]] || Copper | | | 0x47 || UsbSwitchB2En || 0x98 || 0x04000406 || T, 0 || USB Root Port 2 Power || Out || [[USB services]] || Copper |
| |- | | |- |
− | | 0x48 || Hdmi5VEn || 0x10 || 0x34000004 || C, 0 || HDMI 5V || Out || [[NV services]] || Copper, Calcio | + | | 0x48 || Hdmi5VEn || 0x10 || 0x34000004 || C, 0 || HDMI 5V Power || Out || [[NV services]] || Copper, Calcio |
| |- | | |- |
| | 0x49 || UsbSwitchB1En || 0x11 || 0x04000407 || C, 1 || USB Root Port 1 Power || Out || [[USB services]] || Copper, Calcio | | | 0x49 || UsbSwitchB1En || 0x11 || 0x04000407 || C, 1 || USB Root Port 1 Power || Out || [[USB services]] || Copper, Calcio |
Line 650: |
Line 764: |
| | 0x4A || HdmiPdTrEn || 0x12 || 0x34000005 || C, 2 || HDMI/Power Delivery Switch || Out || [[NV services]] || Copper, Calcio | | | 0x4A || HdmiPdTrEn || 0x12 || 0x34000005 || C, 2 || HDMI/Power Delivery Switch || Out || [[NV services]] || Copper, Calcio |
| |- | | |- |
− | | 0x4B || FanEn || 0x42 || 0x3D000003 || I, 2 || Fan Enable || Out || [[PTM services]] || Copper | + | | 0x4B || FanEn || 0x42 || 0x3D000003 || I, 2 || Fan Power || Out || [[PTM services]] || Copper |
| |- | | |- |
| | 0x4C || UsbSwitchB1Oc || 0xE6 || 0x04000408 || CC, 6 || USB Root Port 1 Over Current || In || [[USB services]] || Copper, Calcio | | | 0x4C || UsbSwitchB1Oc || 0xE6 || 0x04000408 || CC, 6 || USB Root Port 1 Over Current || In || [[USB services]] || Copper, Calcio |
Line 658: |
Line 772: |
| | [2.0.0+] 0x4E || HdmiHpd || 0xE1 || 0x34000006 || CC, 1 || HDMI Hot Plug Detect || In || [[NV services]] || Copper, Calcio | | | [2.0.0+] 0x4E || HdmiHpd || 0xE1 || 0x34000006 || CC, 1 || HDMI Hot Plug Detect || In || [[NV services]] || Copper, Calcio |
| |- | | |- |
− | | [5.0.0+] 0x4F || Max77812Irq || 0x56 || 0x3E000003 || K, 6 || || In || || Hoag, Iowa, Calcio | + | | [5.0.0+] 0x4F || Max77812Irq || 0x56 || 0x3E000003 || K, 6 || Sub-PMIC (CPU/GPU/RAM) IRQ || In || || Hoag, Iowa, Calcio |
| |- | | |- |
− | | [6.0.0+] 0x50 || || 0x20 || 0xCA000001 || E, 0 || || Out || || Hoag, Calcio, Unknown | + | | [6.0.0+] 0x50 || Debug0 || 0x20 || 0xCA000001 || E, 0 || || Out || || Hoag, Calcio, Aula |
| |- | | |- |
− | | [6.0.0+] 0x51 || || 0x21 || 0xCA000002 || E, 1 || || Out || || Hoag, Calcio, Unknown | + | | [6.0.0+] 0x51 || Debug1 || 0x21 || 0xCA000002 || E, 1 || || Out || || Hoag, Calcio, Aula |
| |- | | |- |
− | | [6.0.0+] 0x52 || || 0x22 || 0xCA000003 || E, 2 || || Out || || Hoag, Calcio, Unknown | + | | [6.0.0+] 0x52 || Debug2 || 0x22 || 0xCA000003 || E, 2 || || Out || || Hoag, Calcio, Aula |
| |- | | |- |
− | | [6.0.0+] 0x53 || || 0x23 || 0xCA000004 || E, 3 || || Out || || Hoag, Calcio, Unknown | + | | [6.0.0+] 0x53 || Debug3 || 0x23 || 0xCA000004 || E, 3 || || Out || || Hoag, Calcio, Aula |
| |- | | |- |
− | | [6.0.0+] 0x54 || NfcIrq || 0x4C || 0x36000004 || J, 4 || || In || [[NFC services]] || Hoag | + | | [6.0.0+] 0x54 || NfcIrq || 0x4C || 0x36000004 || J, 4 || NFC Controller IRQ || In || [[NFC services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x55 || NfcRst || 0x57 || 0x36000003 || K, 7 || || Out || [[NFC services]] || Hoag | + | | [6.0.0+] 0x55 || NfcRst || 0x57 || 0x36000003 || K, 7 || NFC Controller Reset || Out || [[NFC services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x56 || McuIrq || 0x27 ([6.0.0-8.0.0] 0x94) || 0x35000415 || S, 4 || || In || || Hoag | + | | [6.0.0+] 0x56 || McuIrq || 0x27 ([6.0.0-8.0.0] 0x94) || 0x35000415 || E, 7 || Sio MCU IRQ || In || || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x57 || McuBoot || 0x98 || 0x35000416 || T, 0 || || Out || [[HID services]] || Hoag | + | | [6.0.0+] 0x57 || McuBoot || 0x98 || 0x35000416 || T, 0 || Sio MCU BOOT0 Select (0: Flash, 1: SRAM) || Out || [[HID services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x58 || McuRst || 0x99 || 0x35000417 || T, 1 || || Out || [[HID services]] || Hoag | + | | [6.0.0+] 0x58 || McuRst || 0x99 || 0x35000417 || T, 1 || Sio MCU ResetN (Output LOW -> Input) || In || [[HID services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x59 || Vdd5V3En || 0xBB || 0x39000403 || X, 3 || 5V3 Fan Power || Out || [[PTM services]] || Hoag, Iowa, Unknown | + | | [6.0.0+] 0x59 || Vdd5V3En || 0xBB || 0x39000403 || X, 3 || OTG VBUS Power || Out || [[PTM services]] || Hoag, Iowa, Aula |
| |- | | |- |
− | | [6.0.0+] 0x5A || McuPor || 0xE5 || 0x35000418 || CC, 5 || || Out || [[HID services]] || Hoag | + | | [6.0.0+] 0x5A || McuPor || 0xE5 || 0x35000418 || CC, 5 || Sio MCU NPOR || Out || [[HID services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x5B || || 0xAB || 0x35000005 || V, 3 || SioH Input || In || [[HID services]], [[AM services]] || Hoag | + | | [6.0.0+] 0x5B || (McuHome) || 0xAB || 0x35000005 || V, 3 || Sio MCU Home Button || In || [[HID services]], [[AM services]] || Hoag |
| |- | | |- |
− | | [6.0.0+] 0x5C || NfcEn || 0x4E || 0x36000002 || J, 6 || || Out || [[NFC services]] || Hoag | + | | [6.0.0+] 0x5C || NfcEn || 0x4E || 0x36000002 || J, 6 || NFC Controller Power || Out || [[NFC services]] || Hoag |
| |- | | |- |
| | [7.0.0+] - || ExtUart2Rts || 0x32 || 0x35000406 || G, 2 || Joy-Con(R) RTS || In || || | | | [7.0.0+] - || ExtUart2Rts || 0x32 || 0x35000406 || G, 2 || Joy-Con(R) RTS || In || || |
Line 690: |
Line 804: |
| | [7.0.0+] - || ExtUart3Rts || 0x1B || 0x35000410 || D, 3 || Joy-Con(L) RTS || In || || | | | [7.0.0+] - || ExtUart3Rts || 0x1B || 0x35000410 || D, 3 || Joy-Con(L) RTS || In || || |
| |- | | |- |
− | | [7.0.0+] - || || 0x17 || 0x3500041B || C, 7 || || In || || Hoag | + | | [7.0.0+] - || || 0x17 || 0x3500041B || C, 7 || SPI4 MOSI (Built-in IMU, set as gpio-input so Sio can use IMU) || In || || Hoag |
| |- | | |- |
− | | [7.0.0+] - || || 0x18 || 0x3500041C || D, 0 || || In || || Hoag | + | | [7.0.0+] - || || 0x18 || 0x3500041C || D, 0 || SPI4 MISO (Built-in IMU, set as gpio-input so Sio can use IMU) || In || || Hoag |
| |- | | |- |
− | | [7.0.0+] - || || 0x15 || 0x3500041D || C, 5 || || In || || Hoag | + | | [7.0.0+] - || || 0x15 || 0x3500041D || C, 5 || SPI4 SCLK (Built-in IMU, set as gpio-input so Sio can use IMU) || In || || Hoag |
| |- | | |- |
− | | [7.0.0+] - || || 0x16 || 0x3500041E || C, 6 || || In || || Hoag | + | | [7.0.0+] - || || 0x16 || 0x3500041E || C, 6 || SPI4 CS0 (Built-in IMU, set as gpio-input so Sio can use IMU) || In || || Hoag |
| |- | | |- |
− | | [10.0.0+] - || || 0xC5 || 0x35000065 || Y, 5 || || Out || || Hoag | + | | [10.0.0+] - || || 0xC5 || 0x35000065 || Y, 5 || Notification LED PWM (CLK 32K OUT) || Out || || Hoag |
| |- | | |- |
| | [10.0.0+] - || || 0x29 || 0x04000409 || F, 1 || || Out || || Calcio | | | [10.0.0+] - || || 0x29 || 0x04000409 || F, 1 || || Out || || Calcio |
| |- | | |- |
− | | [10.0.0+] - || || 0x38 || 0x34000401 || H, 0 || || In || || Unknown | + | | [10.0.0+] - || || 0x38 || 0x34000401 || H, 0 || OLED Panel IRQ || In || [[Display services]] || Aula |
| + | |- |
| + | | [13.0.0+] - || (BtGpio6) || 0x46 || 0x37000405 || I, 6 || UART-D RTS (Bluetooth) || In || || |
| |} | | |} |
| | | |
Line 715: |
Line 831: |
| |- | | |- |
| | 2-0 || Pin number | | | 2-0 || Pin number |
| + | |} |
| + | |
| + | = Direction = |
| + | This is "nn::gpio::Direction". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || Input |
| + | |- |
| + | | 1 || Output |
| + | |} |
| + | |
| + | = GpioValue = |
| + | This is "nn::gpio::GpioValue". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || Low |
| + | |- |
| + | | 1 || High |
| + | |} |
| + | |
| + | = InterruptMode = |
| + | This is "nn::gpio::InterruptMode". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || LowLevel |
| + | |- |
| + | | 1 || HighLevel |
| + | |- |
| + | | 2 || RisingEdge |
| + | |- |
| + | | 3 || FallingEdge |
| + | |- |
| + | | 4 || AnyEdge |
| + | |} |
| + | |
| + | = InterruptStatus = |
| + | This is "nn::gpio::InterruptStatus". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || Inactive |
| + | |- |
| + | | 1 || Active |
| + | |} |
| + | |
| + | = WakeBitFlag = |
| + | This is "nn::gpio::WakeBitFlag". This is a 128-bit flag. |
| + | |
| + | = OpenMode = |
| + | This is "nn::gpio::OpenMode". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || None |
| + | |- |
| + | | 1 || Read |
| + | |- |
| + | | 2 || Write |
| + | |- |
| + | | 3 || ReadWrite |
| |} | | |} |
| | | |
Line 724: |
Line 913: |
| ! Value || Name || DeviceCode || Port:Addr || Is10bit || Speed || Max Retries || Retry Delay || Description || Used by (services) || Used by (hardware) | | ! Value || Name || DeviceCode || Port:Addr || Is10bit || Speed || Max Retries || Retry Delay || Description || Used by (services) || Used by (hardware) |
| |- | | |- |
− | | 0 || ClassicController || 0x350000C9 || 0:52 || N || 100000 || 0 || 0 || DebugPad Driver || [[HID services]] || Icosa, Iowa, Unknown | + | | 0 || ClassicController || 0x350000C9 || 0:52 || N || 100000 || 0 || 0 || DebugPad Driver || [[HID services]] || Icosa, Iowa, Aula |
| |- | | |- |
− | | 1 || Ftm3bd56 || 0x35000033 || 2:49 || N || 400000 || 0 || 0 || TouchPanel || [[HID services]] || Icosa, Hoag, Iowa, Unknown | + | | 1 || Ftm3bd56 || 0x35000033 || 2:49 || N || 400000 || 0 || 0 || TouchPanel || [[HID services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 2 || Tmp451 || 0x3E000001 || 0:4C || N || 100000 || 0 || 0 || Temperature Sensor || [[PTM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 2 || Tmp451 || 0x3E000001 || 0:4C || N || 100000 || 0 || 0 || Temperature Sensor || [[PTM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 3 || Nct72 || 0x3E000001 || 0:4C || N || 100000 || 0 || 0 || Temperature Sensor || [[PTM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 3 || Nct72 || 0x3E000001 || 0:4C || N || 100000 || 0 || 0 || Temperature Sensor || [[PTM services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | 4 || Alc5639 || 0x33000001 || 0:1C || N || 100000 || 0 || 0 || Audio Codec || [[Audio services]], [[Fatal services]] || Icosa, Hoag, Iowa, Unknown | + | | 4 || Alc5639 || 0x33000001 || 0:1C || N || 100000 || 0 || 0 || Audio Codec || [[Audio services]], [[Fatal services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
| | 5 || Max77620Rtc || 0x3B000001 || 4:68 || N || 400000 || 3 || 5000000 || PMIC RTC || [[PCV services]] || Icosa, Copper | | | 5 || Max77620Rtc || 0x3B000001 || 4:68 || N || 400000 || 3 || 5000000 || PMIC RTC || [[PCV services]] || Icosa, Copper |
Line 742: |
Line 931: |
| | 8 || Max77621Gpu || 0x3A000004 || 4:1C || N || 400000 || 3 || 5000000 || Sub-PMIC for GPU || [[PCV services]] || Icosa, Copper | | | 8 || Max77621Gpu || 0x3A000004 || 4:1C || N || 400000 || 3 || 5000000 || Sub-PMIC for GPU || [[PCV services]] || Icosa, Copper |
| |- | | |- |
− | | 9 || Bq24193 || 0x39000001 || 0:6B || N || 100000 || 3 || 5000000 || Charger IC || [[PTM services]] || Icosa, Hoag, Iowa, Unknown | + | | 9 || Bq24193 || 0x39000001 || 0:6B || N || 100000 || 3 || 5000000 || Charger IC || [[PTM services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 10 || Max17050 || 0x39000033 || 0:36 || N || 100000 || 3 || 5000000 || Fuel Gauge IC || [[PTM services]], [[PCV services]] || Icosa, Hoag, Iowa, Unknown | + | | 10 || Max17050 || 0x39000033 || 0:36 || N || 100000 || 3 || 5000000 || Fuel Gauge IC || [[PTM services]], [[PCV services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
− | | 11 || Bm92t30mwv || 0x040000C9 || 0:18 || N || 100000 || 3 || 5000000 || USB-PD controller || [[USB services]] || Icosa, Copper, Hoag, Iowa, Calcio, Unknown | + | | 11 || Bm92t30mwv || 0x040000C9 || 0:18 || N || 100000 || 3 || 5000000 || USB-PD controller || [[USB services]] || Icosa, Copper, Hoag, Iowa, Calcio, Aula |
| |- | | |- |
| | 12 || Ina226Vdd15v0Hb || 0x3F000401 || 1:40 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory | | | 12 || Ina226Vdd15v0Hb || 0x3F000401 || 1:40 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory |
Line 760: |
Line 949: |
| | 17 || Ina226VsysBlDs || 0x3F000403 || 1:47 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory | | | 17 || Ina226VsysBlDs || 0x3F000403 || 1:47 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory |
| |- | | |- |
− | | 18 || Bh1730 || 0x35000047 || 1:29 || N || 400000 || 3 || 5000000 || Ambient Light Sensor || [[Backlight services]] || Icosa, Hoag, Iowa, Unknown | + | | 18 || Bh1730 || 0x35000047 || 1:29 || N || 400000 || 3 || 5000000 || Ambient Light Sensor || [[Backlight services]] || Icosa, Hoag, Iowa, Aula |
| |- | | |- |
| | 19 || Ina226VsysCore or Ina226VddCoreAp (SdevMariko) || 0x3F000404 || 1:48 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory | | | 19 || Ina226VsysCore or Ina226VddCoreAp (SdevMariko) || 0x3F000404 || 1:48 || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory |
Line 772: |
Line 961: |
| | 23 || Ina226Vdd3V3Sys || 0x3F000408 || 1:4D || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory | | | 23 || Ina226Vdd3V3Sys || 0x3F000408 || 1:4D || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory |
| |- | | |- |
− | | [2.0.0+] 24 || || 0x34000001 || 3:50 || N || 100000 || 0 || 0 || HDMI DDC || [[NV services]] || Copper, Calcio | + | | [2.0.0+] 24 || HdmiDdc || 0x34000001 || 3:50 || N || 100000 || 0 || 0 || HDMI DDC || [[NV services]] || Copper, Calcio |
| |- | | |- |
− | | [2.0.0+] 25 || || 0x34000002 || 3:54 || N || 100000 || 0 || 0 || HDMI SCDC || [[NV services]] || Copper, Calcio | + | | [2.0.0+] 25 || HdmiScdc || 0x34000002 || 3:54 || N || 100000 || 0 || 0 || HDMI SCDC || [[NV services]] || Copper, Calcio |
| |- | | |- |
− | | [2.0.0+] 26 || || 0x34000003 || 3:3A || N || 100000 || 0 || 0 || HDMI HDCP || [[NV services]] || Copper, Calcio | + | | [2.0.0+] 26 || HdmiHdcp || 0x34000003 || 3:3A || N || 100000 || 0 || 0 || HDMI HDCP || [[NV services]] || Copper, Calcio |
| |- | | |- |
− | | [4.0.0+] 27 || Fan53528 || 0x3A000005 || 4:52 ([4.0.0-8.0.0] 4:A4) || N || 400000 || 0 || 0 || Buck Regulator || || Hoag, Iowa, Calcio, Unknown | + | | [4.0.0+] 27 || Fan53528 || 0x3A000005 || 4:52 ([4.0.0-8.0.0] 4:A4) || N || 400000 || 0 || 0 || RAM Regulator (tied to Max77812Pmic) || || Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | [4.0.0+] 28 || Max77812Pmic || 0x3A000002 || 4:31 ([8.0.0-9.2.0] 4:33, [4.0.0-8.0.0] 4:31) || N || 400000 || 0 || 0 || PMIC || [[PCV services]] || Hoag, Iowa, Calcio, Unknown | + | | [4.0.0+] 28 || Max77812Pmic || 0x3A000002 || 4:31 ([8.0.0-9.2.0] 4:33, [4.0.0-8.0.0] 4:31) || N || 400000 || 0 || 0 || Sub-PMIC for CPU and GPU (tied to Fan53528) (Phase 31) || [[PCV services]] || Hoag, Iowa, Calcio, Aula |
| |- | | |- |
− | | [4.0.0+] 29 || Max77812Pmic || 0x3A000006 ([4.0.0-9.2.0] 0x3A000002) || 4:33 ([4.0.0-8.0.0] 4:31) || N || 400000 || 0 || 0 || PMIC || [[PCV services]] || Hoag, Iowa, Calcio, Unknown | + | | [4.0.0+] 29 || Max77812Pmic || 0x3A000006 ([4.0.0-9.2.0] 0x3A000002) || 4:33 ([4.0.0-8.0.0] 4:31) || N || 400000 || 0 || 0 || Sub-PMIC for GPU, CPU and RAM (Phase 211) || [[PCV services]] || Hoag, Iowa, Calcio, Aula |
| |- | | |- |
| | [4.0.0+] 30 || Ina226VddDdr0V6 (SdevMariko) || 0x3F000409 || 1:4E || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory | | | [4.0.0+] 30 || Ina226VddDdr0V6 (SdevMariko) || 0x3F000409 || 1:4E || N || 400000 || 3 || 5000000 || Power Monitor || nvdbgsvc || Factory |
| |- | | |- |
− | | [8.0.0+] 31 || || 0x36000001 || 1:08 || N || 400000 || 3 || 5000000 || NFC IC || [[NFC services]] || Hoag | + | | [8.0.0+] 31 || (MillauNfc) || 0x36000001 || 1:08 || N || 400000 || 3 || 5000000 || NFC Controller || [[NFC services]] || Hoag |
| + | |- |
| + | | [12.0.0+] - || (Max77801) || 0x3A000007 || 4:18 || N || 400000 || 0 || 0 || Audio Codec (ALC5639) Regulator || [[PCV services]] || Aula |
| |} | | |} |
| | | |
Line 868: |
Line 1,059: |
| | 3 || UART-C || 0x03000003 || 0x3500040F || Joy-Con(L) | | | 3 || UART-C || 0x03000003 || 0x3500040F || Joy-Con(L) |
| |- | | |- |
− | | 4 || UART-C || 0x03000003 || 0x35000419 || MCU | + | | 4 || UART-C || 0x03000003 || 0x35000419 || SioMcu |
| |} | | |} |
| | | |
Line 938: |
Line 1,129: |
| ! Value || Description | | ! Value || Description |
| |- | | |- |
− | | 0 || GPIO(G, 0) and GPIO(G, 3) | + | | 0 || ExtConUartB |
| |- | | |- |
− | | 1 || GPIO(D, 1) and GPIO(D, 4) | + | | 1 || ExtConUartC |
| |- | | |- |
− | | 2 || Sdmmc1Clk or GPIO(M, 0), GPIO(M, 1), GPIO(M, 2), GPIO(M, 3), GPIO(M, 4) and GPIO(M, 5) | + | | 2 || Sdmmc1 |
| |- | | |- |
− | | 3 || GPIO(V, 4) | + | | 3 || PwmFan |
| |- | | |- |
| | 100 || Invalid | | | 100 || Invalid |
Line 964: |
Line 1,155: |
| | 3 || Invalid | | | 3 || Invalid |
| |- | | |- |
− | | 100 || Uart4Tx, Uart4Rx, Uart4Rts and Uart4Cts | + | | 100 || UartD |
| + | |} |
| + | |
| + | = PinAssignment = |
| + | This is "nn::pinmux::PinAssignment". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 0 || ExtConUartOutputEnable |
| + | |- |
| + | | 1 || ExtConUartOutputHiZ |
| + | |- |
| + | | 2 || Sdmmc1OutputHigh |
| + | |- |
| + | | 3 || Sdmmc1ResetState |
| + | |- |
| + | | 4 || Sdmmc1SchmtEnable |
| + | |- |
| + | | 5 || Sdmmc1SchmtDisable |
| + | |- |
| + | | 6 || PwmFanEnable |
| + | |- |
| + | | 7 || PwmFanHiZ |
| + | |} |
| + | |
| + | = PinAssignmentForHardwareTest = |
| + | This is "nn::pinmux::PinAssignmentForHardwareTest". |
| + | |
| + | {| class="wikitable sortable" border="1" |
| + | |- |
| + | ! Value || Name |
| + | |- |
| + | | 100 || UartDHiZ |
| + | |- |
| + | | 101 || UartDEnable |
| |} | | |} |
| | | |
Line 972: |
Line 1,199: |
| ! Value || Name || DeviceCode || Description | | ! Value || Name || DeviceCode || Description |
| |- | | |- |
− | | 0 || SPI4 || 0x3500003D || Joy-Con | + | | 0 || SPI4 || 0x3500003D || Lsm6ds3 (WHOAMI 0x69, 0x6A and 0x6C) |
| + | |- |
| + | | [10.0.0+] 1 || SPI4 || 0x3500003D || Icm40607 (WHOAMI 0x38) |
| + | |- |
| + | | [13.0.0+] 2 || SPI4 || 0x3500003D || Icm42607p (WHOAMI 0x60) |
| |} | | |} |
| | | |
| [[Category:Services]] | | [[Category:Services]] |