From: iceman1001 <iceman@iuse.se>
Date: Wed, 19 Oct 2016 23:06:17 +0000 (+0200)
Subject: CHG: move the call to fpga_bitstream_lf,  in order to save the uploaded data from... 
X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/commitdiff_plain/8fd25db30c2684725ed3a75036a01a2af3da206b?ds=sidebyside;hp=--cc

CHG: move the call to fpga_bitstream_lf,  in order to save the uploaded data from the client. Changing bitstream wipes bigbuffer.
---

8fd25db30c2684725ed3a75036a01a2af3da206b
diff --git a/armsrc/appmain.c b/armsrc/appmain.c
index f8d12da1..a2c12803 100644
--- a/armsrc/appmain.c
+++ b/armsrc/appmain.c
@@ -1284,6 +1284,12 @@ void UsbPacketReceived(uint8_t *packet, int len)
 			break;
 		}
 		case CMD_DOWNLOADED_SIM_SAMPLES_125K: {
+			// iceman; since changing fpga_bitstreams clears bigbuff, Its better to call it before.
+			// to be able to use this one for uploading data to device not only for LF, I use c->arg[1] 
+			if ( c->arg[1] == 0 )
+				FpgaDownloadAndGo(FPGA_BITSTREAM_LF);
+			else 
+				FpgaDownloadAndGo(FPGA_BITSTREAM_HF);
 			uint8_t *b = BigBuf_get_addr();
 			memcpy( b + c->arg[0], c->d.asBytes, USB_CMD_DATA_SIZE);
 			cmd_send(CMD_ACK,0,0,0,0,0);
diff --git a/armsrc/lfops.c b/armsrc/lfops.c
index f6cbbfba..5f980cd5 100644
--- a/armsrc/lfops.c
+++ b/armsrc/lfops.c
@@ -397,7 +397,6 @@ void SimulateTagLowFrequency(int period, int gap, int ledcontrol)
 	int i = 0;
 	uint8_t *buf = BigBuf_get_addr();
 
- 	FpgaDownloadAndGo(FPGA_BITSTREAM_LF);
 	FpgaWriteConfWord(FPGA_MAJOR_MODE_LF_EDGE_DETECT | FPGA_LF_EDGE_DETECT_READER_FIELD);
 
 	AT91C_BASE_PIOA->PIO_PER = GPIO_SSC_DOUT | GPIO_SSC_CLK;