Files
OpenCellular/board/link/ec.tasklist
Randall Spangler c0640ee296 link: don't rely on host-write interrupt status
This works around a potential LM4 chip problem where edges on the FRMH
status bit don't always trigger interrupts.  The workaround is to look
at FRMH for each channel in the interrupt handler rather than the
interrupt status, and to trigger the interrupt every 250ms to sweep up
any missed writes.  We already do this for port 80 writes; this just
extends the workaround to all channels.

BUG=chrome-os-partner:13965
BRANCH=link
TEST=manual

- boot system
- EC console should show a number of HC lines for host command
- EC console should show a number of ACPI queries
- switch to root shell; keyboard should work
- ectool version should work

Change-Id: If02d685519c69ee88c055c8374a6c655a277e637
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/35871
Reviewed-by: Simon Glass <sjg@chromium.org>
2012-10-17 15:23:52 -07:00

33 lines
1.4 KiB
Plaintext

/* 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.
*/
/**
* List of enabled tasks in the priority order
*
* The first one has the lowest priority.
*
* For each task, use the macro TASK(n, r, d, s) where :
* 'n' is the name of the task
* 'r' is the main routine of the task
* 'd' is an opaque parameter passed to the routine at startup
* 's' is the stack size in bytes; must be a multiple of 8
*/
#define CONFIG_TASK_LIST \
TASK(WATCHDOG, watchdog_task, NULL, WATCHDOG_TASK_STACK_SIZE) \
TASK(LPC, lpc_task, NULL, TASK_STACK_SIZE) \
TASK(VBOOTHASH, vboot_hash_task, NULL, LARGER_TASK_STACK_SIZE) \
TASK(LIGHTBAR, lightbar_task, NULL, TASK_STACK_SIZE) \
TASK(POWERSTATE, charge_state_machine_task, NULL, TASK_STACK_SIZE) \
TASK(TEMPSENSOR, temp_sensor_task, NULL, TASK_STACK_SIZE) \
TASK(THERMAL, thermal_task, NULL, TASK_STACK_SIZE) \
TASK(PWM, pwm_task, NULL, TASK_STACK_SIZE) \
TASK(TYPEMATIC, keyboard_typematic_task, NULL, TASK_STACK_SIZE) \
TASK(X86POWER, x86_power_task, NULL, TASK_STACK_SIZE) \
TASK(I8042CMD, i8042_command_task, NULL, TASK_STACK_SIZE) \
TASK(HOSTCMD, host_command_task, NULL, TASK_STACK_SIZE) \
TASK(CONSOLE, console_task, NULL, LARGER_TASK_STACK_SIZE) \
TASK(POWERBTN, power_button_task, NULL, TASK_STACK_SIZE) \
TASK(KEYSCAN, keyboard_scan_task, NULL, TASK_STACK_SIZE)