Skip to content

arm/versatile: no-MMU support

Vladimir Murzin linux-arm-kernel 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest2 of 4 patches 0 repliesNew

2 of 4 patches are in this archive. The cover letter announces 4.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
4/4ARM: versatile: support configuring versatile machine for no-MMU+0 -04 replies
4/4ARM: versatile: support configuring versatile machine for no-MMU+0 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/4] arm/versatile: no-MMU support

Hi Greg,

Quoted 41 lines · Greg Ungerer

Hi Vladimir,

Quoted 29 lines · Greg Ungerer
Quoted 23 lines · Vladimir Murzin
Quoted 17 lines · Greg Ungerer

Does the ARM Versatile machine have a maintainer?
I have CC'ed this patch set to those names reported by get_maintainer. I had no feedback on the first posting of this series back in August.

The following patches support configuring and building the versatile machine with a no-MMU kernel.

There is only a few minor changes required. It was previously possible in older kernels to build for versatile with CONFIG_MMU disabled, but the change to devicetree lost that capability. These changes make it possible again.

One patch is a fix for address translation (broken in older kernels too),
two are build problems when CONFIG_MMU is disabled, and the last is the actuall configuration changes needed.

Quoted 4 lines

The motivation for this is that the versatile machine is well supported in qemu. And this provides an excellent platform for development and testing no-MMU support on ARM in general. With these patches applied it is possible to build and run a kernel with MMU disabled on qemu.

Quoted 4 lines

I'm wondering if my "Allow NOMMU for MULTIPLATFORM" series [1] work for you?

[1] https://www.spinics.net/lists/arm-kernel/msg546823.html

Quoted 8 lines

Sorry I hadn't seen these patches before.

Just tried them out. With CONFIG_EXPERT set I can select and build for the Versatile machine with CONFIG_MMU not set. The build is successful, but the resulting kernel doesn't boot.

I see that the resulting .config has CONFIG_PLAT_VERSATILE set but not CONFIG_ARCH_VERSATILE. Is this intentional?

Quoted 7 lines

Let me revise that. By setting the "Multiple platform selection" selection correctly to v5 platforms I did get CONFIG_ARCH_VERSATILE set, and could still successfully build the kernel.

A couple of other config options I had to readjust and I can boot up this kernel under qemu. So success!

Congrats!!!

Thanks for trying these patches! It is really nice to see someone else shows interest on NOMMU! If you don't mind I'll keep you in Cc when/if I re-spin my patches ;)

Cheers
Vladimir

Quoted 17 lines
Quoted 8 lines

With CONFIG_ARCH_VERSATILE missing the build doesn't traverse into arch/arm/mach-versatile, and you don't get any device tree built.

Ultimately to produce a working kernel we will still need my patch 01/04 ("ARM: versatile: support no-MMU mode addressing"). No surprise here, this was missing in older kernels too.

So in the end this is the only extra change I needed as well to get the running kernel.

Regards
Greg