Liam
0c15ac5084
nvnflinger: correct swap interval handling
3 years ago
bunnei
1bd2034592
Revert "Revert "k_page_group: synchronize""
3 years ago
german77
011f49a00b
service: nifm: Initialize request state
3 years ago
german77
991ea9ab41
service: nifm: Match documentation names
3 years ago
gidoly
118d57a8f0
Revert "k_page_group: synchronize"
3 years ago
ameerj
ddbee432b2
hle_ipc: Use thread_local ReadBuffer
3 years ago
ameerj
713394d526
hle_ipc: Rename ReadBufferSpan to ReadBuffer
3 years ago
ameerj
571d469697
hle_ipc: Rename ReadBuffer to ReadBufferCopy
Indicates explicitly that a copy is occurring
3 years ago
ameerj
53650d2701
bsd: Use std::span for read payloads
Allows the use of HLERequestContext::ReadBufferSpan
3 years ago
ameerj
8a59719bd2
nvdrv: Use std::span for inputs
Allows the use of HLERequestContext::ReadBufferSpan
3 years ago
ameerj
de252703bd
hidbus: Use ReadBufferSpan
3 years ago
ameerj
4531881bfd
nvflinger: Split Parcel class into InputParcel and OutputParcel
The usages of the Parcel class were already unique to either Read or Write operations.
Avoids needing a vector of the input payload for the InputParcel use-case, instead it can remain as a span.
3 years ago
ameerj
db9a523aae
service: Use ReadBufferSpan where it is trivial to do so
3 years ago
Liam
b4504fdd19
k_page_table: remove HACK_OpenPages/ClosePages
3 years ago
ameerj
399b6d3a0c
fsp_srv: Use ReadBufferSpan
3 years ago
ameerj
e17c343915
hle_ipc: Add ReadBufferSpan function
Returns a std::span to the buffer address, rather than create a copy of the memory into a std::vector
3 years ago
Liam
4b9df26091
k_page_group: synchronize
3 years ago
Liam
71ec5c9519
kernel: workaround static shared memory initialization
3 years ago
Liam
f1528eb549
time: add LockFreeAtomicType
3 years ago
Liam
8df44232e8
kernel: remove TimeManager
3 years ago
Liam
49d1cf6477
kernel: add KHardwareTimer
3 years ago
german77
8a90856b25
service: nfc: Silence ListDevices
3 years ago
ameerj
c57883f1bc
hle_ipc: Refactor ReadBuffer to set buffer size upon initialization
Initializing the vector size during initialization is more efficient than a later call to resize()
3 years ago
ameerj
333fd1165a
hle_ipc: Reserve vectors before populating
3 years ago
Narr the Reg
dfe49436c8
kernel: svc: Fix duplicated InfoType enum
3 years ago
Narr the Reg
464b7a9ee2
kernel: process: Implement GetFreeThreadCount
Used by Just Dance® 2023 Edition
3 years ago
bunnei
572d81508b
Revert "hle: service: audio: Use default service thread."
3 years ago
Chloe Marcec
27a7d5a11a
Set: Allow setting device nickname
3 years ago
Salvage
a4369e6175
Remove the lock entirely as per PR discussion
Correctly unlock mutex before its destruction
As per https://en.cppreference.com/w/cpp/thread/mutex/~mutex destroying a locked mutex is undefined behavior and MSVC++ decides to throw in this case
Swap out unique for scoped lock and readd comment
3 years ago
Liam
08d81c9726
general: improve handling of system startup failure
3 years ago
Lioncash
7ed6f9d6fd
kernel/k_shared_memory: Ensure device_memory is always initialized
3 years ago
Lioncash
0435142f58
kernel/k_memory_block: Ensure members are always initialized
3 years ago
Lioncash
4c5de31093
kernel/physical_core: Ensure is_interrupted is always initialized
3 years ago
Lioncash
6fea145402
kernel/thread: Ensure stack_top and argument are always initialized
3 years ago
Lioncash
8b8320be4a
kernel/kernel: Ensure shutdown threads are always initialized
3 years ago
Liam
4a65ee47d3
service_thread: fix uninitialized memory usage
3 years ago
Narr the Reg
dbfc2f7ee2
service: nfc: Implement mifare service
4 years ago
Morph
7ba644dc5d
service: nifm: Update stubs for Submit/GetRequestState/GetResult
3 years ago
Lioncash
ccec899cd8
producer_listener: Add virtual destructor to IProducerListener
Several member variables are shared_ptr's to this base class. Even
though producer listeners are still unimplemented, this ensures we
always have consistent deletion behavior once this ends up being used
polymorphically.
3 years ago
Lioncash
93f287c79b
buffer_item_consumer: Pass fence by const-ref in ReleaseBuffer()
This isn't directly modified.
Also allows rvalues to be used with it.
3 years ago
Lioncash
7d9d432ff4
buffer_queue_consumer: std::move std::shared_ptr in Connect()
Avoids an unnecessary reference count increment and decrement
3 years ago
Lioncash
f5def4b9c5
consumer_base: Pass shared_ptr by const reference
Avoids churning atomic reference count increments and decrements.
3 years ago
Lioncash
bde42f6767
consumer_base: Remove redundant virtual
override already serves this purpose
3 years ago
Lioncash
eb1bdc5ed4
syncpoint_manager: Mark IsSyncpointAllocated() as const
This doesn't modify class state at all.
3 years ago
Lioncash
8409b91f2e
syncpoint_manager: Reduce number of bounds checks
The only time we need to check bounds is on the first access.
3 years ago
Lioncash
e621ee9ec6
nvdrv: Simplify builder declarations
We can just use auto here. If one of these ever happens to not be
derived from nvdevice, then this will cause a compilation error.
We can also move the devices into the collection to get rid of an
unnecessary atomic reference count increment and decrement.
3 years ago
Lioncash
8c35c8c4a6
service: Make use of buffer element count helpers
3 years ago
Lioncash
ff19204dc6
hle_ipc: Add helper functions for getting number of buffer elements
3 years ago
Lioncash
ce329764a2
hle_ipc: Mark relevant member functions as [[nodiscard]]
Will allow the compiler to complain about cases where ignoring the
return value would be a bug.
3 years ago
Liam
5a712bb51a
general: fix compile for Apple Clang
4 years ago