1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-29 07:53:44 +02:00

Export Winbond SuperIO register access functions in board_enable.c

Corresponding to flashrom svn r403 and coreboot v2 svn r3909.

Signed-off-by: Peter Stuge <peter@stuge.se>
Acked-by: Peter Stuge <peter@stuge.se>
This commit is contained in:
Peter Stuge 2009-01-26 02:34:51 +00:00
parent 42688e5cc9
commit 9d9399c5b4
2 changed files with 10 additions and 5 deletions

View File

@ -35,32 +35,32 @@
* Helper functions for many Winbond Super I/Os of the W836xx range. * Helper functions for many Winbond Super I/Os of the W836xx range.
*/ */
/* Enter extended functions */ /* Enter extended functions */
static void w836xx_ext_enter(uint16_t port) void w836xx_ext_enter(uint16_t port)
{ {
OUTB(0x87, port); OUTB(0x87, port);
OUTB(0x87, port); OUTB(0x87, port);
} }
/* Leave extended functions */ /* Leave extended functions */
static void w836xx_ext_leave(uint16_t port) void w836xx_ext_leave(uint16_t port)
{ {
OUTB(0xAA, port); OUTB(0xAA, port);
} }
/* General functions for reading/writing Winbond Super I/Os. */ /* General functions for reading/writing Winbond Super I/Os. */
static unsigned char wbsio_read(uint16_t index, uint8_t reg) unsigned char wbsio_read(uint16_t index, uint8_t reg)
{ {
OUTB(reg, index); OUTB(reg, index);
return INB(index + 1); return INB(index + 1);
} }
static void wbsio_write(uint16_t index, uint8_t reg, uint8_t data) void wbsio_write(uint16_t index, uint8_t reg, uint8_t data)
{ {
OUTB(reg, index); OUTB(reg, index);
OUTB(data, index + 1); OUTB(data, index + 1);
} }
static void wbsio_mask(uint16_t index, uint8_t reg, uint8_t data, uint8_t mask) void wbsio_mask(uint16_t index, uint8_t reg, uint8_t data, uint8_t mask)
{ {
uint8_t tmp; uint8_t tmp;

View File

@ -454,6 +454,11 @@ struct pci_dev *pci_card_find(uint16_t vendor, uint16_t device,
uint16_t card_vendor, uint16_t card_device); uint16_t card_vendor, uint16_t card_device);
/* board_enable.c */ /* board_enable.c */
void w836xx_ext_enter(uint16_t port);
void w836xx_ext_leave(uint16_t port);
unsigned char wbsio_read(uint16_t index, uint8_t reg);
void wbsio_write(uint16_t index, uint8_t reg, uint8_t data);
void wbsio_mask(uint16_t index, uint8_t reg, uint8_t data, uint8_t mask);
int board_flash_enable(const char *vendor, const char *part); int board_flash_enable(const char *vendor, const char *part);
void print_supported_boards(void); void print_supported_boards(void);