Julius Werner (jwerner(a)chromium.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11909
-gerrit
commit 3d828f35e0fb9213f6136a6f94db41776474604c
Author: Furquan Shaikh <furquan(a)google.com>
Date: Thu Oct 15 12:15:31 2015 -0700
arm64: Remove SMP support
As ARM Trusted Firmware is the only first class citizen for
booting arm64 multi-processor in coreboot remove SMP
support. If SoCs want to bring up MP then ATF needs to be
ported and integrated.
Change-Id: Ife24d53eed9b7a5a5d8c69a64d7a20a55a4163db
Signed-off-by: Furquan Shaikh <furquan(a)google.com>
---
src/arch/arm64/Makefile.inc | 2 -
src/arch/arm64/c_entry.c | 18 +-
src/arch/arm64/cpu-internal.h | 20 +-
src/arch/arm64/cpu.c | 224 -----------------------
src/arch/arm64/cpu_ramstage.c | 92 +---------
src/arch/arm64/include/arch/startup.h | 44 -----
src/arch/arm64/include/armv8/arch/cpu.h | 134 +-------------
src/arch/arm64/include/armv8/arch/smp/spinlock.h | 29 ---
src/arch/arm64/stage_entry.S | 122 ++----------
src/arch/arm64/startup.c | 53 ------
src/mainboard/google/rush/devicetree.cb | 1 -
src/soc/nvidia/tegra132/Kconfig | 1 -
src/soc/nvidia/tegra132/Makefile.inc | 1 -
src/soc/nvidia/tegra132/cpu_lib.S | 23 ---
src/soc/nvidia/tegra132/soc.c | 21 +--
src/soc/nvidia/tegra210/Makefile.inc | 1 -
src/soc/nvidia/tegra210/cpu_lib.S | 23 ---
src/soc/nvidia/tegra210/soc.c | 26 +--
18 files changed, 38 insertions(+), 797 deletions(-)
diff --git a/src/arch/arm64/Makefile.inc b/src/arch/arm64/Makefile.inc
index fabe7b3..b4ee3a5 100644
--- a/src/arch/arm64/Makefile.inc
+++ b/src/arch/arm64/Makefile.inc
@@ -130,9 +130,7 @@ ifeq ($(CONFIG_ARCH_RAMSTAGE_ARM64),y)
ramstage-y += c_entry.c
ramstage-y += stages.c
-ramstage-y += startup.c
ramstage-y += div0.c
-ramstage-y += cpu.c
ramstage-y += cpu_ramstage.c
ramstage-y += eabi_compat.c
ramstage-y += boot.c
diff --git a/src/arch/arm64/c_entry.c b/src/arch/arm64/c_entry.c
index 0a5541c..deef83d 100644
--- a/src/arch/arm64/c_entry.c
+++ b/src/arch/arm64/c_entry.c
@@ -17,7 +17,6 @@
#include <arch/cpu.h>
#include <arch/mmu.h>
#include <arch/stages.h>
-#include <arch/startup.h>
#include "cpu-internal.h"
void __attribute__((weak)) arm64_soc_init(void)
@@ -32,7 +31,7 @@ static void seed_stack(void)
int i;
int size;
- stack_begin = cpu_get_stack(smp_processor_id());
+ stack_begin = cpu_get_stack();
stack_begin -= CONFIG_STACK_SIZE;
slot = (void *)stack_begin;
@@ -45,21 +44,10 @@ static void seed_stack(void)
static void arm64_init(void)
{
- cpu_set_bsp();
seed_stack();
arm64_soc_init();
main();
}
-/*
- * This variable holds entry point for CPUs starting up. The first
- * element is the BSP path, and the second is the non-BSP path.
- */
-void (*c_entry[2])(void) = { &arm64_init, &arch_secondary_cpu_init };
-
-void *prepare_secondary_cpu_startup(void)
-{
- startup_save_cpu_data();
-
- return secondary_entry_point(&arm64_cpu_startup_resume);
-}
+/* This variable holds entry point for CPU starting up. */
+void (*c_entry)(void) = &arm64_init;
diff --git a/src/arch/arm64/cpu-internal.h b/src/arch/arm64/cpu-internal.h
index fb5d13f..75d2d4d 100644
--- a/src/arch/arm64/cpu-internal.h
+++ b/src/arch/arm64/cpu-internal.h
@@ -16,22 +16,10 @@
#ifndef ARCH_CPU_INTERNAL_H
#define ARCH_CPU_INTERNAL_H
-/*
- * Do the necessary work to prepare for secondary CPUs coming up. The
- * SoC will call this function before bringing up the other CPUs. The
- * entry point for the seoncdary CPUs is returned.
- */
-void *prepare_secondary_cpu_startup(void);
-
-/*
- * Code path for the non-BSP CPUs. This is an internal function used.
- */
-void arch_secondary_cpu_init(void);
-
-/* Return the top of the stack for the specified cpu. */
-void *cpu_get_stack(unsigned int cpu);
+/* Return the top of the stack for the cpu. */
+void *cpu_get_stack(void);
-/* Return the top of the exception stack for the specified cpu. */
-void *cpu_get_exception_stack(unsigned int cpu);
+/* Return the top of the exception stack for the cpu. */
+void *cpu_get_exception_stack(void);
#endif /* ARCH_CPU_INTERNAL_H */
diff --git a/src/arch/arm64/cpu.c b/src/arch/arm64/cpu.c
deleted file mode 100644
index 1501181..0000000
--- a/src/arch/arm64/cpu.c
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright 2013 Google Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <stdint.h>
-#include <stdlib.h>
-#include <arch/lib_helpers.h>
-#include <cpu/cpu.h>
-#include <console/console.h>
-#include <smp/node.h>
-#include "cpu-internal.h"
-
-struct cpu_info cpu_infos[CONFIG_MAX_CPUS];
-struct cpu_info *bsp_cpu_info;
-
-struct cpu_info *cpu_info(void)
-{
- return cpu_info_for_cpu(smp_processor_id());
-}
-
-size_t cpus_online(void)
-{
- int i;
- size_t num = 0;
-
- for (i = 0; i < ARRAY_SIZE(cpu_infos); i++) {
- if (cpu_online(cpu_info_for_cpu(i)))
- num++;
- }
-
- return num;
-}
-
-static inline int action_queue_empty(struct cpu_action_queue *q)
-{
- return load_acquire_exclusive(&q->todo) == NULL;
-}
-
-static inline int action_completed(struct cpu_action_queue *q,
- struct cpu_action *action)
-{
- return load_acquire(&q->completed) == action;
-}
-
-static inline void wait_for_action_queue_slot(struct cpu_action_queue *q)
-{
- while (!action_queue_empty(q))
- wfe();
-}
-
-static void wait_for_action_complete(struct cpu_action_queue *q,
- struct cpu_action *a)
-{
- while (!action_completed(q, a))
- wfe();
-}
-
-static struct cpu_action *wait_for_action(struct cpu_action_queue *q,
- struct cpu_action *local)
-{
- struct cpu_action *action;
-
- while (action_queue_empty(q))
- wfe();
-
- /*
- * Keep original address, but use a local copy for async processing.
- */
- do {
- action = load_acquire_exclusive(&q->todo);
- *local = *action;
- } while (!store_release_exclusive(&q->todo, NULL));
-
- return action;
-}
-
-static void queue_action(struct cpu_action_queue *q, struct cpu_action *action)
-{
- do {
- wait_for_action_queue_slot(q);
- if (load_acquire_exclusive(&q->todo) != NULL)
- continue;
- } while (!store_release_exclusive(&q->todo, action));
-}
-
-static void action_queue_complete(struct cpu_action_queue *q,
- struct cpu_action *action)
-{
- /* Mark completion and send events to waiters. */
- store_release(&q->completed, action);
- sev();
-}
-
-static void action_run(struct cpu_action *action)
-{
- action->run(action->arg);
-}
-
-static void action_run_on_cpu(struct cpu_info *ci, struct cpu_action *action,
- int sync)
-{
- struct cpu_action_queue *q = &ci->action_queue;
-
- /* Don't run actions on non-online cpus. */
- if (!cpu_online(ci))
- return;
-
- if (ci->id == smp_processor_id()) {
- action->run(action->arg);
- return;
- }
-
- queue_action(q, action);
- /* Wait for CPU to pick it up. Empty slot means it was picked up. */
- wait_for_action_queue_slot(q);
- /* Wait for completion if requested. */
- if (sync)
- wait_for_action_complete(q, action);
-}
-
-static int __arch_run_on_cpu(unsigned int cpu, struct cpu_action *action,
- int sync)
-{
- struct cpu_info *ci;
-
- if (cpu >= CONFIG_MAX_CPUS)
- return -1;
-
- ci = cpu_info_for_cpu(cpu);
-
- action_run_on_cpu(ci, action, sync);
-
- return 0;
-}
-
-int arch_run_on_cpu(unsigned int cpu, struct cpu_action *action)
-{
- return __arch_run_on_cpu(cpu, action, 1);
-}
-
-int arch_run_on_cpu_async(unsigned int cpu, struct cpu_action *action)
-{
- return __arch_run_on_cpu(cpu, action, 0);
-}
-
-static int __arch_run_on_all_cpus(struct cpu_action *action, int sync)
-{
- int i;
-
- for (i = 0; i < CONFIG_MAX_CPUS; i++)
- action_run_on_cpu(cpu_info_for_cpu(i), action, sync);
-
- return 0;
-}
-
-static int __arch_run_on_all_cpus_but_self(struct cpu_action *action, int sync)
-{
- int i;
- struct cpu_info *me = cpu_info();
-
- for (i = 0; i < CONFIG_MAX_CPUS; i++) {
- struct cpu_info *ci = cpu_info_for_cpu(i);
- if (ci == me)
- continue;
- action_run_on_cpu(ci, action, sync);
- }
-
- return 0;
-}
-
-int arch_run_on_all_cpus(struct cpu_action *action)
-{
- return __arch_run_on_all_cpus(action, 1);
-}
-
-int arch_run_on_all_cpus_async(struct cpu_action *action)
-{
- return __arch_run_on_all_cpus(action, 0);
-}
-
-int arch_run_on_all_cpus_but_self(struct cpu_action *action)
-{
- return __arch_run_on_all_cpus_but_self(action, 1);
-}
-
-int arch_run_on_all_cpus_but_self_async(struct cpu_action *action)
-{
- return __arch_run_on_all_cpus_but_self(action, 0);
-}
-
-
-void arch_cpu_wait_for_action(void)
-{
- struct cpu_info *ci = cpu_info();
- struct cpu_action_queue *q = &ci->action_queue;
-
- while (1) {
- struct cpu_action *orig;
- struct cpu_action action;
-
- orig = wait_for_action(q, &action);
-
- action_run(&action);
- action_queue_complete(q, orig);
- }
-}
-
-#if IS_ENABLED(CONFIG_SMP)
-int boot_cpu(void)
-{
- return cpu_is_bsp();
-}
-#endif
diff --git a/src/arch/arm64/cpu_ramstage.c b/src/arch/arm64/cpu_ramstage.c
index 81df98c..c94c26f 100644
--- a/src/arch/arm64/cpu_ramstage.c
+++ b/src/arch/arm64/cpu_ramstage.c
@@ -24,6 +24,8 @@
#include <timer.h>
#include "cpu-internal.h"
+static struct cpu_info cpu_info;
+
void __attribute__((weak)) arm64_arch_timer_init(void)
{
/* Default weak implementation does nothing. */
@@ -102,9 +104,9 @@ static void el3_init(void)
isb();
}
-static void init_this_cpu(void *arg)
+static void init_this_cpu(void)
{
- struct cpu_info *ci = arg;
+ struct cpu_info *ci = &cpu_info;
device_t dev = ci->cpu;
cpu_set_device_operations(dev);
@@ -156,14 +158,14 @@ static void init_cpu_info(struct bus *bus)
continue;
/* IDs are currently mapped 1:1 with logical CPU numbers. */
- if (id >= CONFIG_MAX_CPUS) {
+ if (id != 0) {
printk(BIOS_WARNING,
"CPU id %x too large. Disabling.\n", id);
cpu_disable_dev(cur);
continue;
}
- ci = cpu_info_for_cpu(id);
+ ci = &cpu_info;
if (ci->cpu != NULL) {
printk(BIOS_WARNING,
"Duplicate ID %x in device tree.\n", id);
@@ -175,12 +177,8 @@ static void init_cpu_info(struct bus *bus)
}
}
-void arch_initialize_cpus(device_t cluster, struct cpu_control_ops *cntrl_ops)
+void arch_initialize_cpu(device_t cluster)
{
- size_t max_cpus;
- size_t i;
- struct cpu_info *ci;
- void (*entry)(void);
struct bus *bus;
if (cluster->path.type != DEVICE_PATH_CPU_CLUSTER) {
@@ -196,83 +194,11 @@ void arch_initialize_cpus(device_t cluster, struct cpu_control_ops *cntrl_ops)
if (bus == NULL)
return;
- /*
- * el3_init must be performed prior to prepare_secondary_cpu_startup.
- * This is important since el3_init initializes SCR values on BSP CPU
- * and then prepare_secondary_cpu_startup reads the initialized SCR
- * value and saves it for use by non-BSP CPUs.
- */
el3_init();
- /* Mark current cpu online. */
- cpu_mark_online(cpu_info());
- entry = prepare_secondary_cpu_startup();
/* Initialize the cpu_info structures. */
init_cpu_info(bus);
- max_cpus = cntrl_ops->total_cpus();
-
- if (max_cpus > CONFIG_MAX_CPUS) {
- printk(BIOS_WARNING,
- "max_cpus (%zu) exceeds CONFIG_MAX_CPUS (%zu).\n",
- max_cpus, (size_t)CONFIG_MAX_CPUS);
- max_cpus = CONFIG_MAX_CPUS;
- }
-
- for (i = 0; i < max_cpus; i++) {
- device_t dev;
- struct cpu_action action;
- struct stopwatch sw;
-
- ci = cpu_info_for_cpu(i);
- dev = ci->cpu;
-
- /* Disregard CPUs not in device tree. */
- if (dev == NULL)
- continue;
-
- /* Skip disabled CPUs. */
- if (!dev->enabled)
- continue;
-
- if (!cpu_online(ci)) {
- /* Start the CPU. */
- printk(BIOS_DEBUG, "Starting CPU%x\n", ci->id);
-
- if (cntrl_ops->start_cpu(ci->id, entry)) {
- printk(BIOS_ERR,
- "Failed to start CPU%x\n", ci->id);
- continue;
- }
- stopwatch_init_msecs_expire(&sw, 1000);
- /* Wait for CPU to come online. */
- while (!stopwatch_expired(&sw)) {
- if (!cpu_online(ci))
- continue;
- printk(BIOS_DEBUG,
- "CPU%x online in %ld usecs.\n",
- ci->id, stopwatch_duration_usecs(&sw));
- break;
- }
- }
-
- if (!cpu_online(ci)) {
- printk(BIOS_DEBUG,
- "CPU%x failed to come online in %ld usecs.\n",
- ci->id, stopwatch_duration_usecs(&sw));
- continue;
- }
-
- /* Send it the init action. */
- action.run = init_this_cpu;
- action.arg = ci;
- arch_run_on_cpu(ci->id, &action);
- }
-}
-
-void arch_secondary_cpu_init(void)
-{
- /* Mark this CPU online. */
- cpu_mark_online(cpu_info());
- arch_cpu_wait_for_action();
+ /* Send it the init action. */
+ init_this_cpu();
}
diff --git a/src/arch/arm64/include/arch/startup.h b/src/arch/arm64/include/arch/startup.h
deleted file mode 100644
index def0b37..0000000
--- a/src/arch/arm64/include/arch/startup.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2014 Google Inc
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#ifndef __ARCH_ARM64_INCLUDE_ARCH_STARTUP_H__
-#define __ARCH_ARM64_INCLUDE_ARCH_STARTUP_H__
-
-/* Every element occupies 8 bytes (64-bit entries) */
-#define PER_ELEMENT_SIZE_BYTES 8
-#define MAIR_INDEX 0
-#define TCR_INDEX 1
-#define TTBR0_INDEX 2
-#define SCR_INDEX 3
-#define VBAR_INDEX 4
-#define CNTFRQ_INDEX 5
-#define CPTR_INDEX 6
-#define CPACR_INDEX 7
-/* IMPORTANT!!! If any new element is added please update NUM_ELEMENTS */
-#define NUM_ELEMENTS 8
-
-#ifndef __ASSEMBLY__
-
-/*
- * startup_save_cpu_data is used to save register values that need to be setup
- * when a CPU starts booting. This is used by secondary CPUs as well as resume
- * path to directly setup MMU and other related registers.
- */
-void startup_save_cpu_data(void);
-
-#endif
-
-#endif /* __ARCH_ARM64_INCLUDE_ARCH_STARTUP_H__ */
diff --git a/src/arch/arm64/include/armv8/arch/cpu.h b/src/arch/arm64/include/armv8/arch/cpu.h
index d1056c5..778909d 100644
--- a/src/arch/arm64/include/armv8/arch/cpu.h
+++ b/src/arch/arm64/include/armv8/arch/cpu.h
@@ -37,148 +37,28 @@ struct cpu_driver {
const struct cpu_device_id *id_table;
};
-/* Action to run. */
-struct cpu_action {
- void (*run)(void *arg);
- void *arg;
-};
-
-/*
- * Actions are queued to 'todo'. When picked up 'todo' is cleared. The
- * 'completed' field is set to the original 'todo' value when the action
- * is complete.
- */
-struct cpu_action_queue {
- struct cpu_action *todo;
- struct cpu_action *completed;
-};
-
struct cpu_info {
device_t cpu;
- struct cpu_action_queue action_queue;
- unsigned int online;
- /* Current assumption is that id matches smp_processor_id(). */
unsigned int id;
uint64_t mpidr;
};
-/* Obtain cpu_info for current executing CPU. */
-struct cpu_info *cpu_info(void);
-
-extern struct cpu_info *bsp_cpu_info;
-extern struct cpu_info cpu_infos[CONFIG_MAX_CPUS];
-
-static inline struct cpu_info *cpu_info_for_cpu(unsigned int id)
-{
- return &cpu_infos[id];
-}
-
-/* Ran only by BSP at initial boot strapping. */
-static inline void cpu_set_bsp(void)
-{
- bsp_cpu_info = cpu_info();
-}
-
-static inline int cpu_is_bsp(void)
-{
- return cpu_info() == bsp_cpu_info;
-}
-
-static inline int cpu_online(struct cpu_info *ci)
-{
- return load_acquire(&ci->online) != 0;
-}
-
-static inline void cpu_mark_online(struct cpu_info *ci)
-{
- ci->mpidr = read_affinity_mpidr();
- store_release(&ci->online, 1);
-}
-
-/* Provide number of CPUs online. */
-size_t cpus_online(void);
-
-/* Control routines for starting CPUs. */
-struct cpu_control_ops {
- /* Return the maximum number of CPUs supported. */
- size_t (*total_cpus)(void);
- /*
- * Start the requested CPU and have it start running entry().
- * Returns 0 on success, < 0 on error.
- */
- int (*start_cpu)(unsigned int id, void (*entry)(void));
-};
-
-/*
- * Initialize all DEVICE_PATH_CPUS under the DEVICE_PATH_CPU_CLUSTER cluster.
- * type DEVICE_PATH_CPUS. Start up is controlled by cntrl_ops.
- */
-void arch_initialize_cpus(device_t cluster, struct cpu_control_ops *cntrl_ops);
-
-/*
- * Run cpu_action returning < 0 on error, 0 on success. There are synchronous
- * and asynchronous methods. Both cases ensure the action has been picked up
- * by the target cpu. The synchronous variants will wait for the action to
- * be completed before returning.
- *
- * Though the current implementation allows queuing actions on the main cpu,
- * the main cpu doesn't process its own queue.
- */
-int arch_run_on_cpu(unsigned int cpu, struct cpu_action *action);
-int arch_run_on_all_cpus(struct cpu_action *action);
-int arch_run_on_all_cpus_but_self(struct cpu_action *action);
-int arch_run_on_cpu_async(unsigned int cpu, struct cpu_action *action);
-int arch_run_on_all_cpus_async(struct cpu_action *action);
-int arch_run_on_all_cpus_but_self_async(struct cpu_action *action);
-
-/* Wait for actions to be perfomed. */
-void arch_cpu_wait_for_action(void);
+/* Initialize CPU0 under the DEVICE_PATH_CPU_CLUSTER cluster. */
+void arch_initialize_cpu(device_t cluster);
#endif /* !__PRE_RAM__ */
-/*
- * Returns logical cpu in range [0:MAX_CPUS). SoC should define this.
- * Additionally, this is needed early in arm64 init so it should not
- * rely on a stack. Standard clobber list is fair game: x0-x7 and x0
- * returns the logical cpu number.
- */
-unsigned int smp_processor_id(void);
-
-/*
- * Stages and rmodules have 2 entry points: BSP and non-BSP. Provided
- * a pointer the correct non-BSP entry point will be returned. The
- * first instruction is for BSP and the 2nd is for non-BSP. Instructions
- * are all 32-bit on arm64.
- */
-static inline void *secondary_entry_point(void *e)
-{
- uintptr_t nonbsp = (uintptr_t)e;
-
- return (void *)(nonbsp + sizeof(uint32_t));
-}
+static inline unsigned int smp_processor_id(void) { return 0; }
/*
- * The arm64_cpu_startup() initializes a CPU's exception stack and regular
- * stack as well initializing the C environment for the processor. It
- * calls into the array of function pointers at symbol c_entry depending
- * on BSP state. Note that arm64_cpu_startup contains secondary entry
- * point which can be obtained by secondary_entry_point().
+ * The arm64_cpu_startup() initializes CPU's exception stack and regular
+ * stack as well initializing the C environment for the processor. Finally it
+ * calls into c_entry.
*/
void arm64_cpu_startup(void);
/*
- * The arm64_cpu_startup_resume() initializes a CPU's exception stack and
- * regular stack as well initializing the C environment for the processor. It
- * calls into the array of function pointers at symbol c_entry depending
- * on BSP state. Note that arm64_cpu_startup contains secondary entry
- * point which can be obtained by secondary_entry_point().
- * Additionally, it also restores saved register data and enables MMU, caches
- * and exceptions before jumping to C environment for both BSP and non-BSP CPUs.
- */
-void arm64_cpu_startup_resume(void);
-
-/*
- * The arm64_arch_timer_init() initializes the per CPU's cntfrq register of
+ * The arm64_arch_timer_init() initializes the CPU's cntfrq register of
* ARM arch timer.
*/
void arm64_arch_timer_init(void);
diff --git a/src/arch/arm64/include/armv8/arch/smp/spinlock.h b/src/arch/arm64/include/armv8/arch/smp/spinlock.h
deleted file mode 100644
index 10278e7..0000000
--- a/src/arch/arm64/include/armv8/arch/smp/spinlock.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#ifndef ARCH_SMP_SPINLOCK_H
-#define ARCH_SMP_SPINLOCK_H
-
-#include <arch/barrier.h>
-#include <stdint.h>
-
-typedef struct {
- volatile uint32_t lock;
-} spinlock_t;
-
-#define SPIN_LOCK_UNLOCKED (spinlock_t) { 0 }
-#define DECLARE_SPIN_LOCK(x) static spinlock_t x = SPIN_LOCK_UNLOCKED;
-
-static inline void spin_lock(spinlock_t *spin)
-{
- while (1) {
- if (load_acquire_exclusive(&spin->lock) != 0)
- continue;
- if (store_release_exclusive(&spin->lock, 1))
- break;
- }
-}
-
-static inline void spin_unlock(spinlock_t *spin)
-{
- store_release(&spin->lock, 0);
-}
-
-#endif
diff --git a/src/arch/arm64/stage_entry.S b/src/arch/arm64/stage_entry.S
index 79db9dd..7f113fb 100644
--- a/src/arch/arm64/stage_entry.S
+++ b/src/arch/arm64/stage_entry.S
@@ -15,51 +15,41 @@
/*
* ======================== stage_entry.S =====================================
- * This file acts as an entry point to the different stages of arm64 as well as
- * for the secure monitor. They share the same process of setting up stacks and
- * jumping to c code. It is important to save x25 from corruption as it contains
- * the argument for secure monitor.
+ * This file acts as an entry point to the different stages of arm64. They share
+ * the same process of setting up stacks and jumping to c code. It is important
+ * to save x25 from corruption as it contains the argument for rmodule.
* =============================================================================
*/
#include <arch/asm.h>
#define __ASSEMBLY__
#include <arch/lib_helpers.h>
-#include <arch/startup.h>
#define STACK_SZ CONFIG_STACK_SIZE
#define EXCEPTION_STACK_SZ CONFIG_STACK_SIZE
/*
- * The stacks for each of the armv8 cores grows down from _estack. It is sized
- * according to MAX_CPUS. Additionally provide exception stacks for each CPU.
+ * Stack for armv8 CPU grows down from _estack. Additionally, provide exception
+ * stack for the CPU.
*/
.section .bss, "aw", @nobits
-.global _arm64_startup_data
-.balign 8
-_arm64_startup_data:
-.space NUM_ELEMENTS*PER_ELEMENT_SIZE_BYTES
-
.global _stack
.global _estack
.balign STACK_SZ
_stack:
-.space CONFIG_MAX_CPUS*STACK_SZ
+.space STACK_SZ
_estack:
.global _stack_exceptions
.global _estack_exceptions
.balign EXCEPTION_STACK_SZ
_stack_exceptions:
-.space CONFIG_MAX_CPUS*EXCEPTION_STACK_SZ
+.space EXCEPTION_STACK_SZ
_estack_exceptions:
ENTRY(cpu_get_stack)
- mov x1, #STACK_SZ
- mul x0, x0, x1
- ldr x1, 1f
- sub x0, x1, x0
+ ldr x0, 1f
ret
.align 3
1:
@@ -67,10 +57,7 @@ ENTRY(cpu_get_stack)
ENDPROC(cpu_get_stack)
ENTRY(cpu_get_exception_stack)
- mov x1, #EXCEPTION_STACK_SZ
- mul x0, x0, x1
- ldr x1, 1f
- sub x0, x1, x0
+ ldr x0, 1f
ret
.align 3
1:
@@ -87,11 +74,7 @@ ENDPROC(cpu_get_exception_stack)
* any rmodules.
*/
ENTRY(arm64_c_environment)
- bl smp_processor_id /* x0 = cpu */
- mov x24, x0
-
-
- /* Set the exception stack for this cpu. */
+ /* Set the exception stack for the cpu. */
bl cpu_get_exception_stack
msr SPSel, #1
isb
@@ -101,16 +84,12 @@ ENTRY(arm64_c_environment)
msr SPSel, #0
isb
- /* Set stack for this cpu. */
- mov x0, x24 /* x0 = cpu */
+ /* Set the non-exception stack for the cpu. */
bl cpu_get_stack
mov sp, x0
/* Get entry point by dereferencing c_entry. */
ldr x1, 1f
- /* Retrieve entry in c_entry array using x26 as the index. */
- adds x1, x1, x26, lsl #3
- ldr x1, [x1]
/* Move back the arguments from x25 to x0 */
mov x0, x25
br x1
@@ -119,21 +98,7 @@ ENTRY(arm64_c_environment)
.quad c_entry
ENDPROC(arm64_c_environment)
-/* The first 2 instructions are for BSP and secondary CPUs,
- * respectively. x26 holds the index into c_entry array. */
-.macro split_bsp_path
- b 2000f
- b 2001f
- 2000:
- mov x26, #0
- b 2002f
- 2001:
- mov x26, #1
- 2002:
-.endm
-
ENTRY(_start)
- split_bsp_path
/* Save any arguments to current rmodule in x25 */
mov x25, x0
b arm64_c_environment
@@ -153,77 +118,12 @@ ENDPROC(_start)
write_current sctlr, x0, x1
.endm
-/*
- * This macro assumes x2 has base address and returns value read in x0
- * x1 is used as temporary register.
- */
-.macro get_element_addr index
- add x1, x2, #(\index * PER_ELEMENT_SIZE_BYTES)
- ldr x0, [x1]
-.endm
-
-/*
- * Uses following registers:
- * x0 = reading stored value
- * x1 = temp reg
- * x2 = base address of saved data region
- */
-.macro startup_restore
- adr x2, _arm64_startup_data
-
- get_element_addr MAIR_INDEX
- write_current mair, x0, x1
-
- get_element_addr TCR_INDEX
- write_current tcr, x0, x1
-
- get_element_addr TTBR0_INDEX
- write_current ttbr0, x0, x1
-
- get_element_addr SCR_INDEX
- write_el3 scr, x0, x1
-
- get_element_addr VBAR_INDEX
- write_current vbar, x0, x1
-
- get_element_addr CNTFRQ_INDEX
- write_el0 cntfrq, x0, x1
-
- get_element_addr CPTR_INDEX
- write_el3 cptr, x0, x1
-
- get_element_addr CPACR_INDEX
- write_el1 cpacr, x0, x1
-
- dsb sy
- isb
-
- tlbiall_current x1
- read_current x0, sctlr
- orr x0, x0, #(1 << 12) /* Enable Instruction Cache */
- orr x0, x0, #(1 << 2) /* Enable Data/Unified Cache */
- orr x0, x0, #(1 << 0) /* Enable MMU */
- write_current sctlr, x0, x1
-
- dsb sy
- isb
-.endm
-
CPU_RESET_ENTRY(arm64_cpu_startup)
- split_bsp_path
bl arm64_cpu_early_setup
setup_sctlr
b arm64_c_environment
ENDPROC(arm64_cpu_startup)
-CPU_RESET_ENTRY(arm64_cpu_startup_resume)
- split_bsp_path
- bl arm64_cpu_early_setup
- setup_sctlr
- startup_restore
- b arm64_c_environment
-ENDPROC(arm64_cpu_startup_resume)
-
/*
* stage_entry is defined as a weak symbol to allow SoCs/CPUs to define a custom
* entry point to perform any fixups that need to be done immediately after
diff --git a/src/arch/arm64/startup.c b/src/arch/arm64/startup.c
deleted file mode 100644
index 6ffe3f9..0000000
--- a/src/arch/arm64/startup.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2014 Google Inc
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <arch/cache.h>
-#include <arch/lib_helpers.h>
-#include <arch/startup.h>
-#include <console/console.h>
-
-/* This space is defined in stage_entry.S. */
-extern u8 _arm64_startup_data[];
-
-static inline void save_element(size_t index, uint64_t val)
-{
- uint64_t *ptr = (uint64_t *)_arm64_startup_data;
-
- ptr[index] = val;
-}
-
-/*
- * startup_save_cpu_data is used to save register values that need to be setup
- * when a CPU starts booting. This is used by secondary CPUs as well as resume
- * path to directly setup MMU and other related registers.
- */
-void startup_save_cpu_data(void)
-{
- save_element(MAIR_INDEX, raw_read_mair_current());
- save_element(TCR_INDEX, raw_read_tcr_current());
- save_element(TTBR0_INDEX, raw_read_ttbr0_current());
- save_element(VBAR_INDEX, raw_read_vbar_current());
- save_element(CNTFRQ_INDEX, raw_read_cntfrq_el0());
- save_element(CPACR_INDEX, raw_read_cpacr_el1());
-
- if (get_current_el() == EL3) {
- save_element(SCR_INDEX, raw_read_scr_el3());
- save_element(CPTR_INDEX, raw_read_cptr_el3());
- }
-
- dcache_clean_by_mva(_arm64_startup_data,
- NUM_ELEMENTS * PER_ELEMENT_SIZE_BYTES);
-}
diff --git a/src/mainboard/google/rush/devicetree.cb b/src/mainboard/google/rush/devicetree.cb
index fa25e1f..40c4ec3 100644
--- a/src/mainboard/google/rush/devicetree.cb
+++ b/src/mainboard/google/rush/devicetree.cb
@@ -16,7 +16,6 @@
chip soc/nvidia/tegra132
device cpu_cluster 0 on
device cpu 0 on end
- device cpu 1 on end
end
register "display_controller" = "TEGRA_ARM_DISPLAYA"
diff --git a/src/soc/nvidia/tegra132/Kconfig b/src/soc/nvidia/tegra132/Kconfig
index 4420e52..cb6798c 100644
--- a/src/soc/nvidia/tegra132/Kconfig
+++ b/src/soc/nvidia/tegra132/Kconfig
@@ -12,7 +12,6 @@ config SOC_NVIDIA_TEGRA132
select HAVE_HARD_RESET
select HAVE_UART_SPECIAL
select ARM_BOOTBLOCK_CUSTOM
- select SMP
select GENERIC_GPIO_LIB
select HAS_PRECBMEM_TIMESTAMP_REGION
diff --git a/src/soc/nvidia/tegra132/Makefile.inc b/src/soc/nvidia/tegra132/Makefile.inc
index 592c34f..22ccba5 100644
--- a/src/soc/nvidia/tegra132/Makefile.inc
+++ b/src/soc/nvidia/tegra132/Makefile.inc
@@ -61,7 +61,6 @@ ramstage-y += 32bit_reset.S
ramstage-y += addressmap.c
ramstage-y += cbmem.c
ramstage-y += cpu.c
-ramstage-y += cpu_lib.S
ramstage-y += clock.c
ramstage-$(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT) += dc.c
ramstage-$(CONFIG_MAINBOARD_DO_DSI_INIT) += dsi.c
diff --git a/src/soc/nvidia/tegra132/cpu_lib.S b/src/soc/nvidia/tegra132/cpu_lib.S
deleted file mode 100644
index 9040643..0000000
--- a/src/soc/nvidia/tegra132/cpu_lib.S
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright 2014 Google Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-
-.text
-.global smp_processor_id
-smp_processor_id:
- /* Core 0 and 1 are encoded in the Aff0 (7:0) field of MPIDR_EL1. */
- mrs x0, mpidr_el1
- uxtb w0, w0
- ret
diff --git a/src/soc/nvidia/tegra132/soc.c b/src/soc/nvidia/tegra132/soc.c
index 99896be..8eabd39 100644
--- a/src/soc/nvidia/tegra132/soc.c
+++ b/src/soc/nvidia/tegra132/soc.c
@@ -55,25 +55,6 @@ static void soc_read_resources(device_t dev)
ram_resource(dev, index++, begin * KiB, size * KiB);
}
-static size_t cntrl_total_cpus(void)
-{
- return CONFIG_MAX_CPUS;
-}
-
-static int cntrl_start_cpu(unsigned int id, void (*entry)(void))
-{
- if (id != 1)
- return -1;
- start_cpu(1, entry);
- return 0;
-}
-
-static struct cpu_control_ops cntrl_ops = {
- .total_cpus = cntrl_total_cpus,
- .start_cpu = cntrl_start_cpu,
-};
-
-
static void lock_down_vpr(void)
{
struct tegra_mc_regs *regs = (void *)(uintptr_t)TEGRA_MC_BASE;
@@ -87,7 +68,7 @@ static void soc_init(device_t dev)
{
clock_init_arm_generic_timer();
- arch_initialize_cpus(dev, &cntrl_ops);
+ arch_initialize_cpu(dev);
/* Lock down VPR */
lock_down_vpr();
diff --git a/src/soc/nvidia/tegra210/Makefile.inc b/src/soc/nvidia/tegra210/Makefile.inc
index 2898cec..84d59d7 100644
--- a/src/soc/nvidia/tegra210/Makefile.inc
+++ b/src/soc/nvidia/tegra210/Makefile.inc
@@ -64,7 +64,6 @@ romstage-$(CONFIG_DRIVERS_UART) += uart.c
ramstage-y += addressmap.c
ramstage-y += cbmem.c
ramstage-y += cpu.c
-ramstage-y += cpu_lib.S
ramstage-y += clock.c
ramstage-$(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT) += dc.c
ramstage-$(CONFIG_MAINBOARD_DO_DSI_INIT) += dsi.c
diff --git a/src/soc/nvidia/tegra210/cpu_lib.S b/src/soc/nvidia/tegra210/cpu_lib.S
deleted file mode 100644
index 9040643..0000000
--- a/src/soc/nvidia/tegra210/cpu_lib.S
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright 2014 Google Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-
-.text
-.global smp_processor_id
-smp_processor_id:
- /* Core 0 and 1 are encoded in the Aff0 (7:0) field of MPIDR_EL1. */
- mrs x0, mpidr_el1
- uxtb w0, w0
- ret
diff --git a/src/soc/nvidia/tegra210/soc.c b/src/soc/nvidia/tegra210/soc.c
index 871c148..bcbef49 100644
--- a/src/soc/nvidia/tegra210/soc.c
+++ b/src/soc/nvidia/tegra210/soc.c
@@ -58,30 +58,11 @@ static void soc_read_resources(device_t dev)
ram_resource(dev, index++, begin * KiB, size * KiB);
}
-static size_t cntrl_total_cpus(void)
-{
- return CONFIG_MAX_CPUS;
-}
-
-static int cntrl_start_cpu(unsigned int id, void (*entry)(void))
-{
- if (id >= CONFIG_MAX_CPUS)
- return -1;
- start_cpu(id, entry);
- return 0;
-}
-
-static struct cpu_control_ops cntrl_ops = {
- .total_cpus = cntrl_total_cpus,
- .start_cpu = cntrl_start_cpu,
-};
-
-
static void soc_init(device_t dev)
{
clock_init_arm_generic_timer();
- arch_initialize_cpus(dev, &cntrl_ops);
+ arch_initialize_cpu(dev);
if (!IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT))
return;
@@ -132,9 +113,8 @@ struct chip_operations soc_nvidia_tegra210_ops = {
static void tegra210_cpu_init(device_t cpu)
{
- if (cpu_is_bsp())
- if (tegra210_run_mtc() != 0)
- printk(BIOS_ERR, "MTC: No training data.\n");
+ if (tegra210_run_mtc() != 0)
+ printk(BIOS_ERR, "MTC: No training data.\n");
}
static const struct cpu_device_id ids[] = {
Alexandru Gagniuc (mr.nuke.me(a)gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/12356
-gerrit
commit 359b34e286bce47abcfa30bae95b3ef849bf50a7
Author: Alexandru Gagniuc <mr.nuke.me(a)gmail.com>
Date: Fri Nov 6 15:55:46 2015 -0800
src/console: Link die.c in bootblock without BOOTBLOCK_CONSOLE
Without BOOTBLOCK_CONSOLE any call to die() fails due to die() symbol
not being defined at link time. die() is not is dependent on the
console backend, and can function without it (the prink gets no-oped).
Change-Id: I6cecafb576c3b1e901f3927c777f6282174fb259
Signed-off-by: Alexandru Gagniuc <mr.nuke.me(a)gmail.com>
---
src/console/Makefile.inc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/console/Makefile.inc b/src/console/Makefile.inc
index a5f4318..0c61123 100644
--- a/src/console/Makefile.inc
+++ b/src/console/Makefile.inc
@@ -20,7 +20,7 @@ romstage-y += die.c
bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += vtxprintf.c printk.c
bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += init.c console.c
-bootblock-$(CONFIG_BOOTBLOCK_CONSOLE) += die.c
+bootblock-y += die.c
secmon-y += vtxprintf.c printk.c
secmon-y += init.c console.c
Paul Menzel (paulepanter(a)users.sourceforge.net) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/12355
-gerrit
commit d62fed549d2b28ebbbb57eec8314efeabfa3c224
Author: Paul Menzel <paulepanter(a)users.sourceforge.net>
Date: Sat Nov 7 00:07:05 2015 +0100
[RFC] mainboard: Remove empty mainboard.c files
Change-Id: I379e4b1e1b1725648c6231bc6954ac3cc655a596
Signed-off-by: Paul Menzel <paulepanter(a)users.sourceforge.net>
---
src/mainboard/aaeon/pfm-540i_revb/mainboard.c | 32 -----------------------
src/mainboard/amd/db800/mainboard.c | 32 -----------------------
src/mainboard/amd/norwich/mainboard.c | 32 -----------------------
src/mainboard/asus/dsbf/mainboard.c | 31 ----------------------
src/mainboard/asus/m2n-e/mainboard.c | 26 -------------------
src/mainboard/digitallogic/msm800sev/mainboard.c | 32 -----------------------
src/mainboard/dmp/vortex86ex/mainboard.c | 31 ----------------------
src/mainboard/emulation/qemu-armv7/mainboard.c | 26 -------------------
src/mainboard/gigabyte/m57sli/mainboard.c | 31 ----------------------
src/mainboard/intel/mohonpeak/mainboard.c | 30 ---------------------
src/mainboard/intel/sklrvp/mainboard.c | 21 ---------------
src/mainboard/iwave/iWRainbowG6/mainboard.c | 27 -------------------
src/mainboard/msi/ms7260/mainboard.c | 29 ---------------------
src/mainboard/msi/ms9282/mainboard.c | 31 ----------------------
src/mainboard/msi/ms9652_fam10/mainboard.c | 31 ----------------------
src/mainboard/nvidia/l1_2pvv/mainboard.c | 31 ----------------------
src/mainboard/pcengines/alix1c/mainboard.c | 32 -----------------------
src/mainboard/pcengines/alix2d/mainboard.c | 32 -----------------------
src/mainboard/rca/rm4100/mainboard.c | 32 -----------------------
src/mainboard/supermicro/x7db8/mainboard.c | 31 ----------------------
src/mainboard/traverse/geos/mainboard.c | 32 -----------------------
src/mainboard/winent/pl6064/mainboard.c | 32 -----------------------
src/mainboard/wyse/s50/mainboard.c | 33 ------------------------
23 files changed, 697 deletions(-)
diff --git a/src/mainboard/aaeon/pfm-540i_revb/mainboard.c b/src/mainboard/aaeon/pfm-540i_revb/mainboard.c
deleted file mode 100644
index 6f253dd..0000000
--- a/src/mainboard/aaeon/pfm-540i_revb/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Mark Norman <mpnorman(a)gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "AAEON PFM-540I_REVB ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "AAEON PFM-540I_REVB EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/amd/db800/mainboard.c b/src/mainboard/amd/db800/mainboard.c
deleted file mode 100644
index 8445b06..0000000
--- a/src/mainboard/amd/db800/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "AMD DB800 ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "AMD DB800 EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/amd/norwich/mainboard.c b/src/mainboard/amd/norwich/mainboard.c
deleted file mode 100644
index 59257a0..0000000
--- a/src/mainboard/amd/norwich/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "Norwich ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "Norwich EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/asus/dsbf/mainboard.c b/src/mainboard/asus/dsbf/mainboard.c
deleted file mode 100644
index a243940..0000000
--- a/src/mainboard/asus/dsbf/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Sven Schnelle <svens(a)stackframe.org>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <arch/io.h>
-#include <delay.h>
-#include <device/pci_def.h>
-#include <device/pci_ops.h>
-#include <arch/io.h>
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/asus/m2n-e/mainboard.c b/src/mainboard/asus/m2n-e/mainboard.c
deleted file mode 100644
index 48bf006..0000000
--- a/src/mainboard/asus/m2n-e/mainboard.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2010 Uwe Hermann <uwe(a)hermann-uwe.de>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/digitallogic/msm800sev/mainboard.c b/src/mainboard/digitallogic/msm800sev/mainboard.c
deleted file mode 100644
index 1b0cf8f..0000000
--- a/src/mainboard/digitallogic/msm800sev/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "MSM800SEV ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "MSM800SEV EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/dmp/vortex86ex/mainboard.c b/src/mainboard/dmp/vortex86ex/mainboard.c
deleted file mode 100644
index 485b467..0000000
--- a/src/mainboard/dmp/vortex86ex/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2013 DMP Electronics Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <device/pci.h>
-#include <arch/io.h>
-#include <boot/tables.h>
-#include <device/pci_def.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- CHIP_NAME("DMP VORTEX86EX Mainboard")
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/emulation/qemu-armv7/mainboard.c b/src/mainboard/emulation/qemu-armv7/mainboard.c
deleted file mode 100644
index 83a55e3..0000000
--- a/src/mainboard/emulation/qemu-armv7/mainboard.c
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2013 Google, Inc.
- *
- * This software is licensed under the terms of the GNU General Public
- * License version 2, as published by the Free Software Foundation, and
- * may be copied, distributed, and modified under those terms.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void mainboard_enable(device_t dev)
-{
- printk(BIOS_INFO, "Enable qemu/armv7 device...\n");
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/gigabyte/m57sli/mainboard.c b/src/mainboard/gigabyte/m57sli/mainboard.c
deleted file mode 100644
index 1f26995..0000000
--- a/src/mainboard/gigabyte/m57sli/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 AMD
- * Written by Yinghai Lu <yinghailu(a)amd.com> for AMD.
- * Copyright (C) 2010 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <device/pci.h>
-#include <device/pci_ids.h>
-#include <device/pci_ops.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/intel/mohonpeak/mainboard.c b/src/mainboard/intel/mohonpeak/mainboard.c
deleted file mode 100644
index 4ad16ec..0000000
--- a/src/mainboard/intel/mohonpeak/mainboard.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2011 The ChromiumOS Authors. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-
-/*
- * mainboard_enable is executed as first thing after enumerate_buses().
- * This is the earliest point to add customization.
- */
-static void mainboard_enable(device_t dev)
-{
-
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/intel/sklrvp/mainboard.c b/src/mainboard/intel/sklrvp/mainboard.c
deleted file mode 100644
index 0437b11..0000000
--- a/src/mainboard/intel/sklrvp/mainboard.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007-2009 coresystems GmbH
- * Copyright (C) 2013 Google Inc.
- * Copyright (C) 2015 Intel Corporation.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-
-struct chip_operations mainboard_ops = {
-};
diff --git a/src/mainboard/iwave/iWRainbowG6/mainboard.c b/src/mainboard/iwave/iWRainbowG6/mainboard.c
deleted file mode 100644
index 1645343..0000000
--- a/src/mainboard/iwave/iWRainbowG6/mainboard.c
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2009-2010 iWave Systems
- * Copyright (C) 2010 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-#include <console/console.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/msi/ms7260/mainboard.c b/src/mainboard/msi/ms7260/mainboard.c
deleted file mode 100644
index df669c2..0000000
--- a/src/mainboard/msi/ms7260/mainboard.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Uwe Hermann <uwe(a)hermann-uwe.de>
- * Copyright (C) 2007-2009 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-
-#if 0
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-#endif
-
-struct chip_operations mainboard_ops = {
- // .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/msi/ms9282/mainboard.c b/src/mainboard/msi/ms9282/mainboard.c
deleted file mode 100644
index 6e4631d..0000000
--- a/src/mainboard/msi/ms9282/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2006 MSI
- * Written by Bingxun Shi <bingxunshi(a)gmail.com> for MSI.
- * Copyright (C) 2007-2009 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <device/pci.h>
-#include <device/pci_ids.h>
-#include <device/pci_ops.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/msi/ms9652_fam10/mainboard.c b/src/mainboard/msi/ms9652_fam10/mainboard.c
deleted file mode 100644
index 5557014..0000000
--- a/src/mainboard/msi/ms9652_fam10/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 AMD
- * Written by Yinghai Lu <yinghailu(a)amd.com> for AMD.
- * Copyright (C) 2007-2009 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <device/pci.h>
-#include <device/pci_ids.h>
-#include <device/pci_ops.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/nvidia/l1_2pvv/mainboard.c b/src/mainboard/nvidia/l1_2pvv/mainboard.c
deleted file mode 100644
index 1f26995..0000000
--- a/src/mainboard/nvidia/l1_2pvv/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 AMD
- * Written by Yinghai Lu <yinghailu(a)amd.com> for AMD.
- * Copyright (C) 2010 coresystems GmbH
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <device/pci.h>
-#include <device/pci_ids.h>
-#include <device/pci_ops.h>
-
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/pcengines/alix1c/mainboard.c b/src/mainboard/pcengines/alix1c/mainboard.c
deleted file mode 100644
index e94c3cc..0000000
--- a/src/mainboard/pcengines/alix1c/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "ALIX1.C ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "ALIX1.C EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/pcengines/alix2d/mainboard.c b/src/mainboard/pcengines/alix2d/mainboard.c
deleted file mode 100644
index 11cc385..0000000
--- a/src/mainboard/pcengines/alix2d/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "ALIX.2D ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "ALIX.2D EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/rca/rm4100/mainboard.c b/src/mainboard/rca/rm4100/mainboard.c
deleted file mode 100644
index ad0e5f8..0000000
--- a/src/mainboard/rca/rm4100/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2008-2010 Joseph Smith <joe(a)settoplinux.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <device/device.h>
-
-static void mainboard_init(device_t dev)
-{
- // TODO Switch parport LEDs again
-}
-
-static void mainboard_enable(device_t dev)
-{
- // TODO Switch parport LEDs
- dev->ops->init = mainboard_init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/supermicro/x7db8/mainboard.c b/src/mainboard/supermicro/x7db8/mainboard.c
deleted file mode 100644
index a243940..0000000
--- a/src/mainboard/supermicro/x7db8/mainboard.c
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2011 Sven Schnelle <svens(a)stackframe.org>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-#include <arch/io.h>
-#include <delay.h>
-#include <device/pci_def.h>
-#include <device/pci_ops.h>
-#include <arch/io.h>
-
-static void mainboard_enable(device_t dev)
-{
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/traverse/geos/mainboard.c b/src/mainboard/traverse/geos/mainboard.c
deleted file mode 100644
index 115d911..0000000
--- a/src/mainboard/traverse/geos/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2007 Advanced Micro Devices, Inc.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "Geos ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "Geos EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/winent/pl6064/mainboard.c b/src/mainboard/winent/pl6064/mainboard.c
deleted file mode 100644
index f959f2a..0000000
--- a/src/mainboard/winent/pl6064/mainboard.c
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2010 Win Enterprises, Inc. (anishp(a)win-ent.com)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the license.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "Win Enterprises PL-6064/65 ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "Win Enterprises PL-6064/65 EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
diff --git a/src/mainboard/wyse/s50/mainboard.c b/src/mainboard/wyse/s50/mainboard.c
deleted file mode 100644
index 7b746e3..0000000
--- a/src/mainboard/wyse/s50/mainboard.c
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * This file is part of the coreboot project.
- *
- * Copyright (C) 2010 Nils Jacobs
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- */
-
-#include <console/console.h>
-#include <device/device.h>
-
-static void init(struct device *dev)
-{
- printk(BIOS_DEBUG, "S50 ENTER %s\n", __func__);
- printk(BIOS_DEBUG, "S50 EXIT %s\n", __func__);
-}
-
-static void mainboard_enable(struct device *dev)
-{
- dev->ops->init = init;
-}
-
-struct chip_operations mainboard_ops = {
- .enable_dev = mainboard_enable,
-};
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8036
-gerrit
commit 8d4017991f18aa54b68db7e02bcdb721e7d3a39b
Author: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
Date: Sat Jan 3 01:55:22 2015 +1100
Provide coreboot coding style formalisation file for clang-format
The Clang project has a powerful code rewrite engine in the form
of LibFormat. A auxiliary tool is provided called `clang-format'
that can take a coding style formalisation file and rewrite your
code to conform to this style. Further, a wrapper script called
`git-clang-format' is also provided that can hook pre-commits
potentially replacing our slow and poor coverage regexp scripts
on pre-commits.
Herein we provide essentially the Linux Style Guide formalism.
Change-Id: Ica2207fdb8a4702793fa73eba6293b7b36ea9050
Signed-off-by: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
---
.clang-format | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/.clang-format b/.clang-format
new file mode 100644
index 0000000..a3ef233
--- /dev/null
+++ b/.clang-format
@@ -0,0 +1,6 @@
+BasedOnStyle: LLVM
+IndentWidth: 8
+UseTab: Always
+BreakBeforeBraces: Linux
+AllowShortIfStatementsOnASingleLine: false
+IndentCaseLabels: false
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/8037
-gerrit
commit f22c29e0eb305e79ec0dc09772c668f9dd37fe76
Author: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
Date: Sat Jan 3 02:08:33 2015 +1100
util/gitconfig/pre-commit: Use clang-format to sanitise commits
Use the `git-format' tool to sanitise coreboot commits such that
they conform to coreboot's coding style.
This fancy piece of machinary allows one to have LibFormat from
Clang to automatically check your commit conforms to coreboot's
coding style, fix any issues automatically and provides you a
diff you may review and apply at your convenience.
N.B. When the `clang-format' binary is not found we issue a warning
that the test was skipped and carry on as usual. Hence, this is
strictly non-enforcing at this current time. You may use it at your
leisure.
Change-Id: If49017ea82f0707efd47cae5978a286a9af8f3b7
Signed-off-by: Edward O'Callaghan <eocallaghan(a)alterapraxis.com>
---
Makefile.inc | 8 ++-
util/gitconfig/pre-commit | 2 +-
util/lint/check-style | 143 ++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 151 insertions(+), 2 deletions(-)
diff --git a/Makefile.inc b/Makefile.inc
index de148cb..7b107fe 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -46,7 +46,7 @@ coreboot: build-dirs $(obj)/coreboot.rom $(obj)/cbfstool $(obj)/rmodtool
#######################################################################
# our phony targets
-PHONY+= clean-abuild coreboot lint lint-stable build-dirs
+PHONY+= clean-abuild coreboot check-style lint lint-stable build-dirs
#######################################################################
# root source directories of coreboot
@@ -418,6 +418,12 @@ printcrt0s:
update:
dongle.py -c /dev/term/1 $(obj)/coreboot.rom EOF
+check-style:
+ @grep "^# DESCR:" util/lint/check-style | sed "s,.*DESCR: *,,"
+ @echo "========"
+ @util/lint/check-style
+ @echo "========"
+
lint lint-stable:
util/lint/lint $@
diff --git a/util/gitconfig/pre-commit b/util/gitconfig/pre-commit
index 70cd6ea..45a3d1e 100755
--- a/util/gitconfig/pre-commit
+++ b/util/gitconfig/pre-commit
@@ -1,3 +1,3 @@
#!/bin/sh
-%MAKE% lint-stable
+%MAKE% check-style lint-stable
git diff --cached | util/lint/checkpatch.pl --no-signoff -q -
diff --git a/util/lint/check-style b/util/lint/check-style
new file mode 100755
index 0000000..1ac51b4
--- /dev/null
+++ b/util/lint/check-style
@@ -0,0 +1,143 @@
+#!/bin/bash
+# git pre-commit hook that runs an clang-format stylecheck.
+# Features:
+# - abort commit when commit does not comply with the style guidelines
+# - create a patch of the proposed style changes
+#
+# modifications for clang-format by rene.milk(a)wwu.de
+# This file is part of a set of unofficial pre-commit hooks available
+# at github.
+# Link: https://github.com/githubbrowser/Pre-commit-hooks
+# Contact: David Martin, david.martin.mailbox(a)googlemail.com
+
+# DESCR: Checking that VCS 'staged' source conforms to coding style
+
+##################################################################
+# SETTINGS
+# set path to clang-format binary
+CLANG_FORMAT="/usr/bin/clang-format"
+
+# remove any older patches from previous commits. Set to true or false.
+# DELETE_OLD_PATCHES=false
+DELETE_OLD_PATCHES=false
+
+# only parse files with the extensions in FILE_EXTS. Set to true or false.
+# if false every changed file in the commit will be parsed with clang-format.
+# if true only files matching one of the extensions are parsed with clang-format.
+# PARSE_EXTS=true
+PARSE_EXTS=true
+
+# file types to parse. Only effective when PARSE_EXTS is true.
+# FILE_EXTS=".c .h .cpp .hpp"
+FILE_EXTS=".c .h .cpp .hpp .cc .hh .cxx"
+
+##################################################################
+# There should be no need to change anything below this line.
+
+# Reference: http://stackoverflow.com/questions/1055671/how-can-i-get-the-behavior-of-gn…
+canonicalize_filename () {
+ local target_file=$1
+ local physical_directory=""
+ local result=""
+
+ # Need to restore the working directory after work.
+ pushd `pwd` > /dev/null
+
+ cd "$(dirname "$target_file")"
+ target_file=`basename $target_file`
+
+ # Iterate down a (possible) chain of symlinks
+ while [ -L "$target_file" ]
+ do
+ target_file=$(readlink "$target_file")
+ cd "$(dirname "$target_file")"
+ target_file=$(basename "$target_file")
+ done
+
+ # Compute the canonicalized name by finding the physical path
+ # for the directory we're in and appending the target file.
+ physical_directory=`pwd -P`
+ result="$physical_directory"/"$target_file"
+
+ # restore the working directory after work.
+ popd > /dev/null
+
+ echo "$result"
+}
+
+# exit on error
+set -e
+
+# check whether the given file matches any of the set extensions
+matches_extension() {
+ local filename=$(basename "$1")
+ local extension=".${filename##*.}"
+ local ext
+
+ for ext in $FILE_EXTS; do [[ "$ext" == "$extension" ]] && return 0; done
+
+ return 1
+}
+
+# necessary check for initial commit
+if git rev-parse --verify HEAD >/dev/null 2>&1 ; then
+ against=HEAD
+else
+ # Initial commit: diff against an empty tree object
+ against=4b825dc642cb6eb9a060e54bf8d69288fbee4904
+fi
+
+if [ ! -x "$CLANG_FORMAT" ] ; then
+ printf "Warning: clang-format executable not found.\n"
+ printf "Set the correct path in $(canonicalize_filename "$0").\n"
+ printf "Skipping clang-format style check test.\n"
+# exit 1
+ exit 0
+fi
+
+# create a random filename to store our generated patch
+prefix="pre-commit-clang-format"
+suffix="$(date +%s)"
+patch="/tmp/$prefix-$suffix.patch"
+
+# clean up any older clang-format patches
+$DELETE_OLD_PATCHES && rm -f /tmp/$prefix*.patch
+
+# create one patch containing all changes to the files
+git diff-index --cached --diff-filter=ACMR --name-only $against -- | while read file;
+do
+ # ignore file if we do check for file extensions and the file
+ # does not match any of the extensions specified in $FILE_EXTS
+ if $PARSE_EXTS && ! matches_extension "$file"; then
+ continue;
+ fi
+
+ # clang-format our sourcefile, create a patch with diff and append it to our $patch
+ # The sed call is necessary to transform the patch from
+ # --- $file timestamp
+ # +++ - timestamp
+ # to both lines working on the same file and having a a/ and b/ prefix.
+ # Else it can not be applied with 'git apply'.
+ "$CLANG_FORMAT" -style=file "$file" | \
+ diff -u "$file" - | \
+ sed -e "1s|--- |--- a/|" -e "2s|+++ -|+++ b/$file|" >> "$patch"
+done
+
+# if no patch has been generated all is ok, clean up the file stub and exit
+if [ ! -s "$patch" ] ; then
+ printf "Files in this commit comply with the clang-format rules.\n"
+ rm -f "$patch"
+ exit 0
+fi
+
+# a patch has been created, notify the user and exit
+printf "\nThe following differences were found between the code to commit "
+printf "and the clang-format rules:\n\n"
+cat "$patch"
+
+printf "\nYou can apply these changes with:\n git apply $patch\n"
+printf "(may need to be called from the root directory of your repository)\n"
+printf "Aborting commit. Apply changes and commit again or skip checking with"
+printf " --no-verify (not recommended).\n"
+
+exit 1
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/12354
-gerrit
commit 21bc68b86124305466fd9bdbb7bcfb629bb6613f
Author: Patrick Georgi <pgeorgi(a)chromium.org>
Date: Fri Nov 6 22:40:57 2015 +0100
mainboard/**/irq_tables.c: Remove reference to getpir
The obsolete and removed getpir utility remarked in its output that the
data is autogenerated. The tool was removed because it wasn't very
reliable, so there's no need to point that anymore.
Change-Id: I5d624931ba7872b1fefa8fa3c270ae7367e069fa
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
---
src/mainboard/amd/dbm690t/irq_tables.c | 6 ------
src/mainboard/amd/mahogany/irq_tables.c | 6 ------
src/mainboard/amd/pistachio/irq_tables.c | 6 ------
src/mainboard/amd/rumba/irq_tables.c | 7 -------
src/mainboard/amd/serengeti_cheetah/irq_tables.c | 6 ------
src/mainboard/asrock/939a785gmh/irq_tables.c | 6 ------
src/mainboard/asus/mew-vm/irq_tables.c | 7 -------
src/mainboard/broadcom/blast/irq_tables.c | 6 ------
src/mainboard/digitallogic/adl855pc/irq_tables.c | 7 -------
src/mainboard/emulation/qemu-i440fx/irq_tables.c | 7 -------
src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c | 6 ------
src/mainboard/gigabyte/m57sli/irq_tables.c | 6 ------
src/mainboard/hp/dl145_g1/irq_tables.c | 6 ------
src/mainboard/hp/dl145_g3/irq_tables.c | 9 ---------
src/mainboard/hp/dl165_g6_fam10/irq_tables.c | 9 ---------
src/mainboard/iwill/dk8_htx/irq_tables.c | 6 ------
src/mainboard/iwill/dk8s2/irq_tables.c | 7 -------
src/mainboard/kontron/kt690/irq_tables.c | 6 ------
src/mainboard/lippert/frontrunner/irq_tables.c | 7 -------
src/mainboard/msi/ms9185/irq_tables.c | 6 ------
src/mainboard/msi/ms9282/irq_tables.c | 6 ------
src/mainboard/msi/ms9652_fam10/irq_tables.c | 6 ------
src/mainboard/nvidia/l1_2pvv/irq_tables.c | 6 ------
src/mainboard/siemens/sitemp_g1p1/irq_tables.c | 6 ------
src/mainboard/sunw/ultra40/irq_tables.c | 6 ------
src/mainboard/sunw/ultra40m2/irq_tables.c | 6 ------
src/mainboard/supermicro/h8dme/irq_tables.c | 6 ------
src/mainboard/supermicro/h8dmr/irq_tables.c | 6 ------
src/mainboard/supermicro/h8dmr_fam10/irq_tables.c | 6 ------
src/mainboard/supermicro/h8qme_fam10/irq_tables.c | 6 ------
src/mainboard/technexion/tim5690/irq_tables.c | 6 ------
src/mainboard/technexion/tim8690/irq_tables.c | 6 ------
src/mainboard/tyan/s2735/irq_tables.c | 7 -------
src/mainboard/tyan/s2850/irq_tables.c | 7 -------
src/mainboard/tyan/s2875/irq_tables.c | 7 -------
src/mainboard/tyan/s2880/irq_tables.c | 7 -------
src/mainboard/tyan/s2881/irq_tables.c | 6 ------
src/mainboard/tyan/s2882/irq_tables.c | 6 ------
src/mainboard/tyan/s2885/irq_tables.c | 6 ------
src/mainboard/tyan/s2891/irq_tables.c | 6 ------
src/mainboard/tyan/s2892/irq_tables.c | 6 ------
src/mainboard/tyan/s2895/irq_tables.c | 6 ------
src/mainboard/tyan/s2912/irq_tables.c | 6 ------
src/mainboard/tyan/s2912_fam10/irq_tables.c | 6 ------
src/mainboard/tyan/s4880/irq_tables.c | 7 -------
src/mainboard/tyan/s4882/irq_tables.c | 7 -------
src/mainboard/winent/mb6047/irq_tables.c | 6 ------
47 files changed, 300 deletions(-)
diff --git a/src/mainboard/amd/dbm690t/irq_tables.c b/src/mainboard/amd/dbm690t/irq_tables.c
index 2019547..f2be994 100644
--- a/src/mainboard/amd/dbm690t/irq_tables.c
+++ b/src/mainboard/amd/dbm690t/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/amd/mahogany/irq_tables.c b/src/mainboard/amd/mahogany/irq_tables.c
index 564b7d0..80bfbb4 100644
--- a/src/mainboard/amd/mahogany/irq_tables.c
+++ b/src/mainboard/amd/mahogany/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/amd/pistachio/irq_tables.c b/src/mainboard/amd/pistachio/irq_tables.c
index 4d26cf7..940b1aa 100644
--- a/src/mainboard/amd/pistachio/irq_tables.c
+++ b/src/mainboard/amd/pistachio/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/amd/rumba/irq_tables.c b/src/mainboard/amd/rumba/irq_tables.c
index 5c045cc..2e0d9d6 100644
--- a/src/mainboard/amd/rumba/irq_tables.c
+++ b/src/mainboard/amd/rumba/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory, which BIOS sets up
- *
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
/* Platform IRQs */
diff --git a/src/mainboard/amd/serengeti_cheetah/irq_tables.c b/src/mainboard/amd/serengeti_cheetah/irq_tables.c
index 4d42f47..9a359e3 100644
--- a/src/mainboard/amd/serengeti_cheetah/irq_tables.c
+++ b/src/mainboard/amd/serengeti_cheetah/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/asrock/939a785gmh/irq_tables.c b/src/mainboard/asrock/939a785gmh/irq_tables.c
index 564b7d0..80bfbb4 100644
--- a/src/mainboard/asrock/939a785gmh/irq_tables.c
+++ b/src/mainboard/asrock/939a785gmh/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/asus/mew-vm/irq_tables.c b/src/mainboard/asus/mew-vm/irq_tables.c
index 4fbf122..3d8bebe 100644
--- a/src/mainboard/asus/mew-vm/irq_tables.c
+++ b/src/mainboard/asus/mew-vm/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory, which BIOS sets up
- *
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/broadcom/blast/irq_tables.c b/src/mainboard/broadcom/blast/irq_tables.c
index 1f39adf..d5b7352 100644
--- a/src/mainboard/broadcom/blast/irq_tables.c
+++ b/src/mainboard/broadcom/blast/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/digitallogic/adl855pc/irq_tables.c b/src/mainboard/digitallogic/adl855pc/irq_tables.c
index 94adba1..5cbee86 100644
--- a/src/mainboard/digitallogic/adl855pc/irq_tables.c
+++ b/src/mainboard/digitallogic/adl855pc/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/emulation/qemu-i440fx/irq_tables.c b/src/mainboard/emulation/qemu-i440fx/irq_tables.c
index 21eeabf..daa6782 100644
--- a/src/mainboard/emulation/qemu-i440fx/irq_tables.c
+++ b/src/mainboard/emulation/qemu-i440fx/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory, which BIOS sets up
- *
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c b/src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c
index 2d282ae..d724a51 100644
--- a/src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c
+++ b/src/mainboard/gigabyte/ga_2761gxdk/irq_tables.c
@@ -17,12 +17,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/gigabyte/m57sli/irq_tables.c b/src/mainboard/gigabyte/m57sli/irq_tables.c
index 1037153..7c717f1 100644
--- a/src/mainboard/gigabyte/m57sli/irq_tables.c
+++ b/src/mainboard/gigabyte/m57sli/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/hp/dl145_g1/irq_tables.c b/src/mainboard/hp/dl145_g1/irq_tables.c
index f5e19cd..1cb5fa9 100644
--- a/src/mainboard/hp/dl145_g1/irq_tables.c
+++ b/src/mainboard/hp/dl145_g1/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/hp/dl145_g3/irq_tables.c b/src/mainboard/hp/dl145_g3/irq_tables.c
index b5ea725..3e256b7 100644
--- a/src/mainboard/hp/dl145_g3/irq_tables.c
+++ b/src/mainboard/hp/dl145_g3/irq_tables.c
@@ -1,12 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- *
- * Contains the IRQ Routing Table dumped directly from your
- * memory, which BIOS sets up.
- *
- * Documentation at: http://www.microsoft.com/whdc/archive/pciirq.mspx
- */
-
#ifdef GETPIR
#include "pirq_routing.h"
#else
diff --git a/src/mainboard/hp/dl165_g6_fam10/irq_tables.c b/src/mainboard/hp/dl165_g6_fam10/irq_tables.c
index 1784aec..d589c9e 100644
--- a/src/mainboard/hp/dl165_g6_fam10/irq_tables.c
+++ b/src/mainboard/hp/dl165_g6_fam10/irq_tables.c
@@ -1,12 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- *
- * Contains the IRQ Routing Table dumped directly from your
- * memory, which BIOS sets up.
- *
- * Documentation at: http://www.microsoft.com/whdc/archive/pciirq.mspx
- */
-
#ifdef GETPIR
#include "pirq_routing.h"
#else
diff --git a/src/mainboard/iwill/dk8_htx/irq_tables.c b/src/mainboard/iwill/dk8_htx/irq_tables.c
index 4d42f47..9a359e3 100644
--- a/src/mainboard/iwill/dk8_htx/irq_tables.c
+++ b/src/mainboard/iwill/dk8_htx/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/iwill/dk8s2/irq_tables.c b/src/mainboard/iwill/dk8s2/irq_tables.c
index 3e1424c..b86e602 100644
--- a/src/mainboard/iwill/dk8s2/irq_tables.c
+++ b/src/mainboard/iwill/dk8s2/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory, which BIOS sets up
- *
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/kontron/kt690/irq_tables.c b/src/mainboard/kontron/kt690/irq_tables.c
index 2019547..f2be994 100644
--- a/src/mainboard/kontron/kt690/irq_tables.c
+++ b/src/mainboard/kontron/kt690/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/lippert/frontrunner/irq_tables.c b/src/mainboard/lippert/frontrunner/irq_tables.c
index 5c045cc..2e0d9d6 100644
--- a/src/mainboard/lippert/frontrunner/irq_tables.c
+++ b/src/mainboard/lippert/frontrunner/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory, which BIOS sets up
- *
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
/* Platform IRQs */
diff --git a/src/mainboard/msi/ms9185/irq_tables.c b/src/mainboard/msi/ms9185/irq_tables.c
index 4901495..992dc5a 100644
--- a/src/mainboard/msi/ms9185/irq_tables.c
+++ b/src/mainboard/msi/ms9185/irq_tables.c
@@ -18,12 +18,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/msi/ms9282/irq_tables.c b/src/mainboard/msi/ms9282/irq_tables.c
index 6713272..5891512 100644
--- a/src/mainboard/msi/ms9282/irq_tables.c
+++ b/src/mainboard/msi/ms9282/irq_tables.c
@@ -18,12 +18,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/msi/ms9652_fam10/irq_tables.c b/src/mainboard/msi/ms9652_fam10/irq_tables.c
index 2c37beb..c11707d 100644
--- a/src/mainboard/msi/ms9652_fam10/irq_tables.c
+++ b/src/mainboard/msi/ms9652_fam10/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/nvidia/l1_2pvv/irq_tables.c b/src/mainboard/nvidia/l1_2pvv/irq_tables.c
index d643cd4..0396812 100644
--- a/src/mainboard/nvidia/l1_2pvv/irq_tables.c
+++ b/src/mainboard/nvidia/l1_2pvv/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/siemens/sitemp_g1p1/irq_tables.c b/src/mainboard/siemens/sitemp_g1p1/irq_tables.c
index 299a370..721e73e 100644
--- a/src/mainboard/siemens/sitemp_g1p1/irq_tables.c
+++ b/src/mainboard/siemens/sitemp_g1p1/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
diff --git a/src/mainboard/sunw/ultra40/irq_tables.c b/src/mainboard/sunw/ultra40/irq_tables.c
index a0e21e4..aa4fa10 100644
--- a/src/mainboard/sunw/ultra40/irq_tables.c
+++ b/src/mainboard/sunw/ultra40/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/sunw/ultra40m2/irq_tables.c b/src/mainboard/sunw/ultra40m2/irq_tables.c
index d643cd4..0396812 100644
--- a/src/mainboard/sunw/ultra40m2/irq_tables.c
+++ b/src/mainboard/sunw/ultra40m2/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/supermicro/h8dme/irq_tables.c b/src/mainboard/supermicro/h8dme/irq_tables.c
index 3b4fbf3..b8319b5 100644
--- a/src/mainboard/supermicro/h8dme/irq_tables.c
+++ b/src/mainboard/supermicro/h8dme/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/supermicro/h8dmr/irq_tables.c b/src/mainboard/supermicro/h8dmr/irq_tables.c
index 3b4fbf3..b8319b5 100644
--- a/src/mainboard/supermicro/h8dmr/irq_tables.c
+++ b/src/mainboard/supermicro/h8dmr/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/supermicro/h8dmr_fam10/irq_tables.c b/src/mainboard/supermicro/h8dmr_fam10/irq_tables.c
index 2c37beb..c11707d 100644
--- a/src/mainboard/supermicro/h8dmr_fam10/irq_tables.c
+++ b/src/mainboard/supermicro/h8dmr_fam10/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/supermicro/h8qme_fam10/irq_tables.c b/src/mainboard/supermicro/h8qme_fam10/irq_tables.c
index 6596cc2..459a8b1 100644
--- a/src/mainboard/supermicro/h8qme_fam10/irq_tables.c
+++ b/src/mainboard/supermicro/h8qme_fam10/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/technexion/tim5690/irq_tables.c b/src/mainboard/technexion/tim5690/irq_tables.c
index 2019547..f2be994 100644
--- a/src/mainboard/technexion/tim5690/irq_tables.c
+++ b/src/mainboard/technexion/tim5690/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/technexion/tim8690/irq_tables.c b/src/mainboard/technexion/tim8690/irq_tables.c
index 2019547..f2be994 100644
--- a/src/mainboard/technexion/tim8690/irq_tables.c
+++ b/src/mainboard/technexion/tim8690/irq_tables.c
@@ -13,12 +13,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2735/irq_tables.c b/src/mainboard/tyan/s2735/irq_tables.c
index 3d69b49..ba1c7b3 100644
--- a/src/mainboard/tyan/s2735/irq_tables.c
+++ b/src/mainboard/tyan/s2735/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/tyan/s2850/irq_tables.c b/src/mainboard/tyan/s2850/irq_tables.c
index 187981c..77bd67a 100644
--- a/src/mainboard/tyan/s2850/irq_tables.c
+++ b/src/mainboard/tyan/s2850/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/tyan/s2875/irq_tables.c b/src/mainboard/tyan/s2875/irq_tables.c
index af8c385..b52ba6b 100644
--- a/src/mainboard/tyan/s2875/irq_tables.c
+++ b/src/mainboard/tyan/s2875/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/tyan/s2880/irq_tables.c b/src/mainboard/tyan/s2880/irq_tables.c
index d0c0d18..be08105 100644
--- a/src/mainboard/tyan/s2880/irq_tables.c
+++ b/src/mainboard/tyan/s2880/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/tyan/s2881/irq_tables.c b/src/mainboard/tyan/s2881/irq_tables.c
index 53e761d..6a45658 100644
--- a/src/mainboard/tyan/s2881/irq_tables.c
+++ b/src/mainboard/tyan/s2881/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2882/irq_tables.c b/src/mainboard/tyan/s2882/irq_tables.c
index e78ebf1..2b24363 100644
--- a/src/mainboard/tyan/s2882/irq_tables.c
+++ b/src/mainboard/tyan/s2882/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2885/irq_tables.c b/src/mainboard/tyan/s2885/irq_tables.c
index f217365..dc74776 100644
--- a/src/mainboard/tyan/s2885/irq_tables.c
+++ b/src/mainboard/tyan/s2885/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2891/irq_tables.c b/src/mainboard/tyan/s2891/irq_tables.c
index ea180db..536456c 100644
--- a/src/mainboard/tyan/s2891/irq_tables.c
+++ b/src/mainboard/tyan/s2891/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2892/irq_tables.c b/src/mainboard/tyan/s2892/irq_tables.c
index b3f54a4..878a070 100644
--- a/src/mainboard/tyan/s2892/irq_tables.c
+++ b/src/mainboard/tyan/s2892/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2895/irq_tables.c b/src/mainboard/tyan/s2895/irq_tables.c
index a247c3e..797220e 100644
--- a/src/mainboard/tyan/s2895/irq_tables.c
+++ b/src/mainboard/tyan/s2895/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2912/irq_tables.c b/src/mainboard/tyan/s2912/irq_tables.c
index 4744d7f..117aabc 100644
--- a/src/mainboard/tyan/s2912/irq_tables.c
+++ b/src/mainboard/tyan/s2912/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s2912_fam10/irq_tables.c b/src/mainboard/tyan/s2912_fam10/irq_tables.c
index 2c37beb..c11707d 100644
--- a/src/mainboard/tyan/s2912_fam10/irq_tables.c
+++ b/src/mainboard/tyan/s2912_fam10/irq_tables.c
@@ -15,12 +15,6 @@
* GNU General Public License for more details.
*/
-/* This file was generated by getpir.c, do not modify!
- * (but if you do, please run checkpir on it to verify)
- * Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- * Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>
diff --git a/src/mainboard/tyan/s4880/irq_tables.c b/src/mainboard/tyan/s4880/irq_tables.c
index defe03b..848d2d9 100644
--- a/src/mainboard/tyan/s4880/irq_tables.c
+++ b/src/mainboard/tyan/s4880/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/tyan/s4882/irq_tables.c b/src/mainboard/tyan/s4882/irq_tables.c
index d89c034..e7d6b1a 100644
--- a/src/mainboard/tyan/s4882/irq_tables.c
+++ b/src/mainboard/tyan/s4882/irq_tables.c
@@ -1,10 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
-
#include <arch/pirq_routing.h>
static const struct irq_routing_table intel_irq_routing_table = {
diff --git a/src/mainboard/winent/mb6047/irq_tables.c b/src/mainboard/winent/mb6047/irq_tables.c
index 6fe7349..d03f2c4 100644
--- a/src/mainboard/winent/mb6047/irq_tables.c
+++ b/src/mainboard/winent/mb6047/irq_tables.c
@@ -1,9 +1,3 @@
-/* This file was generated by getpir.c, do not modify!
- (but if you do, please run checkpir on it to verify)
- Contains the IRQ Routing Table dumped directly from your memory , wich BIOS sets up
-
- Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM
-*/
#include <console/console.h>
#include <device/pci.h>
#include <string.h>