coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ec.h File Reference
#include <stdint.h>
Include dependency graph for ec.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define EC_IO   0xfd60 /* Mainboard specific. Could be Kconfig option */
 
#define EC_IO_HIGH   EC_IO + 1
 
#define EC_IO_LOW   EC_IO + 2
 
#define EC_IO_DATA   EC_IO + 3
 
#define REG_SPI_DATA   0xfeab
 
#define REG_SPI_COMMAND   0xfeac
 
#define REG_SPI_CONFIG   0xfead
 
#define CFG_CSn_FORCE_LOW   (1 << 4)
 
#define CFG_COMMAND_WRITE_ENABLE   (1 << 3)
 
#define CFG_STATUS   (1 << 1)
 
#define KBD_DATA   0x60
 
#define KBD_COMMAND   0x64
 
#define KBD_STATUS   0x64
 
#define KBD_IBF   (1 << 1)
 
#define KBD_OBF   (1 << 0)
 
#define KBC_TIMEOUT_IN_MS   400
 

Functions

u8 ec_kbc_read_ob (void)
 
void ec_kbc_write_cmd (u8 cmd)
 
void ec_kbc_write_ib (u8 data)
 
int kbc_cleanup_buffers (void)
 

Macro Definition Documentation

◆ CFG_COMMAND_WRITE_ENABLE

#define CFG_COMMAND_WRITE_ENABLE   (1 << 3)

Definition at line 22 of file ec.h.

◆ CFG_CSn_FORCE_LOW

#define CFG_CSn_FORCE_LOW   (1 << 4)

Definition at line 21 of file ec.h.

◆ CFG_STATUS

#define CFG_STATUS   (1 << 1)

Definition at line 23 of file ec.h.

◆ EC_IO

#define EC_IO   0xfd60 /* Mainboard specific. Could be Kconfig option */

Definition at line 12 of file ec.h.

◆ EC_IO_DATA

#define EC_IO_DATA   EC_IO + 3

Definition at line 15 of file ec.h.

◆ EC_IO_HIGH

#define EC_IO_HIGH   EC_IO + 1

Definition at line 13 of file ec.h.

◆ EC_IO_LOW

#define EC_IO_LOW   EC_IO + 2

Definition at line 14 of file ec.h.

◆ KBC_TIMEOUT_IN_MS

#define KBC_TIMEOUT_IN_MS   400

Definition at line 32 of file ec.h.

◆ KBD_COMMAND

#define KBD_COMMAND   0x64

Definition at line 26 of file ec.h.

◆ KBD_DATA

#define KBD_DATA   0x60

Definition at line 25 of file ec.h.

◆ KBD_IBF

#define KBD_IBF   (1 << 1)

Definition at line 28 of file ec.h.

◆ KBD_OBF

#define KBD_OBF   (1 << 0)

Definition at line 29 of file ec.h.

◆ KBD_STATUS

#define KBD_STATUS   0x64

Definition at line 27 of file ec.h.

◆ REG_SPI_COMMAND

#define REG_SPI_COMMAND   0xfeac

Definition at line 19 of file ec.h.

◆ REG_SPI_CONFIG

#define REG_SPI_CONFIG   0xfead

Definition at line 20 of file ec.h.

◆ REG_SPI_DATA

#define REG_SPI_DATA   0xfeab

Definition at line 18 of file ec.h.

Function Documentation

◆ ec_kbc_read_ob()

u8 ec_kbc_read_ob ( void  )

Definition at line 71 of file ec.c.

◆ ec_kbc_write_cmd()

void ec_kbc_write_cmd ( u8  cmd)

Definition at line 77 of file ec.c.

◆ ec_kbc_write_ib()

void ec_kbc_write_ib ( u8  data)

Definition at line 83 of file ec.c.

◆ kbc_cleanup_buffers()

int kbc_cleanup_buffers ( void  )

Definition at line 42 of file ec.c.

References BIOS_ERR, inb(), KBC_TIMEOUT_IN_MS, KBD_DATA, KBD_IBF, KBD_OBF, KBD_STATUS, mdelay(), and printk.

Referenced by parrot_ec_init().

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