mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 07:02:34 +02:00
Add support for the 10b7:9058 3COM NIC (3C905B: Cyclone 10/100/BNC)
Also, add Atmel AT29C512 support. Both are tested on hardware by Maciej Pijanka. Corresponding to flashrom svn r566. Signed-off-by: Maciej Pijanka <maciej.pijanka@gmail.com> Acked-by: Uwe Hermann <uwe@hermann-uwe.de>
This commit is contained in:
parent
265c838924
commit
bc2bbd2851
1
flash.h
1
flash.h
@ -287,6 +287,7 @@ extern const struct board_info boards_bad[];
|
||||
#define AT_29C040A 0xA4
|
||||
#define AT_29C010A 0xD5
|
||||
#define AT_29C020 0xDA
|
||||
#define AT_29C512 0x5D
|
||||
#define AT_45BR3214B /* No ID available */
|
||||
#define AT_45CS1282 0x2920
|
||||
#define AT_45D011 /* No ID available */
|
||||
|
16
flashchips.c
16
flashchips.c
@ -398,6 +398,22 @@ struct flashchip flashchips[] = {
|
||||
.read = spi_chip_read,
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Atmel",
|
||||
.name = "AT29C512",
|
||||
.bustype = CHIP_BUSTYPE_NONSPI,
|
||||
.manufacture_id = ATMEL_ID,
|
||||
.model_id = AT_29C512,
|
||||
.total_size = 64,
|
||||
.page_size = 128,
|
||||
.tested = TEST_OK_PREW,
|
||||
.probe = probe_jedec,
|
||||
.erase = erase_chip_jedec,
|
||||
.write = write_jedec,
|
||||
.read = read_memmapped,
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
.vendor = "Atmel",
|
||||
.name = "AT29C010A",
|
||||
|
@ -46,6 +46,7 @@ struct pcidev_status nics_3com[] = {
|
||||
{0x10b7, 0x9006, PCI_NT, "3COM", "3C90xB: PCI 10BASE-T/10BASE2 (TPC)" },
|
||||
{0x10b7, 0x900a, PCI_NT, "3COM", "3C90xB: PCI 10BASE-FL" },
|
||||
{0x10b7, 0x905a, PCI_NT, "3COM", "3C90xB: PCI 10BASE-FX" },
|
||||
{0x10b7, 0x9058, PCI_NT, "3COM", "3C905B: Cyclone 10/100/BNC" },
|
||||
|
||||
/* 3C905C */
|
||||
{0x10b7, 0x9200, PCI_OK, "3COM", "3C905C: EtherLink 10/100 PCI (TX)" },
|
||||
@ -65,7 +66,7 @@ int nic3com_init(void)
|
||||
|
||||
/* 3COM 3C90xB cards need a special fixup. */
|
||||
if (id == 0x9055 || id == 0x9001 || id == 0x9004 || id == 0x9005
|
||||
|| id == 0x9006 || id == 0x900a || id == 0x905a) {
|
||||
|| id == 0x9006 || id == 0x900a || id == 0x905a || id == 0x9058) {
|
||||
/* Select register window 3 and save the receiver status. */
|
||||
OUTW(SELECT_REG_WINDOW + 3, io_base_addr + INT_STATUS);
|
||||
internal_conf = INL(io_base_addr + INTERNAL_CONFIG);
|
||||
@ -90,7 +91,7 @@ int nic3com_shutdown(void)
|
||||
{
|
||||
/* 3COM 3C90xB cards need a special fixup. */
|
||||
if (id == 0x9055 || id == 0x9001 || id == 0x9004 || id == 0x9005
|
||||
|| id == 0x9006 || id == 0x900a || id == 0x905a) {
|
||||
|| id == 0x9006 || id == 0x900a || id == 0x905a || id == 0x9058) {
|
||||
/* Select register window 3 and restore the receiver status. */
|
||||
OUTW(SELECT_REG_WINDOW + 3, io_base_addr + INT_STATUS);
|
||||
OUTL(internal_conf, io_base_addr + INTERNAL_CONFIG);
|
||||
|
Loading…
x
Reference in New Issue
Block a user