On Jun 16, 2010, at 1:58 AM, Micha Nelissen wrote:

> Hi,
> 
> Attached is a patch to fix large physical address support for the e500v2 
> core. When >4GB addresses are used, the MAS7 register needs to be valid for 
> tlbsx instruction usage.
> 
> Please review and apply.
> 
> Micha
> diff -u -ru linux-2.6.34/arch/powerpc/include/asm/reg.h 
> linux-2.6.34-fix/arch/powerpc/include/asm/reg.h
> --- linux-2.6.34/arch/powerpc/include/asm/reg.h       2010-05-16 
> 23:17:36.000000000 +0200
> +++ linux-2.6.34-fix/arch/powerpc/include/asm/reg.h   2010-06-16 
> 08:43:28.000000000 +0200
> @@ -272,6 +272,7 @@
> #define HID0_DAPUEN   (1<<8)          /* Debug APU enable */
> #define HID0_SGE      (1<<7)          /* Store Gathering Enable */
> #define HID0_SIED     (1<<7)          /* Serial Instr. Execution [Disable] */
> +#define HID0_EN_MAS7_UPDATE (1<<7)      /* tlbre/tlbsx update MAS7 - e500v2 
> */
> #define HID0_DCFA     (1<<6)          /* Data Cache Flush Assist */
> #define HID0_LRSTK    (1<<4)          /* Link register stack - 745x */
> #define HID0_BTIC     (1<<5)          /* Branch Target Instr Cache Enable */
> diff -u -ru linux-2.6.34/arch/powerpc/kernel/head_fsl_booke.S 
> linux-2.6.34-fix/arch/powerpc/kernel/head_fsl_booke.S
> --- linux-2.6.34/arch/powerpc/kernel/head_fsl_booke.S 2010-05-16 
> 23:17:36.000000000 +0200
> +++ linux-2.6.34-fix/arch/powerpc/kernel/head_fsl_booke.S     2010-06-16 
> 08:45:10.000000000 +0200
> @@ -328,6 +328,13 @@
>       oris    r2,r2,hid0_d...@h
>       mtspr   SPRN_HID0, r2
> #endif
> +#ifdef CONFIG_PTE_64BIT
> +BEGIN_MMU_FTR_SECTION
> +     mfspr   r2,SPRN_HID0
> +     ori     r2,r2,hid0_en_mas7_upd...@l
> +     mtspr   SPRN_HID0, r2
> +END_MMU_FTR_SECTION_IFSET(MMU_FTR_BIG_PHYS)
> +#endif

If you want to do this, do it in:

arch/powerpc/kernel/cpu_setup_fsl_booke.S

- k
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to