aboutsummaryrefslogtreecommitdiff
path: root/src/mainboard/intel/jarrell/reset.c
blob: fb379bd37293f7e62a53e3c521a0d3f9e9ea6a0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <arch/io.h>
#include <reset.h>
#include <arch/romcc_io.h>

void soft_reset(void)
{
        outb(0x04, 0xcf9);
}

void hard_reset(void)
{
        outb(0x02, 0xcf9);
        outb(0x06, 0xcf9);
}

void full_reset(void)
{
	/* Enable power on after power fail... */
	unsigned byte;
	byte = pci_read_config8(PCI_DEV(0, 0x1f, 0), 0xa4);
	byte &= 0xfe;
	pci_write_config8(PCI_DEV(0, 0x1f, 0), 0xa4, byte);
        outb(0x0e, 0xcf9);
}