Source
x
*****************************************************************************/
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* winbond-cir.c - Driver for the Consumer IR functionality of Winbond
* SuperI/O chips.
*
* Currently supports the Winbond WPCD376i chip (PNP id WEC1022), but
* could probably support others (Winbond WEC102X, NatSemi, etc)
* with minor modifications.
*
* Original Author: David Härdeman <david@hardeman.nu>
* Copyright (C) 2012 Sean Young <sean@mess.org>
* Copyright (C) 2009 - 2011 David Härdeman <david@hardeman.nu>
*
* Dedicated to my daughter Matilda, without whose loving attention this
* driver would have been finished in half the time and with a fraction
* of the bugs.
*
* Written using:
* o Winbond WPCD376I datasheet helpfully provided by Jesse Barnes at Intel
* o NatSemi PC87338/PC97338 datasheet (for the serial port stuff)
* o DSDT dumps
*
* Supported features:
* o IR Receive
* o IR Transmit
* o Wake-On-CIR functionality
* o Carrier detection
*/
/* CEIR Wake-Up Registers, relative to data->wbase */
/* CEIR Receiver Control */
/* CEIR Receiver Status */
/* CEIR Receiver Event Enable */
/* CEIR Receiver Counter Low */
/* CEIR Receiver Counter High */
/* CEIR Receiver Index */
/* CEIR Receiver Data */
/* CEIR Re. Compare Strlen */
/* CEIR Re. Configuration 1 */
/* CEIR Re. Configuration 2 */
/* CEIR Enhanced Functionality Registers, relative to data->ebase */
/* Enhanced IR Control Status */
/* Infrared Counter Control */
/* Infrared Counter LSB */
/* Infrared Counter MSB */
/* Infrared Emitter Status */
/* SP3 Banked Registers, relative to data->sbase */
/* Bank Select, all banks */
/* Bank 0 */
/* FIFO RX data (r) */
/* FIFO TX data (w) */
/* Interrupt Enable */
/* Event Identification (r) */
/* FIFO Control (w) */
/* Mode Control */
/* Link Status */
/* Modem Status */
/* Aux Status and Control */
/* Bank 2 */
/* Baud Divisor LSB */
/* Baud Divisor MSB */
/* Extended Control 1 */
/* Extended Control 2 */
/* TX FIFO Level */
/* RX FIFO Level */
/* Bank 3 */
/* Module Identification */
/* LCR Shadow */
/* FCR Shadow */
/* Bank 4 */
/* Infrared Control 1 */
/* Bank 5 */