Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1207005

Re: [PATCH 12/14] arm64: Check for selected granule support

From Catalin Marinas <catalin.marinas@arm.com>
Newsgroups linux.kernel
Subject Re: [PATCH 12/14] arm64: Check for selected granule support
Date 2015-08-13 19:40 +0200
Message-ID <pX4DU-1Gi-3@gated-at.bofh.it> (permalink)
References <pWZ1v-22I-7@gated-at.bofh.it> <pWZ1x-22I-31@gated-at.bofh.it> <pWZNU-3cO-13@gated-at.bofh.it> <pX1Zo-6gD-29@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Aug 13, 2015 at 03:45:07PM +0100, Suzuki K. Poulose wrote:
> On 13/08/15 13:28, Steve Capper wrote:
> >On 13 August 2015 at 12:34, Suzuki K. Poulose <suzuki.poulose@arm.com> wrote:
> >>  __enable_mmu:
> >>+       mrs     x1, ID_AA64MMFR0_EL1
> >>+       ubfx    x2, x1, #ID_AA64MMFR0_TGran_SHIFT, 4
> >>+       cmp     x2, #ID_AA64MMFR0_TGran_ENABLED
> >>+       b.ne    __no_granule_support
> >>         ldr     x5, =vectors
> >>         msr     vbar_el1, x5
> >>         msr     ttbr0_el1, x25                  // load TTBR0
> >>@@ -626,3 +643,8 @@ __enable_mmu:
> >>         isb
> >>         br      x27
> >>  ENDPROC(__enable_mmu)
> >>+
> >>+__no_granule_support:
> >>+       wfe
> >>+       b __no_granule_support
> >>+ENDPROC(__no_granule_support)
> >>--
> >>1.7.9.5
> >>
> >
> >Is is possible to tell the user that the kernel has failed to boot due
> >to the kernel granule being unsupported?
> 
> We don't have anything up at this time. The "looping address" is actually a clue
> to the (expert) user. Not sure we can do something, until we get something like DEBUG_LL(?)

No.

> Or we should let it continue and end in a panic(?). The current situation can boot a
> multi-cluster system with boot cluster having the Tgran support(which doesn't make a
> strong use case though). I will try out some options and get back to you.

If the boot CPU does not support 16KB pages, in general there isn't much
we can do since the console printing is done after we enabled the MMU.
Even mapping the UART address requires fixmap support and the PAGE_SIZE
is hard-coded in the kernel image. The DT is also mapped at run-time.

While in theory it's possible to fall back to a 4KB page size just
enough to load the DT and figure out the early console, I suggest we
just live with the "looping address" clue.

-- 
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 00/14] arm64: 16K translation granule support "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 04/14] arm64: Calculate size for idmap_pg_dir at compile time "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 09/14] arm64: Cleanup VTCR_EL2 computation "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 05/14] arm64: Handle 4 level page table for swapper "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 12/14] arm64: Check for selected granule support "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
    Re: [PATCH 12/14] arm64: Check for selected granule support Steve Capper <steve.capper@linaro.org> - 2015-08-13 14:30 +0200
      Re: [PATCH 12/14] arm64: Check for selected granule support "Suzuki K. Poulose" <Suzuki.Poulose@arm.com> - 2015-08-13 16:50 +0200
        Re: [PATCH 12/14] arm64: Check for selected granule support Catalin Marinas <catalin.marinas@arm.com> - 2015-08-13 19:40 +0200
  [PATCH 07/14] arm64: Kconfig: Fix help text about AArch32 support with 64K pages "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 06/14] arm64: Clean config usages for page size "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 08/14] arm64: kvm: Fix {V}TCR_EL2_TG0 mask "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 13/14] arm64: Add 16K page size support "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200
  [PATCH 10/14] arm: kvm: Move fake PGD handling to arch specific files "Suzuki K. Poulose" <suzuki.poulose@arm.com> - 2015-08-13 13:40 +0200

csiph-web