mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2025-12-29 18:11:05 +00:00
Previously the Case Closed Debugging system provided a way for the board to connect and disconnect the CCD USB lines correctly, but this functionality is better implemented by board_set_usb_mux. Signed-off-by: Anton Staaf <robotboy@chromium.org> BRANCH=None BUG=None TEST=make buildall -j Change-Id: I697ee9740c64ac93557d9fca8b2d10e858c51193 Reviewed-on: https://chromium-review.googlesource.com/247721 Trybot-Ready: Anton Staaf <robotboy@chromium.org> Tested-by: Anton Staaf <robotboy@chromium.org> Reviewed-by: Vic Yang <victoryang@chromium.org> Commit-Queue: Anton Staaf <robotboy@chromium.org>
47 lines
1.1 KiB
C
47 lines
1.1 KiB
C
/* Copyright (c) 2014 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.
|
|
*
|
|
* Case Closed Debug common implementation
|
|
*/
|
|
|
|
#include "case_closed_debug.h"
|
|
|
|
#include "common.h"
|
|
#include "usb_api.h"
|
|
#include "usb_console.h"
|
|
|
|
#if !defined(CONFIG_USB)
|
|
#error "CONFIG_USB must be defined to use Case Closed Debugging"
|
|
#endif
|
|
|
|
#if !defined(CONFIG_USB_CONSOLE)
|
|
#error "CONFIG_USB_CONSOLE must be defined to use Case Closed Debugging"
|
|
#endif
|
|
|
|
#if !defined(CONFIG_USB_INHIBIT_INIT)
|
|
#error "CONFIG_USB_INHIBIT_INIT must be defined to use Case Closed Debugging"
|
|
#endif
|
|
|
|
static enum ccd_mode current_mode = CCD_MODE_DISABLED;
|
|
|
|
void ccd_set_mode(enum ccd_mode new_mode)
|
|
{
|
|
if (new_mode == current_mode)
|
|
return;
|
|
|
|
if (current_mode != CCD_MODE_DISABLED)
|
|
usb_release();
|
|
|
|
current_mode = new_mode;
|
|
|
|
/*
|
|
* Only enable forwarding the local console over USB if we are now in
|
|
* the fully enabled mode.
|
|
*/
|
|
usb_console_enable(new_mode == CCD_MODE_ENABLED);
|
|
|
|
if (new_mode != CCD_MODE_DISABLED)
|
|
usb_init();
|
|
}
|