2 * Copyright (C) 2015 Czech Technical University in Prague
5 * - Michal Sojka <sojkam1@fel.cvut.cz>
7 * This document contains proprietary information belonging to Czech
8 * Technical University in Prague. Passing on and copying of this
9 * document, and communication of its contents is not permitted
10 * without prior written authorization.
15 #include "drv/gio_names.h"
16 #include "drv/gio_tab.h"
18 #include "drv/spi_tms570.h"
21 // Lists of pins assigned to the ports
22 static enum pin_name pins_gioa[] = {
23 PIN_GIOA0, PIN_GIOA1, PIN_GIOA2, PIN_GIOA3,
26 static enum pin_name pins_giob[] = {
27 PIN_GIOB0, PIN_GIOB1, PIN_GIOB2, PIN_GIOB3,
28 PIN_GIOB4, PIN_GIOB5, PIN_GIOB6
30 static enum pin_name pins_nhet1[] = {
35 PIN_NHET114, PIN_NHET116,
36 PIN_NHET117, PIN_NHET119,
38 PIN_NHET123, PIN_NHET124, PIN_NHET125,
39 PIN_NHET126, PIN_NHET127, PIN_NHET128,
40 PIN_NHET129, PIN_NHET130, PIN_NHET131
44 const struct port_desc port_desc[] = {
47 .cfg = { .gioset = { .pins = pins_gioa } },
48 .numchn = ARRAY_SIZE(pins_gioa),
50 .get = port_gioset_get,
51 .set = port_gioset_set,
55 .cfg = { .gioset = { .pins = pins_giob } },
56 .numchn = ARRAY_SIZE(pins_giob),
58 .get = port_gioset_get,
59 .set = port_gioset_set,
63 .cfg = { .gioset = { .pins = pins_nhet1 } },
64 .numchn = ARRAY_SIZE(pins_nhet1),
66 .get = port_gioset_get,
67 .set = port_gioset_set,
71 .cfg = { .adc = { .reg = adcREG1, .group = adcGROUP1 } },
72 .numchn = PORT_ADC_CHANNELS,
77 [PORT_ID_THERMISTOR1] = {
83 .cfg = { .spi = { .dev = SPIDEV_MCP6S93_TH1 }, },
85 [PORT_ID_THERMISTOR2] = {
91 .cfg = { .spi = { .dev = SPIDEV_MCP6S93_TH2 }, },
93 [PORT_ID_ADC_COND] = {
96 .bpch = 16, /* 6 ICs in daisy chain */
99 .cfg = { .spi = { .dev = SPIDEV_MCP6S93_6ADC }, },
101 [PORT_ID_POWER_SUPPLY] = {
107 .cfg = { .spi = { .dev = SPIDEV_TPS65381_PWR }, },
109 [PORT_ID_SENSOR_SUPPLY] = {
115 .cfg = { .spi = { .dev = SPIDEV_MCP6S93_SENSUP }, },
117 [PORT_ID_DAC_ADC_LOOPBACK] = {
123 .cfg = { .spi = { .dev = SPIDEV_MCP6S93_DAC }, },