blob: 3f0b6ed29ceb3960623428d2c3834e9ea64449f3 [file] [log] [blame]
// Copyright 2015 The Android Open Source Project
//
// This software is licensed under the terms of the GNU General Public
// License version 2, as published by the Free Software Foundation, and
// may be copied, distributed, and modified under those terms.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
#pragma once
#include "android/emulation/serial_line.h"
#include "android/utils/compiler.h"
ANDROID_BEGIN_HEADER
#include "qemu-common.h"
// Call this during setup to inject QEMU1-specific SerialLine
// implementation into the process.
void qemu1_android_serialline_init(void);
// Create a new CSerialLine instance that wraps a CharDriverState |cs|.
CSerialLine* android_serialline_from_cs(CharDriverState* cs);
// Extract the QEMU1 CharDriverState instance wrapped by a CSerialLine
// instance |sl|.
CharDriverState* android_serialline_get_cs(CSerialLine* sl);
// Extract the CharDriverState instance wrapped by |sl|, but also
// destroys the CSerialLine instance.
CharDriverState* android_serialline_release_cs(CSerialLine* sl);
ANDROID_END_HEADER