blob: 61c5d079646c2642f7602362c6fd044812d3a080 [file] [log] [blame]
Stefan Roeseb79316f2005-08-15 12:31:23 +02001/*
2* Copyright (C) 2005 Sandburst Corporation
Wolfgang Denk1a459662013-07-08 09:37:19 +02003 * SPDX-License-Identifier: GPL-2.0+
Stefan Roeseb79316f2005-08-15 12:31:23 +02004*/
5/*
6 * Ported from Ebony init.S by Travis B. Sawyer
7 */
8
9#include <ppc_asm.tmpl>
Stefan Roesecf6eb6d2010-04-14 13:57:18 +020010#include <asm/mmu.h>
Stefan Roeseb79316f2005-08-15 12:31:23 +020011#include <config.h>
Stefan Roese550650d2010-09-20 16:05:31 +020012#include <asm/ppc4xx.h>
Stefan Roeseb79316f2005-08-15 12:31:23 +020013
Stefan Roeseb79316f2005-08-15 12:31:23 +020014/**************************************************************************
15 * TLB TABLE
16 *
17 * This table is used by the cpu boot code to setup the initial tlb
18 * entries. Rather than make broad assumptions in the cpu source tree,
19 * this table lets each board set things up however they like.
20 *
21 * Pointer to the table is returned in r1
22 *
23 *************************************************************************/
24
25 .section .bootpg,"ax"
26 .globl tlbtab
27
28tlbtab:
29 tlbtab_start
Stefan Roesecf6eb6d2010-04-14 13:57:18 +020030 tlbentry( 0xf0000000, SZ_256M, 0xf0000000, 1, AC_RWX | SA_IG)
31 tlbentry( CONFIG_SYS_PERIPHERAL_BASE, SZ_256M, 0x40000000, 1, AC_RW | SA_IG)
32 tlbentry( CONFIG_SYS_ISRAM_BASE, SZ_256K, 0x80000000, 0, AC_RWX | SA_IG)
33 tlbentry( CONFIG_SYS_SDRAM_BASE, SZ_256M, 0x00000000, 0, AC_RWX | SA_IG )
34 tlbentry( CONFIG_SYS_SDRAM_BASE+0x10000000, SZ_256M, 0x10000000, 0, AC_RWX | SA_IG )
35 tlbentry( CONFIG_SYS_SDRAM_BASE+0x20000000, SZ_256M, 0x20000000, 0, AC_RWX | SA_IG )
36 tlbentry( CONFIG_SYS_SDRAM_BASE+0x30000000, SZ_256M, 0x30000000, 0, AC_RWX | SA_IG )
37 tlbentry( CONFIG_SYS_PCI_BASE, SZ_256M, 0x00000000, 2, AC_RW | SA_IG )
38 tlbentry( CONFIG_SYS_PCI_MEMBASE, SZ_256M, 0x00000000, 3, AC_RW | SA_IG )
Stefan Roeseb79316f2005-08-15 12:31:23 +020039 tlbtab_end