summaryrefslogtreecommitdiff
path: root/src/mainboard/amd/quartet/mainboard.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mainboard/amd/quartet/mainboard.c')
-rw-r--r--src/mainboard/amd/quartet/mainboard.c33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/mainboard/amd/quartet/mainboard.c b/src/mainboard/amd/quartet/mainboard.c
index 0622150d64..6c4d435ee1 100644
--- a/src/mainboard/amd/quartet/mainboard.c
+++ b/src/mainboard/amd/quartet/mainboard.c
@@ -1,11 +1,42 @@
+
#include <console/console.h>
#include <device/device.h>
#include <device/pci.h>
#include <device/pci_ids.h>
#include <device/pci_ops.h>
+#include <arch/io.h>
+#include <device/chip.h>
+#include "../../../northbridge/amd/amdk8/northbridge.h"
+#include "chip.h"
+
unsigned long initial_apicid[CONFIG_MAX_CPUS] =
{
- 0, 1, 2, 3
+ 0, 1, 2, 3,
+};
+
+static struct device_operations mainboard_operations = {
+ .read_resources = root_dev_read_resources,
+ .set_resources = root_dev_set_resources,
+ .enable_resources = enable_childrens_resources,
+ .init = 0,
+ .scan_bus = amdk8_scan_root_bus,
+ .enable = 0,
+};
+
+static void enumerate(struct chip *chip)
+{
+ struct chip *child;
+ dev_root.ops = &mainboard_operations;
+ chip->dev = &dev_root;
+ chip->bus = 0;
+ for(child = chip->children; child; child = child->next) {
+ child->bus = &dev_root.link[0];
+ }
+}
+struct chip_control mainboard_amd_quartet_control = {
+ .enumerate = enumerate,
+ .name = "AMD Quartet mainboard ",
};
+