-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MIPS: Platform files for XLR/XLS processor support
* include/asm/netlogic added with files common for all Netlogic processors (common with XLP which will be added later) * include/asm/netlogic/xlr for XLR/XLS chip specific files * netlogic/xlr for XLR/XLS platform files Signed-off-by: Jayachandran C <jayachandranc@netlogicmicro.com> To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2334/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
- Loading branch information
Jayachandran C
authored and
Ralf Baechle
committed
May 19, 2011
1 parent
efa0f81
commit 5c64250
Showing
14 changed files
with
1,637 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
/* | ||
* Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights | ||
* reserved. | ||
* | ||
* This software is available to you under a choice of one of two | ||
* licenses. You may choose to be licensed under the terms of the GNU | ||
* General Public License (GPL) Version 2, available from the file | ||
* COPYING in the main directory of this source tree, or the NetLogic | ||
* license below: | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that the following conditions | ||
* are met: | ||
* | ||
* 1. Redistributions of source code must retain the above copyright | ||
* notice, this list of conditions and the following disclaimer. | ||
* 2. Redistributions in binary form must reproduce the above copyright | ||
* notice, this list of conditions and the following disclaimer in | ||
* the documentation and/or other materials provided with the | ||
* distribution. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR | ||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
* ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE | ||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
*/ | ||
|
||
#ifndef _ASM_NLM_INTERRUPT_H | ||
#define _ASM_NLM_INTERRUPT_H | ||
|
||
/* Defines for the IRQ numbers */ | ||
|
||
#define IRQ_IPI_SMP_FUNCTION 3 | ||
#define IRQ_IPI_SMP_RESCHEDULE 4 | ||
#define IRQ_MSGRING 6 | ||
#define IRQ_TIMER 7 | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
/* | ||
* Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights | ||
* reserved. | ||
* | ||
* This software is available to you under a choice of one of two | ||
* licenses. You may choose to be licensed under the terms of the GNU | ||
* General Public License (GPL) Version 2, available from the file | ||
* COPYING in the main directory of this source tree, or the NetLogic | ||
* license below: | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that the following conditions | ||
* are met: | ||
* | ||
* 1. Redistributions of source code must retain the above copyright | ||
* notice, this list of conditions and the following disclaimer. | ||
* 2. Redistributions in binary form must reproduce the above copyright | ||
* notice, this list of conditions and the following disclaimer in | ||
* the documentation and/or other materials provided with the | ||
* distribution. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR | ||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
* ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE | ||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
*/ | ||
|
||
#ifndef _ASM_NLM_MIPS_EXTS_H | ||
#define _ASM_NLM_MIPS_EXTS_H | ||
|
||
/* | ||
* XLR and XLP interrupt request and interrupt mask registers | ||
*/ | ||
#define read_c0_eirr() __read_64bit_c0_register($9, 6) | ||
#define read_c0_eimr() __read_64bit_c0_register($9, 7) | ||
#define write_c0_eirr(val) __write_64bit_c0_register($9, 6, val) | ||
|
||
/* | ||
* Writing EIMR in 32 bit is a special case, the lower 8 bit of the | ||
* EIMR is shadowed in the status register, so we cannot save and | ||
* restore status register for split read. | ||
*/ | ||
#define write_c0_eimr(val) \ | ||
do { \ | ||
if (sizeof(unsigned long) == 4) { \ | ||
unsigned long __flags; \ | ||
\ | ||
local_irq_save(__flags); \ | ||
__asm__ __volatile__( \ | ||
".set\tmips64\n\t" \ | ||
"dsll\t%L0, %L0, 32\n\t" \ | ||
"dsrl\t%L0, %L0, 32\n\t" \ | ||
"dsll\t%M0, %M0, 32\n\t" \ | ||
"or\t%L0, %L0, %M0\n\t" \ | ||
"dmtc0\t%L0, $9, 7\n\t" \ | ||
".set\tmips0" \ | ||
: : "r" (val)); \ | ||
__flags = (__flags & 0xffff00ff) | (((val) & 0xff) << 8);\ | ||
local_irq_restore(__flags); \ | ||
} else \ | ||
__write_64bit_c0_register($9, 7, (val)); \ | ||
} while (0) | ||
|
||
static inline int hard_smp_processor_id(void) | ||
{ | ||
return __read_32bit_c0_register($15, 1) & 0x3ff; | ||
} | ||
|
||
#endif /*_ASM_NLM_MIPS_EXTS_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,109 @@ | ||
/* | ||
* Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights | ||
* reserved. | ||
* | ||
* This software is available to you under a choice of one of two | ||
* licenses. You may choose to be licensed under the terms of the GNU | ||
* General Public License (GPL) Version 2, available from the file | ||
* COPYING in the main directory of this source tree, or the NetLogic | ||
* license below: | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that the following conditions | ||
* are met: | ||
* | ||
* 1. Redistributions of source code must retain the above copyright | ||
* notice, this list of conditions and the following disclaimer. | ||
* 2. Redistributions in binary form must reproduce the above copyright | ||
* notice, this list of conditions and the following disclaimer in | ||
* the documentation and/or other materials provided with the | ||
* distribution. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR | ||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
* ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE | ||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
*/ | ||
|
||
#ifndef _ASM_NETLOGIC_BOOTINFO_H | ||
#define _ASM_NETLOGIC_BOOTINFO_H | ||
|
||
struct psb_info { | ||
uint64_t boot_level; | ||
uint64_t io_base; | ||
uint64_t output_device; | ||
uint64_t uart_print; | ||
uint64_t led_output; | ||
uint64_t init; | ||
uint64_t exit; | ||
uint64_t warm_reset; | ||
uint64_t wakeup; | ||
uint64_t online_cpu_map; | ||
uint64_t master_reentry_sp; | ||
uint64_t master_reentry_gp; | ||
uint64_t master_reentry_fn; | ||
uint64_t slave_reentry_fn; | ||
uint64_t magic_dword; | ||
uint64_t uart_putchar; | ||
uint64_t size; | ||
uint64_t uart_getchar; | ||
uint64_t nmi_handler; | ||
uint64_t psb_version; | ||
uint64_t mac_addr; | ||
uint64_t cpu_frequency; | ||
uint64_t board_version; | ||
uint64_t malloc; | ||
uint64_t free; | ||
uint64_t global_shmem_addr; | ||
uint64_t global_shmem_size; | ||
uint64_t psb_os_cpu_map; | ||
uint64_t userapp_cpu_map; | ||
uint64_t wakeup_os; | ||
uint64_t psb_mem_map; | ||
uint64_t board_major_version; | ||
uint64_t board_minor_version; | ||
uint64_t board_manf_revision; | ||
uint64_t board_serial_number; | ||
uint64_t psb_physaddr_map; | ||
uint64_t xlr_loaderip_config; | ||
uint64_t bldr_envp; | ||
uint64_t avail_mem_map; | ||
}; | ||
|
||
enum { | ||
NETLOGIC_IO_SPACE = 0x10, | ||
PCIX_IO_SPACE, | ||
PCIX_CFG_SPACE, | ||
PCIX_MEMORY_SPACE, | ||
HT_IO_SPACE, | ||
HT_CFG_SPACE, | ||
HT_MEMORY_SPACE, | ||
SRAM_SPACE, | ||
FLASH_CONTROLLER_SPACE | ||
}; | ||
|
||
#define NLM_MAX_ARGS 64 | ||
#define NLM_MAX_ENVS 32 | ||
|
||
/* This is what netlboot passes and linux boot_mem_map is subtly different */ | ||
#define NLM_BOOT_MEM_MAP_MAX 32 | ||
struct nlm_boot_mem_map { | ||
int nr_map; | ||
struct nlm_boot_mem_map_entry { | ||
uint64_t addr; /* start of memory segment */ | ||
uint64_t size; /* size of memory segment */ | ||
uint32_t type; /* type of memory segment */ | ||
} map[NLM_BOOT_MEM_MAP_MAX]; | ||
}; | ||
|
||
/* Pointer to saved boot loader info */ | ||
extern struct psb_info nlm_prom_info; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
/* | ||
* Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights | ||
* reserved. | ||
* | ||
* This software is available to you under a choice of one of two | ||
* licenses. You may choose to be licensed under the terms of the GNU | ||
* General Public License (GPL) Version 2, available from the file | ||
* COPYING in the main directory of this source tree, or the NetLogic | ||
* license below: | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that the following conditions | ||
* are met: | ||
* | ||
* 1. Redistributions of source code must retain the above copyright | ||
* notice, this list of conditions and the following disclaimer. | ||
* 2. Redistributions in binary form must reproduce the above copyright | ||
* notice, this list of conditions and the following disclaimer in | ||
* the documentation and/or other materials provided with the | ||
* distribution. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR | ||
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | ||
* ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE | ||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | ||
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | ||
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR | ||
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, | ||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE | ||
* OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN | ||
* IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
*/ | ||
|
||
#ifndef _ASM_NLM_GPIO_H | ||
#define _ASM_NLM_GPIO_H | ||
|
||
#define NETLOGIC_GPIO_INT_EN_REG 0 | ||
#define NETLOGIC_GPIO_INPUT_INVERSION_REG 1 | ||
#define NETLOGIC_GPIO_IO_DIR_REG 2 | ||
#define NETLOGIC_GPIO_IO_DATA_WR_REG 3 | ||
#define NETLOGIC_GPIO_IO_DATA_RD_REG 4 | ||
|
||
#define NETLOGIC_GPIO_SWRESET_REG 8 | ||
#define NETLOGIC_GPIO_DRAM1_CNTRL_REG 9 | ||
#define NETLOGIC_GPIO_DRAM1_RATIO_REG 10 | ||
#define NETLOGIC_GPIO_DRAM1_RESET_REG 11 | ||
#define NETLOGIC_GPIO_DRAM1_STATUS_REG 12 | ||
#define NETLOGIC_GPIO_DRAM2_CNTRL_REG 13 | ||
#define NETLOGIC_GPIO_DRAM2_RATIO_REG 14 | ||
#define NETLOGIC_GPIO_DRAM2_RESET_REG 15 | ||
#define NETLOGIC_GPIO_DRAM2_STATUS_REG 16 | ||
|
||
#define NETLOGIC_GPIO_PWRON_RESET_CFG_REG 21 | ||
#define NETLOGIC_GPIO_BIST_ALL_GO_STATUS_REG 24 | ||
#define NETLOGIC_GPIO_BIST_CPU_GO_STATUS_REG 25 | ||
#define NETLOGIC_GPIO_BIST_DEV_GO_STATUS_REG 26 | ||
|
||
#define NETLOGIC_GPIO_FUSE_BANK_REG 35 | ||
#define NETLOGIC_GPIO_CPU_RESET_REG 40 | ||
#define NETLOGIC_GPIO_RNG_REG 43 | ||
|
||
#define NETLOGIC_PWRON_RESET_PCMCIA_BOOT 17 | ||
#define NETLOGIC_GPIO_LED_BITMAP 0x1700000 | ||
#define NETLOGIC_GPIO_LED_0_SHIFT 20 | ||
#define NETLOGIC_GPIO_LED_1_SHIFT 24 | ||
|
||
#define NETLOGIC_GPIO_LED_OUTPUT_CODE_RESET 0x01 | ||
#define NETLOGIC_GPIO_LED_OUTPUT_CODE_HARD_RESET 0x02 | ||
#define NETLOGIC_GPIO_LED_OUTPUT_CODE_SOFT_RESET 0x03 | ||
#define NETLOGIC_GPIO_LED_OUTPUT_CODE_MAIN 0x04 | ||
|
||
#endif |
Oops, something went wrong.