annotate libftmini/eeprom_wr.c @ 18:fce3d4baa2b4

libftmini: implement EEPROM write
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 07 Sep 2023 22:43:53 +0000
parents libftmini/eeprom_rd.c@67ecb394b24f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
18
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
1 /* elementary FTDI EEPROM write function */
14
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 #include <sys/types.h>
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 #include <stdio.h>
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 #include <stdlib.h>
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 #include <usb.h>
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 #include "ftdi_defs.h"
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 #include "ftdi_tune.h"
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 #include "eeprom_func.h"
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
18
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
11 void ftmini_write_eeprom_loc(usb_dev_handle *usbh, u_short addr, u_short val)
14
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 {
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 int rc;
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14
18
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
15 rc = usb_control_msg(usbh, FTDI_DEVICE_OUT_REQTYPE,
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
16 SIO_WRITE_EEPROM_REQUEST, val, addr, NULL, 0,
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
17 USB_WRITE_TIMEOUT);
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
18 if (rc != 0) {
14
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 fprintf(stderr,
18
fce3d4baa2b4 libftmini: implement EEPROM write
Mychaela Falconia <falcon@freecalypso.org>
parents: 14
diff changeset
20 "EEPROM write error: usb_control_msg() returned %d\n",
14
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 rc);
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 exit(1);
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 }
67ecb394b24f libftmini: starting with EEPROM read
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 }