/*
 * Copyright (c) 2015 Intel Corporation.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/**
 * @file Header file for the NS16550 UART
 */

#ifndef _UART_NS16550_H_
#define _UART_NS16550_H_

#define CMD_SET_DLF	0x01

#endif /* _UART_NS16550_H_ */
