From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754802AbcEQHCq (ORCPT ); Tue, 17 May 2016 03:02:46 -0400 Received: from pegase1.c-s.fr ([93.17.236.30]:48629 "EHLO pegase1.c-s.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752837AbcEQHCo (ORCPT ); Tue, 17 May 2016 03:02:44 -0400 Message-Id: From: Christophe Leroy Subject: [PATCH v3 0/7] powerpc/8xx: Optimisation of TLB handling for IMMR and RAM To: Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Scott Wood Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Date: Tue, 17 May 2016 09:02:41 +0200 (CEST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The purpose of this set of patches is to continue on TLB handling optimisation on the 8xx with the handling of IMMR area as a single 512k area instead of multiple 4k pages. This set includes a rework of linear RAM mapping in order to not use page table but direct linear mapping. The result is equivalent to the use of BATs on other PPCs and it avoids reading the page table. This set also includes a rework of the handling of PIN_TLB config option. This option used to be linked to the quantity of RAM available. It is now independant, users having only 8M memory can also use PIN_TLB. Christophe Leroy (7): powerpc/8xx: Fix vaddr for IMMR early remap powerpc/8xx: Map IMMR area with 512k page at a fixed address powerpc/8xx: CONFIG_PIN_TLB unneeded for CONFIG_PPC_EARLY_DEBUG_CPM powerpc/8xx: unpin all TLBs before flushing powerpc/8xx: Don't use page table for linear memory space powerpc/8xx: Rework CONFIG_PIN_TLB handling powerpc/8xx: add CONFIG_PIN_TLB_IMMR arch/powerpc/Kconfig | 5 ++ arch/powerpc/Kconfig.debug | 1 - arch/powerpc/include/asm/fixmap.h | 7 ++ arch/powerpc/include/asm/mmu-8xx.h | 3 + arch/powerpc/kernel/asm-offsets.c | 8 ++ arch/powerpc/kernel/head_8xx.S | 159 +++++++++++++++++++------------------ arch/powerpc/mm/8xx_mmu.c | 131 ++++++++++++++++++++---------- arch/powerpc/mm/mmu_decl.h | 3 +- arch/powerpc/sysdev/cpm_common.c | 22 +++-- 9 files changed, 212 insertions(+), 127 deletions(-) -- v2: Fixed a test in the 6/7 v3: Fixed issue with 82xx 2.1.0