diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/hle/service/hid/controllers/npad.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/service/hid/controllers/npad.h | 4 | ||||
| -rw-r--r-- | src/core/hle/service/hid/hid.cpp | 20 | ||||
| -rw-r--r-- | src/video_core/vulkan_common/vulkan_device.cpp | 2 | ||||
| -rw-r--r-- | src/video_core/vulkan_common/vulkan_memory_allocator.cpp | 2 |
5 files changed, 17 insertions, 15 deletions
diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp index ef4aec4ea..28818c813 100644 --- a/src/core/hle/service/hid/controllers/npad.cpp +++ b/src/core/hle/service/hid/controllers/npad.cpp | |||
| @@ -979,8 +979,8 @@ void Controller_NPad::VibrateController( | |||
| 979 | } | 979 | } |
| 980 | 980 | ||
| 981 | void Controller_NPad::VibrateControllers( | 981 | void Controller_NPad::VibrateControllers( |
| 982 | const std::vector<Core::HID::VibrationDeviceHandle>& vibration_device_handles, | 982 | std::span<const Core::HID::VibrationDeviceHandle> vibration_device_handles, |
| 983 | const std::vector<Core::HID::VibrationValue>& vibration_values) { | 983 | std::span<const Core::HID::VibrationValue> vibration_values) { |
| 984 | if (!Settings::values.vibration_enabled.GetValue() && !permit_vibration_session_enabled) { | 984 | if (!Settings::values.vibration_enabled.GetValue() && !permit_vibration_session_enabled) { |
| 985 | return; | 985 | return; |
| 986 | } | 986 | } |
diff --git a/src/core/hle/service/hid/controllers/npad.h b/src/core/hle/service/hid/controllers/npad.h index 9cfe298f1..776411261 100644 --- a/src/core/hle/service/hid/controllers/npad.h +++ b/src/core/hle/service/hid/controllers/npad.h | |||
| @@ -112,8 +112,8 @@ public: | |||
| 112 | const Core::HID::VibrationValue& vibration_value); | 112 | const Core::HID::VibrationValue& vibration_value); |
| 113 | 113 | ||
| 114 | void VibrateControllers( | 114 | void VibrateControllers( |
| 115 | const std::vector<Core::HID::VibrationDeviceHandle>& vibration_device_handles, | 115 | std::span<const Core::HID::VibrationDeviceHandle> vibration_device_handles, |
| 116 | const std::vector<Core::HID::VibrationValue>& vibration_values); | 116 | std::span<const Core::HID::VibrationValue> vibration_values); |
| 117 | 117 | ||
| 118 | Core::HID::VibrationValue GetLastVibration( | 118 | Core::HID::VibrationValue GetLastVibration( |
| 119 | const Core::HID::VibrationDeviceHandle& vibration_device_handle) const; | 119 | const Core::HID::VibrationDeviceHandle& vibration_device_handle) const; |
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp index 87e7b864a..2bf1d8a27 100644 --- a/src/core/hle/service/hid/hid.cpp +++ b/src/core/hle/service/hid/hid.cpp | |||
| @@ -1601,16 +1601,16 @@ void Hid::SendVibrationValues(HLERequestContext& ctx) { | |||
| 1601 | IPC::RequestParser rp{ctx}; | 1601 | IPC::RequestParser rp{ctx}; |
| 1602 | const auto applet_resource_user_id{rp.Pop<u64>()}; | 1602 | const auto applet_resource_user_id{rp.Pop<u64>()}; |
| 1603 | 1603 | ||
| 1604 | const auto handles = ctx.ReadBuffer(0); | 1604 | const auto handle_data = ctx.ReadBuffer(0); |
| 1605 | const auto vibrations = ctx.ReadBuffer(1); | 1605 | const auto handle_count = ctx.GetReadBufferNumElements<Core::HID::VibrationDeviceHandle>(0); |
| 1606 | 1606 | const auto vibration_data = ctx.ReadBuffer(1); | |
| 1607 | std::vector<Core::HID::VibrationDeviceHandle> vibration_device_handles( | 1607 | const auto vibration_count = ctx.GetReadBufferNumElements<Core::HID::VibrationValue>(1); |
| 1608 | handles.size() / sizeof(Core::HID::VibrationDeviceHandle)); | 1608 | |
| 1609 | std::vector<Core::HID::VibrationValue> vibration_values(vibrations.size() / | 1609 | auto vibration_device_handles = |
| 1610 | sizeof(Core::HID::VibrationValue)); | 1610 | std::span(reinterpret_cast<const Core::HID::VibrationDeviceHandle*>(handle_data.data()), |
| 1611 | 1611 | handle_count); | |
| 1612 | std::memcpy(vibration_device_handles.data(), handles.data(), handles.size()); | 1612 | auto vibration_values = std::span( |
| 1613 | std::memcpy(vibration_values.data(), vibrations.data(), vibrations.size()); | 1613 | reinterpret_cast<const Core::HID::VibrationValue*>(vibration_data.data()), vibration_count); |
| 1614 | 1614 | ||
| 1615 | applet_resource->GetController<Controller_NPad>(HidController::NPad) | 1615 | applet_resource->GetController<Controller_NPad>(HidController::NPad) |
| 1616 | .VibrateControllers(vibration_device_handles, vibration_values); | 1616 | .VibrateControllers(vibration_device_handles, vibration_values); |
diff --git a/src/video_core/vulkan_common/vulkan_device.cpp b/src/video_core/vulkan_common/vulkan_device.cpp index 6ffca2af2..161f050b8 100644 --- a/src/video_core/vulkan_common/vulkan_device.cpp +++ b/src/video_core/vulkan_common/vulkan_device.cpp | |||
| @@ -1009,6 +1009,8 @@ void Device::CollectPhysicalMemoryInfo() { | |||
| 1009 | device_access_memory += mem_properties.memoryHeaps[element].size; | 1009 | device_access_memory += mem_properties.memoryHeaps[element].size; |
| 1010 | } | 1010 | } |
| 1011 | if (!is_integrated) { | 1011 | if (!is_integrated) { |
| 1012 | const u64 reserve_memory = std::min<u64>(device_access_memory / 8, 1_GiB); | ||
| 1013 | device_access_memory -= reserve_memory; | ||
| 1012 | return; | 1014 | return; |
| 1013 | } | 1015 | } |
| 1014 | const s64 available_memory = static_cast<s64>(device_access_memory - device_initial_usage); | 1016 | const s64 available_memory = static_cast<s64>(device_access_memory - device_initial_usage); |
diff --git a/src/video_core/vulkan_common/vulkan_memory_allocator.cpp b/src/video_core/vulkan_common/vulkan_memory_allocator.cpp index 1732866e0..e28a556f8 100644 --- a/src/video_core/vulkan_common/vulkan_memory_allocator.cpp +++ b/src/video_core/vulkan_common/vulkan_memory_allocator.cpp | |||
| @@ -147,7 +147,7 @@ public: | |||
| 147 | 147 | ||
| 148 | /// Returns whether this allocation is compatible with the arguments. | 148 | /// Returns whether this allocation is compatible with the arguments. |
| 149 | [[nodiscard]] bool IsCompatible(VkMemoryPropertyFlags flags, u32 type_mask) const { | 149 | [[nodiscard]] bool IsCompatible(VkMemoryPropertyFlags flags, u32 type_mask) const { |
| 150 | return (flags & property_flags) == property_flags && (type_mask & shifted_memory_type) != 0; | 150 | return (flags & property_flags) == flags && (type_mask & shifted_memory_type) != 0; |
| 151 | } | 151 | } |
| 152 | 152 | ||
| 153 | private: | 153 | private: |