summaryrefslogtreecommitdiff
path: root/src/include/console/ne2k.h
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-02-26 15:19:04 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2014-04-18 16:41:09 +0200
commitf3390862653f9473359eb9a587842bb04671e6df (patch)
tree2a6f8171cdac86609b1552e3417816bd6877e4ff /src/include/console/ne2k.h
parente8792be223f5f0c5c6bafffa4056793f3c3bfab7 (diff)
downloadcoreboot-f3390862653f9473359eb9a587842bb04671e6df.tar.xz
console: Simplify the enable rules
Consoles on CBMEM and USB have somewhat complex rules and dependencies when they can be active. Use simple variables to test which stage of boot is being built for each console. Change-Id: I2489e7731d07ca7d5dd2ea8b6501c73f05d6edd8 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/5341 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Diffstat (limited to 'src/include/console/ne2k.h')
-rw-r--r--src/include/console/ne2k.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/include/console/ne2k.h b/src/include/console/ne2k.h
index cb3c1ec63b..16cecb5ccd 100644
--- a/src/include/console/ne2k.h
+++ b/src/include/console/ne2k.h
@@ -19,6 +19,10 @@
#ifndef _NE2K_H__
#define _NE2K_H__
+
+#include <rules.h>
+#include <stdint.h>
+
void ne2k_append_data(unsigned char *d, int len, unsigned int base);
int ne2k_init(unsigned int eth_nic_base);
void ne2k_transmit(unsigned int eth_nic_base);
@@ -26,4 +30,15 @@ void ne2k_transmit(unsigned int eth_nic_base);
#ifndef __ROMCC__
#define ne2k_append_data_byte(d, base) ne2k_append_data(&d, 1, base)
#endif
+
+#if CONFIG_CONSOLE_NE2K && (ENV_ROMSTAGE || ENV_RAMSTAGE)
+static inline void __ne2k_init(void) { ne2k_init(CONFIG_CONSOLE_NE2K_IO_PORT); }
+static inline void __ne2k_tx_byte(u8 data) { ne2k_append_data_byte(data, CONFIG_CONSOLE_NE2K_IO_PORT); }
+static inline void __ne2k_tx_flush(void) { ne2k_transmit(CONFIG_CONSOLE_NE2K_IO_PORT); }
+#else
+static inline void __ne2k_init(void) {}
+static inline void __ne2k_tx_byte(u8 data) {}
+static inline void __ne2k_tx_flush(void) {}
+#endif
+
#endif /* _NE2K_H */