mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2024-12-22 20:31:14 +00:00
exo: add config item for rcm patch detection (note TODO)
This commit is contained in:
parent
fd4d6a4e55
commit
4d76f4d79c
4 changed files with 14 additions and 0 deletions
|
@ -264,6 +264,10 @@ uint32_t configitem_get(bool privileged, ConfigItem item, uint64_t *p_outvalue)
|
|||
/* UNOFFICIAL: Gets information about the current exosphere git commit hash. */
|
||||
*p_outvalue = ATMOSPHERE_RELEASE_VERSION_HASH;
|
||||
break;
|
||||
case CONFIGITEM_HAS_RCM_BUG_PATCH:
|
||||
/* UNOFFICIAL: Gets whether this unit has the RCM bug patched. */
|
||||
*p_outvalue = (int)(fuse_has_rcm_bug_patch());;
|
||||
break;
|
||||
default:
|
||||
result = 2;
|
||||
break;
|
||||
|
|
|
@ -44,6 +44,7 @@ typedef enum {
|
|||
CONFIGITEM_NEEDS_REBOOT = 65001,
|
||||
CONFIGITEM_NEEDS_SHUTDOWN = 65002,
|
||||
CONFIGITEM_EXOSPHERE_VERHASH = 65003,
|
||||
CONFIGITEM_HAS_RCM_BUG_PATCH = 65004,
|
||||
} ConfigItem;
|
||||
|
||||
#define REBOOT_KIND_NO_REBOOT 0
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
#include "exocfg.h"
|
||||
|
||||
#include "masterkey.h"
|
||||
|
||||
/* Prototypes for internal commands. */
|
||||
void fuse_make_regs_visible(void);
|
||||
|
||||
|
@ -257,3 +258,9 @@ void fuse_get_hardware_info(void *dst) {
|
|||
|
||||
memcpy(dst, hw_info, 0x10);
|
||||
}
|
||||
|
||||
bool fuse_has_rcm_bug_patch(void) {
|
||||
/* Patched units have this bit set in reserved_sw, according to reports. */
|
||||
/* TODO: Is there an ipatch we should check? This should be researched. */
|
||||
return (FUSE_CHIP_REGS->FUSE_RESERVED_SW & 0x80) != 0;
|
||||
}
|
||||
|
|
|
@ -215,4 +215,6 @@ uint32_t fuse_get_hardware_type(void);
|
|||
uint32_t fuse_get_retail_type(void);
|
||||
void fuse_get_hardware_info(void *dst);
|
||||
|
||||
bool fuse_has_rcm_bug_patch(void);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue