Home | History | Annotate | Download | only in hsi
      1 /*
      2  * Part of the HSI character device driver.
      3  *
      4  * Copyright (C) 2010 Nokia Corporation. All rights reserved.
      5  *
      6  * Contact: Andras Domokos <andras.domokos at nokia.com>
      7  *
      8  * This program is free software; you can redistribute it and/or
      9  * modify it under the terms of the GNU General Public License
     10  * version 2 as published by the Free Software Foundation.
     11  *
     12  * This program is distributed in the hope that it will be useful, but
     13  * WITHOUT ANY WARRANTY; without even the implied warranty of
     14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
     15  * General Public License for more details.
     16  *
     17  * You should have received a copy of the GNU General Public License
     18  * along with this program; if not, write to the Free Software
     19  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
     20  * 02110-1301 USA
     21  */
     22 
     23 
     24 #ifndef __HSI_CHAR_H
     25 #define __HSI_CHAR_H
     26 
     27 #define HSI_CHAR_MAGIC		'k'
     28 #define HSC_IOW(num, dtype)	_IOW(HSI_CHAR_MAGIC, num, dtype)
     29 #define HSC_IOR(num, dtype)	_IOR(HSI_CHAR_MAGIC, num, dtype)
     30 #define HSC_IOWR(num, dtype)	_IOWR(HSI_CHAR_MAGIC, num, dtype)
     31 #define HSC_IO(num)		_IO(HSI_CHAR_MAGIC, num)
     32 
     33 #define HSC_RESET		HSC_IO(16)
     34 #define HSC_SET_PM		HSC_IO(17)
     35 #define HSC_SEND_BREAK		HSC_IO(18)
     36 #define HSC_SET_RX		HSC_IOW(19, struct hsc_rx_config)
     37 #define HSC_GET_RX		HSC_IOW(20, struct hsc_rx_config)
     38 #define HSC_SET_TX		HSC_IOW(21, struct hsc_tx_config)
     39 #define HSC_GET_TX		HSC_IOW(22, struct hsc_tx_config)
     40 
     41 #define HSC_PM_DISABLE		0
     42 #define HSC_PM_ENABLE		1
     43 
     44 #define HSC_MODE_STREAM		1
     45 #define HSC_MODE_FRAME		2
     46 #define HSC_FLOW_SYNC		0
     47 #define HSC_ARB_RR		0
     48 #define HSC_ARB_PRIO		1
     49 
     50 struct hsc_rx_config {
     51 	uint32_t mode;
     52 	uint32_t flow;
     53 	uint32_t channels;
     54 };
     55 
     56 struct hsc_tx_config {
     57 	uint32_t mode;
     58 	uint32_t channels;
     59 	uint32_t speed;
     60 	uint32_t arb_mode;
     61 };
     62 
     63 #endif /* __HSI_CHAR_H */
     64