coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
superio.c File Reference
#include <device/device.h>
#include <device/pnp.h>
#include <superio/conf_mode.h>
#include <superio/hwm5_conf.h>
#include <console/console.h>
#include <pc80/keyboard.h>
#include <option.h>
#include "w83627ehg.h"
Include dependency graph for superio.c:

Go to the source code of this file.

Functions

static void enable_hwm_smbus (struct device *dev)
 
static void init_acpi (struct device *dev)
 
static void init_hwm (u16 base)
 
static void w83627ehg_init (struct device *dev)
 
static void w83627ehg_pnp_enable_resources (struct device *dev)
 
static void enable_dev (struct device *dev)
 

Variables

static struct device_operations ops
 
static struct pnp_info pnp_dev_info []
 
struct chip_operations superio_winbond_w83627ehg_ops
 

Function Documentation

◆ enable_dev()

static void enable_dev ( struct device dev)
static

Definition at line 126 of file superio.c.

References ARRAY_SIZE, ops, pnp_dev_info, and pnp_enable_devices().

Here is the call graph for this function:

◆ enable_hwm_smbus()

static void enable_hwm_smbus ( struct device dev)
static

Definition at line 13 of file superio.c.

References pnp_read_config(), and pnp_write_config().

Here is the call graph for this function:

◆ init_acpi()

static void init_acpi ( struct device dev)
static

Definition at line 23 of file superio.c.

References get_uint_option(), pnp_enter_conf_mode(), pnp_exit_conf_mode(), pnp_read_config(), pnp_set_logical_device(), pnp_write_config(), and value.

Referenced by w83627ehg_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ init_hwm()

static void init_hwm ( u16  base)
static

Definition at line 38 of file superio.c.

References ARRAY_SIZE, base, BIOS_DEBUG, pnp_read_hwm5_index(), pnp_write_hwm5_index(), printk, and value.

Referenced by w83627ehg_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ w83627ehg_init()

static void w83627ehg_init ( struct device dev)
static

◆ w83627ehg_pnp_enable_resources()

static void w83627ehg_pnp_enable_resources ( struct device dev)
static

Definition at line 81 of file superio.c.

Variable Documentation

◆ ops

struct device_operations ops
static
Initial value:
= {
.read_resources = pnp_read_resources,
.set_resources = pnp_set_resources,
.enable_resources = w83627ehg_pnp_enable_resources,
.enable = pnp_alt_enable,
.init = w83627ehg_init,
.ops_pnp_mode = &pnp_conf_mode_8787_aa,
}
const struct pnp_mode_ops pnp_conf_mode_8787_aa
Definition: conf_mode.c:202
void pnp_read_resources(struct device *dev)
Definition: pnp_device.c:114
void pnp_set_resources(struct device *dev)
Definition: pnp_device.c:157
void pnp_alt_enable(struct device *dev)
Definition: pnp_device.c:191
static void w83627ehg_pnp_enable_resources(struct device *dev)
Definition: superio.c:81
static void w83627ehg_init(struct device *dev)
Definition: superio.c:60

Definition at line 81 of file superio.c.

Referenced by enable_dev().

◆ pnp_dev_info

struct pnp_info pnp_dev_info[]
static
Initial value:
= {
{ NULL, W83627EHG_SP1, PNP_IO0 | PNP_IRQ0, 0x07f8, },
{ NULL, W83627EHG_SP2, PNP_IO0 | PNP_IRQ0, 0x07f8, },
0x07ff, 0x07ff, },
{ NULL, W83627EHG_SFI, PNP_IO0 | PNP_IRQ0, 0x07f8, },
{ NULL, W83627EHG_HWM, PNP_IO0 | PNP_IRQ0, 0x07fe, },
{ NULL, W83627EHG_GAME, PNP_IO0, 0x07ff, },
{ NULL, W83627EHG_MIDI, PNP_IO1 | PNP_IRQ0, 0, 0x07fe, },
}
#define PNP_IRQ1
Definition: pnp.h:48
#define PNP_DRQ0
Definition: pnp.h:49
#define PNP_IO1
Definition: pnp.h:43
#define PNP_IO0
Definition: pnp.h:42
#define PNP_IRQ0
Definition: pnp.h:47
#define NULL
Definition: stddef.h:19
#define W83627EHG_GPIO4
Definition: w83627ehg.h:35
#define W83627EHG_GPIO5
Definition: w83627ehg.h:36
#define W83627EHG_GPIO6
Definition: w83627ehg.h:31
#define W83627EHG_SP2
Definition: w83627ehg.h:9
#define W83627EHG_GPIO1
Definition: w83627ehg.h:28
#define W83627EHG_PP
Definition: w83627ehg.h:7
#define W83627EHG_KBC
Definition: w83627ehg.h:10
#define W83627EHG_GPIO3
Definition: w83627ehg.h:34
#define W83627EHG_WDTO_PLED
Definition: w83627ehg.h:11
#define W83627EHG_FDC
Definition: w83627ehg.h:6
#define W83627EHG_ACPI
Definition: w83627ehg.h:12
#define W83627EHG_SP1
Definition: w83627ehg.h:8
#define W83627EHG_SFI
Definition: w83627ehg.h:26
#define W83627EHG_GPIO2
Definition: w83627ehg.h:33
#define W83627EHG_HWM
Definition: w83627ehg.h:13
#define W83627EHG_GAME
Definition: w83627ehg.h:29
#define W83627EHG_MIDI
Definition: w83627ehg.h:30

Definition at line 81 of file superio.c.

Referenced by enable_dev().

◆ superio_winbond_w83627ehg_ops

struct chip_operations superio_winbond_w83627ehg_ops
Initial value:
= {
.enable_dev = enable_dev,
}
static void enable_dev(struct device *dev)
Definition: superio.c:126

Definition at line 126 of file superio.c.