diff --git a/parallel.c b/parallel.c
index d8a751e..1ef7305 100644
--- a/parallel.c
+++ b/parallel.c
@@ -24,43 +24,43 @@
 
 void chip_writeb(const struct flashctx *flash, uint8_t val, chipaddr addr)
 {
-	flash->mst.par->chip_writeb(flash, val, addr);
+	flash->mst.par->chip_writeb(flash->mst.par, val, addr);
 }
 
 void chip_writew(const struct flashctx *flash, uint16_t val, chipaddr addr)
 {
-	flash->mst.par->chip_writew(flash, val, addr);
+	flash->mst.par->chip_writew(flash->mst.par, val, addr);
 }
 
 void chip_writel(const struct flashctx *flash, uint32_t val, chipaddr addr)
 {
-	flash->mst.par->chip_writel(flash, val, addr);
+	flash->mst.par->chip_writel(flash->mst.par, val, addr);
 }
 
 void chip_writen(const struct flashctx *flash, const uint8_t *buf, chipaddr addr, size_t len)
 {
-	flash->mst.par->chip_writen(flash, buf, addr, len);
+	flash->mst.par->chip_writen(flash->mst.par, buf, addr, len);
 }
 
 uint8_t chip_readb(const struct flashctx *flash, const chipaddr addr)
 {
-	return flash->mst.par->chip_readb(flash, addr);
+	return flash->mst.par->chip_readb(flash->mst.par, addr);
 }
 
 uint16_t chip_readw(const struct flashctx *flash, const chipaddr addr)
 {
-	return flash->mst.par->chip_readw(flash, addr);
+	return flash->mst.par->chip_readw(flash->mst.par, addr);
 }
 
 uint32_t chip_readl(const struct flashctx *flash, const chipaddr addr)
 {
-	return flash->mst.par->chip_readl(flash, addr);
+	return flash->mst.par->chip_readl(flash->mst.par, addr);
 }
 
 void chip_readn(const struct flashctx *flash, uint8_t *buf, chipaddr addr,
 		size_t len)
 {
-	flash->mst.par->chip_readn(flash, buf, addr, len);
+	flash->mst.par->chip_readn(flash->mst.par, buf, addr, len);
 }
 
 int register_par_master(const struct par_master *mst, const enum chipbustype buses,
