News for hackers. Stuff that matters.
Re:How the Nintendo Switch prevents downgrades by irreparabl... by outadoc on Tuesday June 16, 2020 @03:43AM (#23536835)
I'm unclear on how these hardware fuses actually work. Are they actual fuses that can be burnt on will by excessive power?

When the article says:

> The boot loader verifies a specific fuse, FUSE_RESERVED_ODM7, to prevent downgrading. Each software version expects a different number of fuses to be blown [...]

Does this mean FUSE_RESERVED_ODM7 actually contains multiple fuses?

Re:How the Nintendo Switch prevents downgrades by irreparabl... by arghwhat on Tuesday June 16, 2020 @04:15AM (#23536958)
"Fuses" in this context are just non-volatile memory that cannot be reset. Once a bit is set to 1, it stays there. They're often used for configuration and for things like sealing off programming/readout on microcontrollers.

FUSE_RESERVED_ODM7 is 32 bits wide, hence contains "32 fuses". The system has many fuses, but 256 bits (RESERVED_ODM0-RESERVED_ODM7) are for the device manufacturers to use for their own purpose, which is what Nintendo is doing here.

Re:How the Nintendo Switch prevents downgrades by irreparabl... by londons_explore on Tuesday June 16, 2020 @06:31AM (#23537553)
On some chips they are literally bits of polysilicon that burn. On most devices they're flash memory that doesn't have any circuitry to do erases.
Re:How the Nintendo Switch prevents downgrades by irreparabl... by marcan_42 on Tuesday June 16, 2020 @08:20AM (#23538247)
You're thinking microcontrollers with flash. This is not one of those.

Modern high performance CPUs/SoCs do not contain flash, ever (the processes are incompatible). When we talk about SoC fuses, we mean real fuses (or antifuses), not the Flash "fuses" of some microcontrollers (which can be erased with UV light).

Actual technologies vary. It could be fuses (metal, polysilicon, or other) or antifuses (e.g. gate oxide breakdown, "blown" means it conducts), but they're all irreversible.

Re:How the Nintendo Switch prevents downgrades by irreparabl... by pjc50 on Tuesday June 16, 2020 @04:52AM (#23537145)
They are the same concept, yes, but implemented in silicon; this short paper shows how it works with diagrams and a microscope photo. https://people.maths.ox.ac.uk/fowler/papers/2010.6.pdf
Re:How the Nintendo Switch prevents downgrades by irreparabl... by ThePowerOfFuet on Tuesday June 16, 2020 @04:08AM (#23536926)
> I'm unclear on how these hardware fuses actually work. Are they actual fuses that can be burnt on will by excessive power?

No, they're not like the fuses in your house. These can be blown by software to irrevocably change something which can then be verified later, or in other cases to prevent reprogramming of a microcontroller (which can be programmed only if the programming fuse is still intact.

>Does this mean FUSE_RESERVED_ODM7 actually contains multiple fuses?

No, that's the name of one fuse. Once you upgrade the device next time, the upgrade tool would, for example, blow FUSE_RESERVED_ODM8; older software would verify that this fuse (and the higher-numbered ones) are NOT blown, and refuse to boot otherwise.

Re:How the Nintendo Switch prevents downgrades by irreparabl... by arghwhat on Tuesday June 16, 2020 @04:17AM (#23536966)
> No, that's the name of one fuse.

No, it's a 32-bit segment belonging to the 256-bit odm_reserved segment. FUSE_RESERVED_ODM7 is specifically the last 32-bit segment.

Some fuse information can be read here: https://docs.nvidia.com/jetson/archives/l4t-archived/l4t-323....

Re:How the Nintendo Switch prevents downgrades by irreparabl... by outadoc on Tuesday June 16, 2020 @04:12AM (#23536940)
Thanks! Definitely more clear.