Files
OpenCellular/driver/pi3usb30532.h
Stefan Reinauer bc404c94b4 Enforce compilation without system headers
This patch introduces HOST_CPPFLAGS to be used for all
objects being compiled with HOSTCC rather then the target
compiler.

Since glibc is not linked into the EC, no glibc include files
should be included in the EC code base. Hence, create local
definitions for clock_t and wchar_t that match what the glibc
include would have done, and remove some unneeded includes.

Due to very eager optimization, we have to give gcc a little
notch to not kick out memset.

Signed-off-by: Stefan Reinauer <reinauer@chromium.org>
BUG=chrome-os-partner:43025
BUG=chrome-os-partner:49517
BRANCH=none
TEST=compile tested

Change-Id: Idf3a2881fa8352756b0927b09c6a97473358f239
Reviewed-on: https://chromium-review.googlesource.com/322435
Commit-Ready: Patrick Georgi <pgeorgi@chromium.org>
Tested-by: Patrick Georgi <pgeorgi@chromium.org>
Reviewed-by: Patrick Georgi <pgeorgi@chromium.org>
2016-02-03 15:00:50 -08:00

66 lines
1.7 KiB
C

/* Copyright 2015 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.
*
* Pericom PI3USB30532 USB port switch driver.
*/
#ifndef __CROS_EC_PI3USB30532_H
#define __CROS_EC_PI3USB30532_H
#include "usb_pd.h"
/* USB switch registers */
#define PI3USB30532_REG_ADDR 0x00
#define PI3USB30532_REG_VENDOR 0x01
#define PI3USB30532_REG_CONTROL 0x02
/* Control register field */
#define PI3USB30532_CTRL_MASK 0x7
#define PI3USB30532_CTRL_RSVD 0
/* Switch vendor ID */
#define PI3USB30532_VENDOR_ID 0
/* PI3USB30532 control flags */
#define PI3USB30532_BIT_SWAP (1 << 0)
#define PI3USB30532_BIT_DP (1 << 1)
#define PI3USB30532_BIT_USB (1 << 2)
/* PI3USB30532 modes */
/* Power down, switch open */
#define PI3USB30532_MODE_POWERDOWN 0
/* Keep power on, switch open */
#define PI3USB30532_MODE_POWERON 1
/* 4-lane DP 1.2
* dp0~3 : rx2, tx2, tx1, rx1
* hpd+/-: rfu1, rfu2
*/
#define PI3USB30532_MODE_DP PI3USB30532_BIT_DP
/* 4-lane DP 1.2 swap
* dp0~3 : rx1, tx1, tx2, rx2
* hpd+/-: rfu2, rfu1
*/
#define PI3USB30532_MODE_DP_SWAP (PI3USB30532_MODE_DP | PI3USB30532_BIT_SWAP)
/* USB3
* tx/rx : tx1, rx1
*/
#define PI3USB30532_MODE_USB PI3USB30532_BIT_USB
/* USB3 swap
* tx/rx : tx2, rx2
*/
#define PI3USB30532_MODE_USB_SWAP (PI3USB30532_MODE_USB | PI3USB30532_BIT_SWAP)
/* 2-lane DP 1.2 + USB3
* tx/rx : tx1, rx1
* dp0~1 : rx2, tx2
* hpd+/-: rfu1, rfu2
*/
#define PI3USB30532_MODE_DP_USB (PI3USB30532_BIT_DP | PI3USB30532_BIT_USB)
/* 2-lane DP 1.2 + USB3, swap
* tx/rx : tx2, rx2
* dp0-1 : rx1, tx1
* hpd+/-: rfu2, rfu1
*/
#define PI3USB30532_MODE_DP_USB_SWAP (PI3USB30532_MODE_DP_USB | \
PI3USB30532_BIT_SWAP)
#endif /* __CROS_EC_PI3USB30532_H */