Changeset View
Changeset View
Standalone View
Standalone View
sys/arm/ti/ti_adc.c
Show First 20 Lines • Show All 58 Lines • ▼ Show 20 Lines | static struct ti_adc_input ti_adc_inputs[TI_ADC_NPINS] = { | ||||
{ .stepconfig = ADC_STEPCFG5, .stepdelay = ADC_STEPDLY5 }, | { .stepconfig = ADC_STEPCFG5, .stepdelay = ADC_STEPDLY5 }, | ||||
{ .stepconfig = ADC_STEPCFG6, .stepdelay = ADC_STEPDLY6 }, | { .stepconfig = ADC_STEPCFG6, .stepdelay = ADC_STEPDLY6 }, | ||||
{ .stepconfig = ADC_STEPCFG7, .stepdelay = ADC_STEPDLY7 }, | { .stepconfig = ADC_STEPCFG7, .stepdelay = ADC_STEPDLY7 }, | ||||
{ .stepconfig = ADC_STEPCFG8, .stepdelay = ADC_STEPDLY8 }, | { .stepconfig = ADC_STEPCFG8, .stepdelay = ADC_STEPDLY8 }, | ||||
}; | }; | ||||
static int ti_adc_samples[5] = { 0, 2, 4, 8, 16 }; | static int ti_adc_samples[5] = { 0, 2, 4, 8, 16 }; | ||||
static struct ofw_compat_data compat_data[] = { | |||||
{"ti,am3359-tscadc", 1}, | |||||
{NULL, 0}, | |||||
}; | |||||
static void | static void | ||||
ti_adc_enable(struct ti_adc_softc *sc) | ti_adc_enable(struct ti_adc_softc *sc) | ||||
{ | { | ||||
TI_ADC_LOCK_ASSERT(sc); | TI_ADC_LOCK_ASSERT(sc); | ||||
if (sc->sc_last_state == 1) | if (sc->sc_last_state == 1) | ||||
return; | return; | ||||
▲ Show 20 Lines • Show All 387 Lines • ▼ Show 20 Lines | ti_adc_idlestep_init(struct ti_adc_softc *sc) | ||||
ADC_WRITE4(sc, ADC_IDLECONFIG, val); | ADC_WRITE4(sc, ADC_IDLECONFIG, val); | ||||
} | } | ||||
static int | static int | ||||
ti_adc_probe(device_t dev) | ti_adc_probe(device_t dev) | ||||
{ | { | ||||
if (!ofw_bus_is_compatible(dev, "ti,am3359-tscadc")) | if (!ofw_bus_compatible_lookup(dev, compat_data)) | ||||
return (ENXIO); | return (ENXIO); | ||||
device_set_desc(dev, "TI ADC controller"); | device_set_desc(dev, "TI ADC controller"); | ||||
return (BUS_PROBE_DEFAULT); | return (BUS_PROBE_DEFAULT); | ||||
} | } | ||||
static int | static int | ||||
ti_adc_attach(device_t dev) | ti_adc_attach(device_t dev) | ||||
▲ Show 20 Lines • Show All 108 Lines • ▼ Show 20 Lines | static driver_t ti_adc_driver = { | ||||
sizeof(struct ti_adc_softc), | sizeof(struct ti_adc_softc), | ||||
}; | }; | ||||
static devclass_t ti_adc_devclass; | static devclass_t ti_adc_devclass; | ||||
DRIVER_MODULE(ti_adc, simplebus, ti_adc_driver, ti_adc_devclass, 0, 0); | DRIVER_MODULE(ti_adc, simplebus, ti_adc_driver, ti_adc_devclass, 0, 0); | ||||
MODULE_VERSION(ti_adc, 1); | MODULE_VERSION(ti_adc, 1); | ||||
MODULE_DEPEND(ti_adc, simplebus, 1, 1, 1); | MODULE_DEPEND(ti_adc, simplebus, 1, 1, 1); | ||||
SIMPLEBUS_PNP_INFO(compat_data); |