Commit Graph

77 Commits

Author SHA1 Message Date
plutooo
4a13ee3e62 Fix function name to not cause linker problems due to symbol truncation issues 2018-09-15 08:42:32 +02:00
plutooo
7279ef0415 Fix signature of svcContinueDebugEvent for firmware 3.0.0 and forward 2018-09-15 08:14:09 +02:00
fincs
ad17cb74c7 kernel/ipc.h: add ipcCloneSession 2018-09-14 01:35:24 +02:00
Michael Scire
6ef26bff1a Implement kernelAbove600() 2018-09-09 19:55:12 +02:00
fincs
88e9d3bb83 kernel/event.h: several fixes, including autoclear support 2018-08-31 13:05:22 +02:00
Juan Antonio Hernández Cánovas
377683acd5 Add rwlockInit (#155) 2018-08-24 16:20:01 +02:00
fincs
9fa3873fc9 Fix comments in svc.h & thread.h 2018-08-06 17:58:31 +02:00
fincs
1e349b6ce8 Change CondVar API to have the mutex be passed to condvarWait* instead of condvarInit 2018-08-05 14:31:31 +02:00
fincs
062ef2b188 Add svcGetThreadCoreMask and svcSetThreadCoreMask 2018-08-05 14:30:08 +02:00
plutooo
9fc5e85c88 Event bringup 2018-08-05 13:23:08 +02:00
Kevoot
fbe2c1f2ce Add Semaphore (#125) 2018-07-01 00:45:41 +02:00
fincs
a9c0b213ff Add missing #pragma once to kernel/condvar.h 2018-06-26 13:12:44 +02:00
Michael Scire
9770f4bb18 Implement svcGetThreadList 2018-06-25 11:18:07 -04:00
Michael Scire
481d27d1f1 Implement svcGetDebugThreadParam 2018-06-25 11:18:07 -04:00
SciresM
773ff46543 Improve IpcParsedCommand domain message info. (#112)
* Improve IpcParsedCommand domain message info.
2018-06-25 11:08:48 -04:00
yellows8
b11288ea44 In jitTransitionToWritable() and jitTransitionToExecutable(), only run the JitType_CodeMemory handling code when it's actually needed. Actually free j->rx_addr in jitClose() for JitType_JitMemory. 2018-05-21 16:59:49 -04:00
yellows8
a12eb11eab Sync jit SVC names with wiki + updated the comment for JitType_JitMemory in jit.h. 2018-05-21 14:32:02 -04:00
yellows8
05cde6649b Updated svcGetDebugEvent and svcContinueDebugEvent in svc.h. 2018-05-14 12:51:06 -04:00
yellows8
02ff4915d9 Initialize cmdreq buf[1] in ipcCloseSession(). 2018-05-11 11:25:46 -04:00
fincs
6bc917fae2 ipc.h: don't implicitly cast int to BufferType 2018-05-09 02:44:40 +02:00
TuxSH
635599491c Add ipcAddSendSmart, ipcAddRecvSmart, use where applicable 2018-05-08 16:17:13 -04:00
Michael Scire
ef47389228 Implement svcMap/UnmapPhysicalMemory(Unsafe), svcSetUnsafeLimit 2018-05-07 14:03:27 +02:00
Michael Scire
8496264811 Fix definition for svcCreateEvent 2018-05-07 13:54:23 +02:00
SciresM
0ac5743c1f Add ResourceLimit SVCs, svcGetProcessInfo (#76) 2018-05-04 00:59:17 +02:00
hexkyz
b2b8e1ec67 Implement more SVCs (#74)
Implement svcSetThreadPriority.
Implement svcGetCurrentProcessorNumber.
Implement svcSignalEvent.
Implement svcSendSyncRequestWithUserBuffer.
Implement svcSendAsyncRequestWithUserBuffer.
Implement svcGetThreadId.
Implement svcReplyAndReceiveWithUserBuffer.
Implement svcCreateEvent.
Implement svcReadWriteRegister.
Implement svcCreateInterruptEvent.
Implement svcMapDeviceAddressSpaceByForce.
Implement svcTerminateProcess.
Fix svcMapDeviceAddressSpaceAligned.
Fix svcUnmapDeviceAddressSpace.
2018-04-30 00:43:52 +02:00
SciresM
d5bce6b0a6 Implement svcCreatePort. (#73)
* Implement svcCreatePort
* Implement svcConnectToPort
* Implement svcUnmapProcessMemory
* Implement svcGetSystemInfo
2018-04-24 18:33:46 -04:00
SciresM
f40f544a07 IPC: Improve information available in IpcParsedCommand (#72)
* IPC: Add C descriptor support to IpcParsedCommand

* Add Command Type to IpcParsedCommand

* Replace constants with IpcCommandType where relevant.

* Add RawWithoutPadding pointer, required for serverside deserialization calculations.
2018-04-22 01:14:46 +02:00
Michael Scire
b18854555a IPC: Fix incorrect parsing of X descriptor addresses 2018-04-22 01:13:49 +02:00
plutoo
6c72bf8273 Detect 5.0.0 properly 2018-03-23 19:01:09 +01:00
cpasjuste
4677266d53 ipc.h: fix BufferType invalid conversion (c++) 2018-03-14 13:34:00 +01:00
plutoo
e112ab6968 Fix ipc session close race properly 2018-03-11 13:21:36 +01:00
plutoo
1dfb1beafb Ipc bugfix 2018-03-10 17:49:17 +01:00
plutoo
d54db1ac16 Includefix 2018-03-10 14:05:14 +01:00
plutoo
d12e99e3ad Move ipc.h to kernel/ 2018-03-10 14:03:29 +01:00
plutoo
20f3e87d11 Change type of TryLock to bool 2018-02-28 18:22:28 +01:00
Jules Blok
e966f21800 mutex: Add TryLock() variants. 2018-02-28 18:00:03 +01:00
TuxSH
372021e226 Add missing include in tmem.h 2018-02-27 19:14:44 +01:00
fincs
6c79424f76 kernel/svc.h: Add descriptions/basic info for the rest of syscalls 2018-02-10 22:40:11 +01:00
fincs
521bc1c5c9 Document kernel/condvar.h 2018-02-10 22:40:11 +01:00
fincs
e295994dd2 Begin documenting kernel/svc.h. SVCs classified in categories. 2018-02-10 22:40:11 +01:00
fincs
e54aadfc84 kernel/svc.h: Add MemoryType, MemoryState, MemoryAttribute 2018-02-10 22:40:11 +01:00
fincs
c8f62d94a3 Documentation: address second batch of comments (#38) 2018-02-10 22:40:11 +01:00
fincs
c20d372946 Clean up types.h:
- Move Permission to kernel/svc.h (also fix enum naming)
- Add s128, vu128, vs128
- voidfn -> VoidFn
2018-02-10 22:40:11 +01:00
fincs
41da28eb5c Document kernel/: shmem.h, thread.h, tmem.h, virtmem.h 2018-02-10 22:40:11 +01:00
fincs
8496f36879 Documentation: address first batch of comments (in #38) 2018-02-10 22:40:11 +01:00
fincs
cbd367c8a0 Document kernel/: detect.h, jit.h, mutex.h, random.h, rwlock.h 2018-02-10 22:40:11 +01:00
fincs
ff472848a9 Start doxygen bringup, with some miscellaneous cleanup 2018-02-10 22:40:11 +01:00
plutoo
75003f40f1 Add some syscalls 2018-02-01 22:04:37 +01:00
plutoo
b2810ab38d Condvar stylefix 2018-01-31 02:22:28 +01:00
plutoo
000a7f05c9 Experimental implementation of condvars 2018-01-30 22:39:02 +01:00