Linux Audio

Check our new training course

Loading...
v4.6
  1/*
  2 * Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights
  3 * reserved.
  4 *
  5 * This software is available to you under a choice of one of two
  6 * licenses.  You may choose to be licensed under the terms of the GNU
  7 * General Public License (GPL) Version 2, available from the file
  8 * COPYING in the main directory of this source tree, or the NetLogic
  9 * license below:
 10 *
 11 * Redistribution and use in source and binary forms, with or without
 12 * modification, are permitted provided that the following conditions
 13 * are met:
 14 *
 15 * 1. Redistributions of source code must retain the above copyright
 16 *    notice, this list of conditions and the following disclaimer.
 17 * 2. Redistributions in binary form must reproduce the above copyright
 18 *    notice, this list of conditions and the following disclaimer in
 19 *    the documentation and/or other materials provided with the
 20 *    distribution.
 21 *
 22 * THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR
 23 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 24 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 25 * ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE
 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 27 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 28 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 29 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 30 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
 31 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 32 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 33 */
 34
 35#ifndef _ASM_NETLOGIC_BOOTINFO_H
 36#define _ASM_NETLOGIC_BOOTINFO_H
 37
 38struct psb_info {
 39	uint64_t boot_level;
 40	uint64_t io_base;
 41	uint64_t output_device;
 42	uint64_t uart_print;
 43	uint64_t led_output;
 44	uint64_t init;
 45	uint64_t exit;
 46	uint64_t warm_reset;
 47	uint64_t wakeup;
 48	uint64_t online_cpu_map;
 49	uint64_t master_reentry_sp;
 50	uint64_t master_reentry_gp;
 51	uint64_t master_reentry_fn;
 52	uint64_t slave_reentry_fn;
 53	uint64_t magic_dword;
 54	uint64_t uart_putchar;
 55	uint64_t size;
 56	uint64_t uart_getchar;
 57	uint64_t nmi_handler;
 58	uint64_t psb_version;
 59	uint64_t mac_addr;
 60	uint64_t cpu_frequency;
 61	uint64_t board_version;
 62	uint64_t malloc;
 63	uint64_t free;
 64	uint64_t global_shmem_addr;
 65	uint64_t global_shmem_size;
 66	uint64_t psb_os_cpu_map;
 67	uint64_t userapp_cpu_map;
 68	uint64_t wakeup_os;
 69	uint64_t psb_mem_map;
 70	uint64_t board_major_version;
 71	uint64_t board_minor_version;
 72	uint64_t board_manf_revision;
 73	uint64_t board_serial_number;
 74	uint64_t psb_physaddr_map;
 75	uint64_t xlr_loaderip_config;
 76	uint64_t bldr_envp;
 77	uint64_t avail_mem_map;
 78};
 79
 80enum {
 81	NETLOGIC_IO_SPACE = 0x10,
 82	PCIX_IO_SPACE,
 83	PCIX_CFG_SPACE,
 84	PCIX_MEMORY_SPACE,
 85	HT_IO_SPACE,
 86	HT_CFG_SPACE,
 87	HT_MEMORY_SPACE,
 88	SRAM_SPACE,
 89	FLASH_CONTROLLER_SPACE
 90};
 91
 92#define NLM_MAX_ARGS	64
 93#define NLM_MAX_ENVS	32
 94
 95/* This is what netlboot passes and linux boot_mem_map is subtly different */
 96#define NLM_BOOT_MEM_MAP_MAX	32
 97struct nlm_boot_mem_map {
 98	int nr_map;
 99	struct nlm_boot_mem_map_entry {
100		uint64_t addr;		/* start of memory segment */
101		uint64_t size;		/* size of memory segment */
102		uint32_t type;		/* type of memory segment */
103	} map[NLM_BOOT_MEM_MAP_MAX];
104};
105
106/* Pointer to saved boot loader info */
107extern struct psb_info nlm_prom_info;
108
109#endif
v5.4
  1/*
  2 * Copyright 2003-2011 NetLogic Microsystems, Inc. (NetLogic). All rights
  3 * reserved.
  4 *
  5 * This software is available to you under a choice of one of two
  6 * licenses.  You may choose to be licensed under the terms of the GNU
  7 * General Public License (GPL) Version 2, available from the file
  8 * COPYING in the main directory of this source tree, or the NetLogic
  9 * license below:
 10 *
 11 * Redistribution and use in source and binary forms, with or without
 12 * modification, are permitted provided that the following conditions
 13 * are met:
 14 *
 15 * 1. Redistributions of source code must retain the above copyright
 16 *    notice, this list of conditions and the following disclaimer.
 17 * 2. Redistributions in binary form must reproduce the above copyright
 18 *    notice, this list of conditions and the following disclaimer in
 19 *    the documentation and/or other materials provided with the
 20 *    distribution.
 21 *
 22 * THIS SOFTWARE IS PROVIDED BY NETLOGIC ``AS IS'' AND ANY EXPRESS OR
 23 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 24 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 25 * ARE DISCLAIMED. IN NO EVENT SHALL NETLOGIC OR CONTRIBUTORS BE LIABLE
 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 27 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 28 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 29 * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 30 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
 31 * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
 32 * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 33 */
 34
 35#ifndef _ASM_NETLOGIC_BOOTINFO_H
 36#define _ASM_NETLOGIC_BOOTINFO_H
 37
 38struct psb_info {
 39	uint64_t boot_level;
 40	uint64_t io_base;
 41	uint64_t output_device;
 42	uint64_t uart_print;
 43	uint64_t led_output;
 44	uint64_t init;
 45	uint64_t exit;
 46	uint64_t warm_reset;
 47	uint64_t wakeup;
 48	uint64_t online_cpu_map;
 49	uint64_t master_reentry_sp;
 50	uint64_t master_reentry_gp;
 51	uint64_t master_reentry_fn;
 52	uint64_t slave_reentry_fn;
 53	uint64_t magic_dword;
 54	uint64_t uart_putchar;
 55	uint64_t size;
 56	uint64_t uart_getchar;
 57	uint64_t nmi_handler;
 58	uint64_t psb_version;
 59	uint64_t mac_addr;
 60	uint64_t cpu_frequency;
 61	uint64_t board_version;
 62	uint64_t malloc;
 63	uint64_t free;
 64	uint64_t global_shmem_addr;
 65	uint64_t global_shmem_size;
 66	uint64_t psb_os_cpu_map;
 67	uint64_t userapp_cpu_map;
 68	uint64_t wakeup_os;
 69	uint64_t psb_mem_map;
 70	uint64_t board_major_version;
 71	uint64_t board_minor_version;
 72	uint64_t board_manf_revision;
 73	uint64_t board_serial_number;
 74	uint64_t psb_physaddr_map;
 75	uint64_t xlr_loaderip_config;
 76	uint64_t bldr_envp;
 77	uint64_t avail_mem_map;
 78};
 79
 80enum {
 81	NETLOGIC_IO_SPACE = 0x10,
 82	PCIX_IO_SPACE,
 83	PCIX_CFG_SPACE,
 84	PCIX_MEMORY_SPACE,
 85	HT_IO_SPACE,
 86	HT_CFG_SPACE,
 87	HT_MEMORY_SPACE,
 88	SRAM_SPACE,
 89	FLASH_CONTROLLER_SPACE
 90};
 91
 92#define NLM_MAX_ARGS	64
 93#define NLM_MAX_ENVS	32
 94
 95/* This is what netlboot passes and linux boot_mem_map is subtly different */
 96#define NLM_BOOT_MEM_MAP_MAX	32
 97struct nlm_boot_mem_map {
 98	int nr_map;
 99	struct nlm_boot_mem_map_entry {
100		uint64_t addr;		/* start of memory segment */
101		uint64_t size;		/* size of memory segment */
102		uint32_t type;		/* type of memory segment */
103	} map[NLM_BOOT_MEM_MAP_MAX];
104};
105
106/* Pointer to saved boot loader info */
107extern struct psb_info nlm_prom_info;
108
109#endif