bitbang: Extend bitbang_spi_master functions to accept spi data

This way every bitbang spi master has access to its own spi data,
and can use this data in all its functions.

This patch only changes the signatures of functions.

flashrom-stable: Adapted new function signatures in `nicintel_spi`.

Change-Id: Id5722a43ce20feeed62630ad80e14df7744f9c02
Signed-off-by: Anastasia Klimchuk <aklm@chromium.org>
Original-Reviewed-on: https://review.coreboot.org/c/flashrom/+/54991
Original-Reviewed-by: Edward O'Callaghan <quasisec@chromium.org>
Reviewed-on: https://review.coreboot.org/c/flashrom-stable/+/73268
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/include/programmer.h b/include/programmer.h
index 527eeb3..b0eac19 100644
--- a/include/programmer.h
+++ b/include/programmer.h
@@ -102,15 +102,15 @@
 
 struct bitbang_spi_master {
 	/* Note that CS# is active low, so val=0 means the chip is active. */
-	void (*set_cs) (int val);
-	void (*set_sck) (int val);
-	void (*set_mosi) (int val);
-	int (*get_miso) (void);
-	void (*request_bus) (void);
-	void (*release_bus) (void);
+	void (*set_cs) (int val, void *spi_data);
+	void (*set_sck) (int val, void *spi_data);
+	void (*set_mosi) (int val, void *spi_data);
+	int (*get_miso) (void *spi_data);
+	void (*request_bus) (void *spi_data);
+	void (*release_bus) (void *spi_data);
 	/* optional functions to optimize xfers */
-	void (*set_sck_set_mosi) (int sck, int mosi);
-	int (*set_sck_get_miso) (int sck);
+	void (*set_sck_set_mosi) (int sck, int mosi, void *spi_data);
+	int (*set_sck_get_miso) (int sck, void *spi_data);
 	/* Length of half a clock period in usecs. */
 	unsigned int half_period;
 };