Don’t use CSM on your UEFI machine!

CSM, which is short for Compatibility Support Module, is a way of letting BIOS (Legacy) devices boot on your UEFI machine. If you have a problem with your UEFI, then a quick search will reveal tons of answers from people recommending to use this option, in case there is an issue with booting.

I will explain to you, why 950f the time you have booting issues it will not really “solve” anything to use CSM and sometimes (too often) it can make things worse and you wouldn’t even know without this article.

This is mainly addressing people using anything besides Windows 8/8.1/10. Especially if you experiment and tinker a lot with different Linux distributions, you most likely have come across some booting issue, already. This article focuses mainly on distributions that just recently got UEFI support (which may be buggy) or have a wonky distinction between BIOS and UEFI mode when you boot their live media to install them on your disk. I presume, that you know the advantages of UEFI and prefer to use it on as many OSes as possible. If you agree with that, surely this article should give you a good advice.

Why not use CSM or Legacy mode?

UEFI (GPT-dependent) is a great new system, that will be spread more and more due to its advantages which are future-proof while the BIOS (MBR-dependent) certainly isn’t. Therefore you want UEFI to be “active” for your OSes. This doesn’t work, if your UEFI decides to boot in Legacy mode due to “compatibility” reasons. Most OSes have already UEFI support today and keeping your UEFI in “Legacy/UEFI” mode, which let’s the system decide which one to choose, will almost certainly always choose the Legacy mode instead of UEFI even if that’s possible.

What is the difference between CSM and Legacy mode?

The so-called Legacy mode is another nickname for the BIOS usually within your modern UEFI. So if you have this enabled, everything will be booted in BIOS mode or if you have both enabled, then most likely everything will be booted also in BIOS mode. This sounds similar to CSM so why do I make this distinction? I do that simply, because CSM is even worse. With Legacy mode, you know exactly what you get. The old BIOS from old days, which is dependent on MBR partitioned bootable storage devices. With UEFI mode you obviously get the modern alternative. Simple. But with CSM it is more like this: “I want to boot everything in UEFI… Oh, wait, I don’t know if it works, so let’s just cut off the features of UEFI and let the devices boot in old fashion. Kind of.” – That’s what the UEFI would say, if it would talk about this topic. It’s less predictable, because it is just a module simulating the BIOS, but it’s not really the same. So results can differ. Therefore, if you truly need the old school BIOS, then just use Legacy mode. If you have a bootable GPT-based device, then just turn every Legacy and compatibility mode off, to certainly use UEFI.

Especially with some Linux distributions this can cause a lot of errors which can even lead to your installation not to work or not boot, at all.

How do I make sure that my devices get booted in UEFI mode?

This should be rather simple in any UEFI. Boot up your computer, enter the UEFI by pressing DEL, F1, F2 or F8. Now go to the Boot settings and change boot type (or whatever it is called on your system) to UEFI only . Disable Legacy mode and CSM. Usually the CSM switch is right below the UEFI only option and you can mark it with a yes or no. So mark it with a big fat NO.

If this setting is missing, your UEFI is probably actually a BIOS. But if you bought your mainboard (or stock computer) in the last 7 years, it has an extremely high chance of having a UEFI and therefore supports this setting, so just look through every menu category.

What if my old OS on my HDD only supports the old school mode?

Then do the same as explained above, but change from UEFI only to Legacy only. CSM should still be turned OFF, though luckily it obviously doesn’t work in Legacy mode, anyway.

If you needed to do this on a multi-boot system, where e.g. one OS is UEFI and the other one in BIOS mode, then it’s okay to set the UEFI setting to both, supporting UEFI and BIOS. The distinction here is much more important for live/installation media. Just don’t use CSM, that’s all.

Once my live medium is booted, how do I check if it’s booted in UEFI or BIOS mode?

Usually in BIOS mode the interfaces have a much lower resolution and the live medium’s menu can look pixelated and the letters are very big on your screen. With UEFI enabled, you should get everything in a much higher resolution. Also usually the boot up logo of your mainboard changes, whenever you change to either BIOS or UEFI mode. The UEFI enabled logo usually looks more high res and better.

Written on 2017/08/24-26