summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/hid/hid.cpp21
-rw-r--r--src/core/hle/service/hid/hid.h1
2 files changed, 21 insertions, 1 deletions
diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp
index 36162ac97..eba44eda8 100644
--- a/src/core/hle/service/hid/hid.cpp
+++ b/src/core/hle/service/hid/hid.cpp
@@ -357,7 +357,7 @@ Hid::Hid(Core::System& system_)
357 {1000, &Hid::SetNpadCommunicationMode, "SetNpadCommunicationMode"}, 357 {1000, &Hid::SetNpadCommunicationMode, "SetNpadCommunicationMode"},
358 {1001, &Hid::GetNpadCommunicationMode, "GetNpadCommunicationMode"}, 358 {1001, &Hid::GetNpadCommunicationMode, "GetNpadCommunicationMode"},
359 {1002, &Hid::SetTouchScreenConfiguration, "SetTouchScreenConfiguration"}, 359 {1002, &Hid::SetTouchScreenConfiguration, "SetTouchScreenConfiguration"},
360 {1003, nullptr, "IsFirmwareUpdateNeededForNotification"}, 360 {1003, &Hid::IsFirmwareUpdateNeededForNotification, "IsFirmwareUpdateNeededForNotification"},
361 {2000, nullptr, "ActivateDigitizer"}, 361 {2000, nullptr, "ActivateDigitizer"},
362 }; 362 };
363 // clang-format on 363 // clang-format on
@@ -1798,6 +1798,25 @@ void Hid::SetTouchScreenConfiguration(Kernel::HLERequestContext& ctx) {
1798 rb.Push(ResultSuccess); 1798 rb.Push(ResultSuccess);
1799} 1799}
1800 1800
1801void Hid::IsFirmwareUpdateNeededForNotification(Kernel::HLERequestContext& ctx) {
1802 IPC::RequestParser rp{ctx};
1803 struct Parameters {
1804 s32 unknown;
1805 INSERT_PADDING_WORDS_NOINIT(1);
1806 u64 applet_resource_user_id;
1807 };
1808 static_assert(sizeof(Parameters) == 0x10, "Parameters has incorrect size.");
1809
1810 const auto parameters{rp.PopRaw<Parameters>()};
1811
1812 LOG_WARNING(Service_HID, "(STUBBED) called, unknown={}, applet_resource_user_id={}",
1813 parameters.unknown, parameters.applet_resource_user_id);
1814
1815 IPC::ResponseBuilder rb{ctx, 3};
1816 rb.Push(ResultSuccess);
1817 rb.Push(false);
1818}
1819
1801class HidDbg final : public ServiceFramework<HidDbg> { 1820class HidDbg final : public ServiceFramework<HidDbg> {
1802public: 1821public:
1803 explicit HidDbg(Core::System& system_) : ServiceFramework{system_, "hid:dbg"} { 1822 explicit HidDbg(Core::System& system_) : ServiceFramework{system_, "hid:dbg"} {
diff --git a/src/core/hle/service/hid/hid.h b/src/core/hle/service/hid/hid.h
index e61f8ed08..1be04c22b 100644
--- a/src/core/hle/service/hid/hid.h
+++ b/src/core/hle/service/hid/hid.h
@@ -166,6 +166,7 @@ private:
166 void SetNpadCommunicationMode(Kernel::HLERequestContext& ctx); 166 void SetNpadCommunicationMode(Kernel::HLERequestContext& ctx);
167 void GetNpadCommunicationMode(Kernel::HLERequestContext& ctx); 167 void GetNpadCommunicationMode(Kernel::HLERequestContext& ctx);
168 void SetTouchScreenConfiguration(Kernel::HLERequestContext& ctx); 168 void SetTouchScreenConfiguration(Kernel::HLERequestContext& ctx);
169 void IsFirmwareUpdateNeededForNotification(Kernel::HLERequestContext& ctx);
169 170
170 std::shared_ptr<IAppletResource> applet_resource; 171 std::shared_ptr<IAppletResource> applet_resource;
171 172