Project

General

Profile

Actions

BootloadersIncompatibleWithLinux » History » Revision 5

« Previous | Revision 5/17 (diff) | Next »
Denis 'GNUtoo' Carikli, 03/18/2020 03:44 PM


MidasBootloaderIncompatibleWithLinux

Introduction

The bootloader of the following devices is incompatible with upstream Linux:
  • Galaxy SIII (GT-I9300)
  • Galaxy SIII 4G (GT-I9305)
  • Galaxy Note II (GT-N7100)
  • Galaxy Note II 4G (GT-N7105)
When jumping to Linux, the booloader still has:
  • the instruction cache on
  • the data cache on
  • the MMU on
Documentation/arm/booting.rst which is there since 2003 states that:
  • "The MMU must be off."
  • "Data cache must be off."

And upstream Linux won't accept patches to disable the MMU, or the data cache in Linux as they have very good reasons to do that, and they are supposed to be already disabled.

Supporting s-boot

To workaround that: However as the kernel evolved we need to patch it more and more:
  • The patch disabling the caches "was not necessary on Linux 3.4":lkml.iu.edu/hypermail/linux/kernel/1212.1/02099.html
  • Disabling CONFIG_GCC_PLUGINS was also not necessary on older kernel where the option was not even present

Updated by Denis 'GNUtoo' Carikli about 4 years ago · 5 revisions

Also available in: PDF HTML TXT