Nvnflinger services: Difference between revisions
Document the specifics of the type parameter for AdjustRefcount |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 15: | Line 15: | ||
| 2 || [[#GetNativeHandle]] | | 2 || [[#GetNativeHandle]] | ||
|- | |- | ||
| 3 || [[#TransactParcelAuto]] | | 3 || [3.0.0+] [[#TransactParcelAuto]] | ||
|} | |} | ||
Line 22: | Line 22: | ||
Command(s) from here are constantly used while displaying gfx. | Command(s) from here are constantly used while displaying gfx. | ||
TransactParcel is used by 1.0.0 official user-processes, while starting with | TransactParcel is used by 1.0.0 official user-processes, while starting with 3.0.0 TransactParcelAuto is used instead. | ||
For IHOSBinderDriver, the below '''ID''' is loaded from the layer's [[Display_services#NativeWindow]]. | |||
== TransactParcel == | == TransactParcel == | ||
Takes a s32 ( | Takes a s32 ('''ID'''), an u32 ('''code'''), a type-0x5 input buffer ('''parcel_data'''), a type-0x6 output buffer ('''parcel_reply''') and an input u32 ('''flags'''). Each word is placed immediately after the previous word. | ||
Analogous to "onTransact" from "android.os.IServiceManager". | Analogous to "onTransact" from "android.os.IServiceManager". | ||
== AdjustRefcount == | == AdjustRefcount == | ||
Takes 3 input s32s: | |||
Takes 3 input s32s: '''ID''', '''addval''', and '''type'''. Each word immediately follows the previous word. No additional output. | |||
'''type''' indicates whether the strong reference count or weak reference count will be affected. 0 indicates the weak reference count, while 1 indicates the strong reference count. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 50: | Line 55: | ||
== GetNativeHandle == | == GetNativeHandle == | ||
Takes an input s32 and u32, with the latter immediately following the previous word. Returns an output event handle. | Takes an input s32 ('''ID''') and u32, with the latter immediately following the previous word. Returns an output event handle. | ||
== TransactParcelAuto == | == TransactParcelAuto == | ||
Takes a s32 ( | Takes a s32 ('''ID'''), an u32 ('''code'''), a type-0x21 input buffer ('''parcel_data'''), a type-0x22 output buffer ('''parcel_reply''') and an input u32 ('''flags'''). Each word is placed immediately after the previous word. | ||
[[Category:Services]] |