Move code into *.c files, there's no reason to have it in header files

Corresponding to flashrom svn r127 and coreboot v2 svn r2745.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
diff --git a/m29f400bt.c b/m29f400bt.c
index 86f9f96..809f33c 100644
--- a/m29f400bt.c
+++ b/m29f400bt.c
@@ -27,6 +27,69 @@
 #include "m29f400bt.h"
 #include "debug.h"
 
+void toggle_ready_m29f400bt(volatile uint8_t *dst)
+{
+	unsigned int i = 0;
+	uint8_t tmp1, tmp2;
+
+	tmp1 = *dst & 0x40;
+
+	while (i++ < 0xFFFFFF) {
+		tmp2 = *dst & 0x40;
+		if (tmp1 == tmp2) {
+			break;
+		}
+		tmp1 = tmp2;
+	}
+}
+
+void data_polling_m29f400bt(volatile uint8_t *dst, uint8_t data)
+{
+	unsigned int i = 0;
+	uint8_t tmp;
+
+	data &= 0x80;
+
+	while (i++ < 0xFFFFFF) {
+		tmp = *dst & 0x80;
+		if (tmp == data) {
+			break;
+		}
+	}
+}
+
+void protect_m29f400bt(volatile uint8_t *bios)
+{
+	*(volatile uint8_t *)(bios + 0xAAA) = 0xAA;
+	*(volatile uint8_t *)(bios + 0x555) = 0x55;
+	*(volatile uint8_t *)(bios + 0xAAA) = 0xA0;
+
+	usleep(200);
+}
+
+void write_page_m29f400bt(volatile uint8_t *bios, uint8_t *src,
+			  volatile uint8_t *dst, int page_size)
+{
+	int i;
+
+	for (i = 0; i < page_size; i++) {
+		*(volatile uint8_t *)(bios + 0xAAA) = 0xAA;
+		*(volatile uint8_t *)(bios + 0x555) = 0x55;
+		*(volatile uint8_t *)(bios + 0xAAA) = 0xA0;
+
+		/* transfer data from source to destination */
+		*dst = *src;
+		//*(volatile char *) (bios) = 0xF0;
+		//usleep(5);
+		toggle_ready_m29f400bt(dst);
+		printf
+		    ("Value in the flash at address %p = %#x, want %#x\n",
+		     (uint8_t *) (dst - bios), *dst, *src);
+		dst++;
+		src++;
+	}
+}
+
 int probe_m29f400bt(struct flashchip *flash)
 {
 	volatile uint8_t *bios = flash->virtual_memory;