Use correct ADC channel for charger current on link

Signed-off-by: Randall Spangler <rspangler@chromium.org>

BUG=chrome-os-partner:7697
TEST=if it runs, it works

Change-Id: I36ab37a8cf1c3e4bf41bfb38e622e766cee8a4c4
This commit is contained in:
Randall Spangler
2012-01-23 16:37:45 -08:00
parent cdc3fbf2cf
commit a2a85365d6
3 changed files with 8 additions and 7 deletions

View File

@@ -42,7 +42,7 @@
/* ADC inputs */
/* TODO: really just need a lookup table for channels to inputs */
#define ADC_IN_POT 0 /* Turn POT on badger board */
#define ADC_IN0 0 /* Turn POT on badger board */
/* I2C ports */
#define I2C_PORT_BATTERY 5 // port 0 / PB2:3 on Link, open on badger

View File

@@ -42,7 +42,7 @@
/* ADC inputs */
/* TODO: assign real ADC inputs */
#define ADC_IN_POT 0 /* Turn POT on badger board */
#define ADC_IN0 11 /* Charger current */
/* I2C ports */
#define I2C_PORT_BATTERY 0

View File

@@ -1,4 +1,4 @@
/* Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
/* Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
@@ -97,7 +97,8 @@ int adc_read_ec_temperature(void)
static int command_adc(int argc, char **argv)
{
uart_printf("ADC POT channel = 0x%03x\n",adc_read(ADC_CH_POT));
uart_printf("ADC channel %d = 0x%03x\n", ADC_IN0,
adc_read(ADC_CH_POT));
return EC_SUCCESS;
}
@@ -143,9 +144,9 @@ int adc_init(void)
LM4_ADC_ADCACTSS &= ~0x01;
/* Trigger SS0 by processor request */
LM4_ADC_ADCEMUX = (LM4_ADC_ADCEMUX & 0xfffffff0) | 0x00;
/* Sample AIN0 only */
LM4_ADC_SSMUX(0) = ADC_IN_POT & 0x0f;
LM4_ADC_SSEMUX(0) = (ADC_IN_POT >> 4) & 0x0f;
/* Sample only our one channel */
LM4_ADC_SSMUX(0) = ADC_IN0 & 0x0f;
LM4_ADC_SSEMUX(0) = (ADC_IN0 >> 4) & 0x0f;
LM4_ADC_SSCTL(0) = 0x06; /* IE0 | END0 */
/* Enable sample sequencer 0 */
LM4_ADC_ADCACTSS |= 0x01;