summaryrefslogtreecommitdiff
path: root/components/drivers/include
diff options
context:
space:
mode:
authoryiyue.fang <[email protected]>2013-06-28 00:36:54 +0800
committeryiyue.fang <[email protected]>2013-06-28 00:36:54 +0800
commit621fbdb90c9f9529700ed8894b01919ac1ec1929 (patch)
tree270fa1d9a805b96693ec461c5af7d3a87caf501c /components/drivers/include
parent90ac1c9ba4ce6c23e52ec1ac04ce67968edcc739 (diff)
Embedded GPLv2 license in drivers
Diffstat (limited to 'components/drivers/include')
-rw-r--r--components/drivers/include/drivers/alarm.h16
-rw-r--r--components/drivers/include/drivers/i2c-bit-ops.h16
-rw-r--r--components/drivers/include/drivers/i2c.h16
-rw-r--r--components/drivers/include/drivers/i2c_dev.h16
-rw-r--r--components/drivers/include/drivers/mmcsd_card.h16
-rw-r--r--components/drivers/include/drivers/mmcsd_cmd.h16
-rw-r--r--components/drivers/include/drivers/mmcsd_core.h16
-rw-r--r--components/drivers/include/drivers/mmcsd_host.h16
-rw-r--r--components/drivers/include/drivers/mtd_nand.h16
-rw-r--r--components/drivers/include/drivers/mtd_nor.h16
-rw-r--r--components/drivers/include/drivers/rtc.h16
-rw-r--r--components/drivers/include/drivers/sd.h25
-rw-r--r--components/drivers/include/drivers/sdio.h227
-rw-r--r--components/drivers/include/drivers/sdio_func_ids.h39
-rw-r--r--components/drivers/include/drivers/serial.h16
-rw-r--r--components/drivers/include/drivers/spi.h16
-rw-r--r--components/drivers/include/drivers/usb_device.h47
-rw-r--r--components/drivers/include/drivers/usb_host.h130
-rw-r--r--components/drivers/include/rtdevice.h16
19 files changed, 478 insertions, 214 deletions
diff --git a/components/drivers/include/drivers/alarm.h b/components/drivers/include/drivers/alarm.h
index 546b765a60..010e954810 100644
--- a/components/drivers/include/drivers/alarm.h
+++ b/components/drivers/include/drivers/alarm.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/i2c-bit-ops.h b/components/drivers/include/drivers/i2c-bit-ops.h
index c7cd6c31db..6360b99a92 100644
--- a/components/drivers/include/drivers/i2c-bit-ops.h
+++ b/components/drivers/include/drivers/i2c-bit-ops.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/i2c.h b/components/drivers/include/drivers/i2c.h
index 098d50232a..e2bdcb06bb 100644
--- a/components/drivers/include/drivers/i2c.h
+++ b/components/drivers/include/drivers/i2c.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/i2c_dev.h b/components/drivers/include/drivers/i2c_dev.h
index ea08751db3..81e9896bcf 100644
--- a/components/drivers/include/drivers/i2c_dev.h
+++ b/components/drivers/include/drivers/i2c_dev.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mmcsd_card.h b/components/drivers/include/drivers/mmcsd_card.h
index 20bb7dca7a..f5c1a4c91f 100644
--- a/components/drivers/include/drivers/mmcsd_card.h
+++ b/components/drivers/include/drivers/mmcsd_card.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mmcsd_cmd.h b/components/drivers/include/drivers/mmcsd_cmd.h
index 1b12f6b448..2700771531 100644
--- a/components/drivers/include/drivers/mmcsd_cmd.h
+++ b/components/drivers/include/drivers/mmcsd_cmd.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mmcsd_core.h b/components/drivers/include/drivers/mmcsd_core.h
index 5326425bfd..1e5560b893 100644
--- a/components/drivers/include/drivers/mmcsd_core.h
+++ b/components/drivers/include/drivers/mmcsd_core.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mmcsd_host.h b/components/drivers/include/drivers/mmcsd_host.h
index 9cbbb51a76..3b68058ba4 100644
--- a/components/drivers/include/drivers/mmcsd_host.h
+++ b/components/drivers/include/drivers/mmcsd_host.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mtd_nand.h b/components/drivers/include/drivers/mtd_nand.h
index fdcece3a57..020c006eea 100644
--- a/components/drivers/include/drivers/mtd_nand.h
+++ b/components/drivers/include/drivers/mtd_nand.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/mtd_nor.h b/components/drivers/include/drivers/mtd_nor.h
index 9797b167de..c51ce87f41 100644
--- a/components/drivers/include/drivers/mtd_nor.h
+++ b/components/drivers/include/drivers/mtd_nor.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2012, Shanghai Real-Thread Technology Co., Ltd
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/rtc.h b/components/drivers/include/drivers/rtc.h
index f983a803b0..18108091c8 100644
--- a/components/drivers/include/drivers/rtc.h
+++ b/components/drivers/include/drivers/rtc.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/sd.h b/components/drivers/include/drivers/sd.h
index a2a330d6dd..fb29c8e774 100644
--- a/components/drivers/include/drivers/sd.h
+++ b/components/drivers/include/drivers/sd.h
@@ -1,19 +1,30 @@
-#ifndef __SD_H__
-#define __SD_H__
/*
* File : sd.h
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
- * Date Author Notes
- * 2011-07-25 weety first version
+ * Date Author Notes
+ * 2011-07-25 weety first version
*/
+#ifndef __SD_H__
+#define __SD_H__
+
#include <rtthread.h>
#include <drivers/mmcsd_host.h>
diff --git a/components/drivers/include/drivers/sdio.h b/components/drivers/include/drivers/sdio.h
index d61bcfa392..6533ec3cbb 100644
--- a/components/drivers/include/drivers/sdio.h
+++ b/components/drivers/include/drivers/sdio.h
@@ -3,20 +3,28 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
- * Date Author Notes
- * 2012-01-15 weety first version
+ * Date Author Notes
+ * 2012-01-15 weety first version
*/
-
#ifndef __SDIO_H__
#define __SDIO_H__
-
#include <rtthread.h>
#include <drivers/mmcsd_host.h>
#include <drivers/mmcsd_card.h>
@@ -30,100 +38,99 @@ extern "C" {
* Card Common Control Registers (CCCR)
*/
-#define SDIO_REG_CCCR_CCCR_REV 0x00
+#define SDIO_REG_CCCR_CCCR_REV 0x00
-#define SDIO_CCCR_REV_1_00 0 /* CCCR/FBR Version 1.00 */
-#define SDIO_CCCR_REV_1_10 1 /* CCCR/FBR Version 1.10 */
-#define SDIO_CCCR_REV_1_20 2 /* CCCR/FBR Version 1.20 */
+#define SDIO_CCCR_REV_1_00 0 /* CCCR/FBR Version 1.00 */
+#define SDIO_CCCR_REV_1_10 1 /* CCCR/FBR Version 1.10 */
+#define SDIO_CCCR_REV_1_20 2 /* CCCR/FBR Version 1.20 */
-#define SDIO_SDIO_REV_1_00 0 /* SDIO Spec Version 1.00 */
-#define SDIO_SDIO_REV_1_10 1 /* SDIO Spec Version 1.10 */
-#define SDIO_SDIO_REV_1_20 2 /* SDIO Spec Version 1.20 */
-#define SDIO_SDIO_REV_2_00 3 /* SDIO Spec Version 2.00 */
+#define SDIO_SDIO_REV_1_00 0 /* SDIO Spec Version 1.00 */
+#define SDIO_SDIO_REV_1_10 1 /* SDIO Spec Version 1.10 */
+#define SDIO_SDIO_REV_1_20 2 /* SDIO Spec Version 1.20 */
+#define SDIO_SDIO_REV_2_00 3 /* SDIO Spec Version 2.00 */
-#define SDIO_REG_CCCR_SD_REV 0x01
+#define SDIO_REG_CCCR_SD_REV 0x01
-#define SDIO_SD_REV_1_01 0 /* SD Physical Spec Version 1.01 */
-#define SDIO_SD_REV_1_10 1 /* SD Physical Spec Version 1.10 */
-#define SDIO_SD_REV_2_00 2 /* SD Physical Spec Version 2.00 */
+#define SDIO_SD_REV_1_01 0 /* SD Physical Spec Version 1.01 */
+#define SDIO_SD_REV_1_10 1 /* SD Physical Spec Version 1.10 */
+#define SDIO_SD_REV_2_00 2 /* SD Physical Spec Version 2.00 */
-#define SDIO_REG_CCCR_IO_EN 0x02
-#define SDIO_REG_CCCR_IO_RDY 0x03
+#define SDIO_REG_CCCR_IO_EN 0x02
+#define SDIO_REG_CCCR_IO_RDY 0x03
-#define SDIO_REG_CCCR_INT_EN 0x04 /* Function/Master Interrupt Enable */
-#define SDIO_REG_CCCR_INT_PEND 0x05 /* Function Interrupt Pending */
+#define SDIO_REG_CCCR_INT_EN 0x04 /* Function/Master Interrupt Enable */
+#define SDIO_REG_CCCR_INT_PEND 0x05 /* Function Interrupt Pending */
-#define SDIO_REG_CCCR_IO_ABORT 0x06 /* function abort/card reset */
+#define SDIO_REG_CCCR_IO_ABORT 0x06 /* function abort/card reset */
-#define SDIO_REG_CCCR_BUS_IF 0x07 /* bus interface controls */
+#define SDIO_REG_CCCR_BUS_IF 0x07 /* bus interface controls */
-#define SDIO_BUS_WIDTH_1BIT 0x00
-#define SDIO_BUS_WIDTH_4BIT 0x02
-#define SDIO_BUS_ECSI 0x20 /* Enable continuous SPI interrupt */
-#define SDIO_BUS_SCSI 0x40 /* Support continuous SPI interrupt */
+#define SDIO_BUS_WIDTH_1BIT 0x00
+#define SDIO_BUS_WIDTH_4BIT 0x02
+#define SDIO_BUS_ECSI 0x20 /* Enable continuous SPI interrupt */
+#define SDIO_BUS_SCSI 0x40 /* Support continuous SPI interrupt */
-#define SDIO_BUS_ASYNC_INT 0x20
+#define SDIO_BUS_ASYNC_INT 0x20
-#define SDIO_BUS_CD_DISABLE 0x80 /* disable pull-up on DAT3 (pin 1) */
+#define SDIO_BUS_CD_DISABLE 0x80 /* disable pull-up on DAT3 (pin 1) */
-#define SDIO_REG_CCCR_CARD_CAPS 0x08
+#define SDIO_REG_CCCR_CARD_CAPS 0x08
-#define SDIO_CCCR_CAP_SDC 0x01 /* can do CMD52 while data transfer */
-#define SDIO_CCCR_CAP_SMB 0x02 /* can do multi-block xfers (CMD53) */
-#define SDIO_CCCR_CAP_SRW 0x04 /* supports read-wait protocol */
-#define SDIO_CCCR_CAP_SBS 0x08 /* supports suspend/resume */
-#define SDIO_CCCR_CAP_S4MI 0x10 /* interrupt during 4-bit CMD53 */
-#define SDIO_CCCR_CAP_E4MI 0x20 /* enable ints during 4-bit CMD53 */
-#define SDIO_CCCR_CAP_LSC 0x40 /* low speed card */
-#define SDIO_CCCR_CAP_4BLS 0x80 /* 4 bit low speed card */
+#define SDIO_CCCR_CAP_SDC 0x01 /* can do CMD52 while data transfer */
+#define SDIO_CCCR_CAP_SMB 0x02 /* can do multi-block xfers (CMD53) */
+#define SDIO_CCCR_CAP_SRW 0x04 /* supports read-wait protocol */
+#define SDIO_CCCR_CAP_SBS 0x08 /* supports suspend/resume */
+#define SDIO_CCCR_CAP_S4MI 0x10 /* interrupt during 4-bit CMD53 */
+#define SDIO_CCCR_CAP_E4MI 0x20 /* enable ints during 4-bit CMD53 */
+#define SDIO_CCCR_CAP_LSC 0x40 /* low speed card */
+#define SDIO_CCCR_CAP_4BLS 0x80 /* 4 bit low speed card */
-#define SDIO_REG_CCCR_CIS_PTR 0x09 /* common CIS pointer (3 bytes) */
+#define SDIO_REG_CCCR_CIS_PTR 0x09 /* common CIS pointer (3 bytes) */
/* Following 4 regs are valid only if SBS is set */
-#define SDIO_REG_CCCR_BUS_SUSPEND 0x0c
-#define SDIO_REG_CCCR_FUNC_SEL 0x0d
-#define SDIO_REG_CCCR_EXEC_FLAG 0x0e
-#define SDIO_REG_CCCR_READY_FLAG 0x0f
+#define SDIO_REG_CCCR_BUS_SUSPEND 0x0c
+#define SDIO_REG_CCCR_FUNC_SEL 0x0d
+#define SDIO_REG_CCCR_EXEC_FLAG 0x0e
+#define SDIO_REG_CCCR_READY_FLAG 0x0f
-#define SDIO_REG_CCCR_FN0_BLKSIZE 0x10 /* 2bytes, 0x10~0x11 */
+#define SDIO_REG_CCCR_FN0_BLKSIZE 0x10 /* 2bytes, 0x10~0x11 */
-#define SDIO_REG_CCCR_POWER_CTRL 0x12
+#define SDIO_REG_CCCR_POWER_CTRL 0x12
-#define SDIO_POWER_SMPC 0x01 /* Supports Master Power Control */
-#define SDIO_POWER_EMPC 0x02 /* Enable Master Power Control */
+#define SDIO_POWER_SMPC 0x01 /* Supports Master Power Control */
+#define SDIO_POWER_EMPC 0x02 /* Enable Master Power Control */
-#define SDIO_REG_CCCR_SPEED 0x13
+#define SDIO_REG_CCCR_SPEED 0x13
-#define SDIO_SPEED_SHS 0x01 /* Supports High-Speed mode */
-#define SDIO_SPEED_EHS 0x02 /* Enable High-Speed mode */
+#define SDIO_SPEED_SHS 0x01 /* Supports High-Speed mode */
+#define SDIO_SPEED_EHS 0x02 /* Enable High-Speed mode */
/*
* Function Basic Registers (FBR)
*/
-#define SDIO_REG_FBR_BASE(f) ((f) * 0x100) /* base of function f's FBRs */
+#define SDIO_REG_FBR_BASE(f) ((f) * 0x100) /* base of function f's FBRs */
-#define SDIO_REG_FBR_STD_FUNC_IF 0x00
+#define SDIO_REG_FBR_STD_FUNC_IF 0x00
-#define SDIO_FBR_SUPPORTS_CSA 0x40 /* supports Code Storage Area */
-#define SDIO_FBR_ENABLE_CSA 0x80 /* enable Code Storage Area */
+#define SDIO_FBR_SUPPORTS_CSA 0x40 /* supports Code Storage Area */
+#define SDIO_FBR_ENABLE_CSA 0x80 /* enable Code Storage Area */
-#define SDIO_REG_FBR_STD_IF_EXT 0x01
+#define SDIO_REG_FBR_STD_IF_EXT 0x01
-#define SDIO_REG_FBR_POWER 0x02
+#define SDIO_REG_FBR_POWER 0x02
-#define SDIO_FBR_POWER_SPS 0x01 /* Supports Power Selection */
-#define SDIO_FBR_POWER_EPS 0x02 /* Enable (low) Power Selection */
+#define SDIO_FBR_POWER_SPS 0x01 /* Supports Power Selection */
+#define SDIO_FBR_POWER_EPS 0x02 /* Enable (low) Power Selection */
-#define SDIO_REG_FBR_CIS 0x09 /* CIS pointer (3 bytes) */
+#define SDIO_REG_FBR_CIS 0x09 /* CIS pointer (3 bytes) */
-#define SDIO_REG_FBR_CSA 0x0C /* CSA pointer (3 bytes) */
+#define SDIO_REG_FBR_CSA 0x0C /* CSA pointer (3 bytes) */
-#define SDIO_REG_FBR_CSA_DATA 0x0F
-
-#define SDIO_REG_FBR_BLKSIZE 0x10 /* block size (2 bytes) */
+#define SDIO_REG_FBR_CSA_DATA 0x0F
+#define SDIO_REG_FBR_BLKSIZE 0x10 /* block size (2 bytes) */
/* SDIO CIS Tuple code */
#define CISTPL_NULL 0x00
@@ -142,55 +149,85 @@ extern "C" {
#define SDIO_ANY_MAN_ID 0xffff
#define SDIO_ANY_PROD_ID 0xffff
-struct rt_sdio_device_id {
- rt_uint8_t func_code;
- rt_uint16_t manufacturer;
- rt_uint16_t product;
+struct rt_sdio_device_id
+{
+ rt_uint8_t func_code;
+ rt_uint16_t manufacturer;
+ rt_uint16_t product;
};
-struct rt_sdio_driver {
- char *name;
- rt_int32_t (*probe)(struct rt_mmcsd_card *card);
- rt_int32_t (*remove)(struct rt_mmcsd_card *card);
- struct rt_sdio_device_id *id;
+struct rt_sdio_driver
+{
+ char *name;
+ rt_int32_t (*probe)(struct rt_mmcsd_card *card);
+ rt_int32_t (*remove)(struct rt_mmcsd_card *card);
+ struct rt_sdio_device_id *id;
};
-
-
-rt_int32_t sdio_io_send_op_cond(struct rt_mmcsd_host *host, rt_uint32_t ocr, rt_uint32_t
-*cmd5_resp);
-rt_int32_t sdio_io_rw_direct(struct rt_mmcsd_card *card, rt_int32_t rw, rt_uint32_t fn,
- rt_uint32_t reg_addr, rt_uint8_t *pdata, rt_uint8_t raw);
-rt_int32_t sdio_io_rw_extended(struct rt_mmcsd_card *card, rt_int32_t rw, rt_uint32_t fn,
- rt_uint32_t addr, rt_int32_t op_code, rt_uint8_t *buf, rt_uint32_t blocks, rt_uint32_t blksize);
+rt_int32_t sdio_io_send_op_cond(struct rt_mmcsd_host *host,
+ rt_uint32_t ocr,
+ rt_uint32_t *cmd5_resp);
+rt_int32_t sdio_io_rw_direct(struct rt_mmcsd_card *card,
+ rt_int32_t rw,
+ rt_uint32_t fn,
+ rt_uint32_t reg_addr,
+ rt_uint8_t *pdata,
+ rt_uint8_t raw);
+rt_int32_t sdio_io_rw_extended(struct rt_mmcsd_card *card,
+ rt_int32_t rw,
+ rt_uint32_t fn,
+ rt_uint32_t addr,
+ rt_int32_t op_code,
+ rt_uint8_t *buf,
+ rt_uint32_t blocks,
+ rt_uint32_t blksize);
rt_uint8_t sdio_io_readb(struct rt_sdio_function *func,
- rt_uint32_t reg, rt_int32_t *err);
+ rt_uint32_t reg,
+ rt_int32_t *err);
rt_int32_t sdio_io_writeb(struct rt_sdio_function *func,
- rt_uint32_t reg, rt_uint8_t data);
-rt_uint16_t sdio_io_readw(struct rt_sdio_function *func, rt_uint32_t addr, rt_int32_t *err);
-rt_int32_t sdio_io_writew(struct rt_sdio_function *func, rt_uint16_t data, rt_uint32_t addr);
-rt_uint32_t sdio_io_readl(struct rt_sdio_function *func, rt_uint32_t addr, rt_int32_t *err);
-rt_int32_t sdio_io_writel(struct rt_sdio_function *func, rt_uint32_t data, rt_uint32_t addr);
+ rt_uint32_t reg,
+ rt_uint8_t data);
+rt_uint16_t sdio_io_readw(struct rt_sdio_function *func,
+ rt_uint32_t addr,
+ rt_int32_t *err);
+rt_int32_t sdio_io_writew(struct rt_sdio_function *func,
+ rt_uint16_t data,
+ rt_uint32_t addr);
+rt_uint32_t sdio_io_readl(struct rt_sdio_function *func,
+ rt_uint32_t addr,
+ rt_int32_t *err);
+rt_int32_t sdio_io_writel(struct rt_sdio_function *func,
+ rt_uint32_t data,
+ rt_uint32_t addr);
rt_int32_t sdio_io_read_multi_fifo_b(struct rt_sdio_function *func,
- rt_uint32_t addr, rt_uint8_t *buf, rt_uint32_t len);
+ rt_uint32_t addr,
+ rt_uint8_t *buf,
+ rt_uint32_t len);
rt_int32_t sdio_io_write_multi_fifo_b(struct rt_sdio_function *func,
- rt_uint32_t addr, rt_uint8_t *buf, rt_uint32_t len);
+ rt_uint32_t addr,
+ rt_uint8_t *buf,
+ rt_uint32_t len);
rt_int32_t sdio_io_read_multi_incr_b(struct rt_sdio_function *func,
- rt_uint32_t addr, rt_uint8_t *buf, rt_uint32_t len);
+ rt_uint32_t addr,
+ rt_uint8_t *buf,
+ rt_uint32_t len);
rt_int32_t sdio_io_write_multi_incr_b(struct rt_sdio_function *func,
- rt_uint32_t addr, rt_uint8_t *buf, rt_uint32_t len);
+ rt_uint32_t addr,
+ rt_uint8_t *buf,
+ rt_uint32_t len);
rt_int32_t init_sdio(struct rt_mmcsd_host *host, rt_uint32_t ocr);
-rt_int32_t sdio_attach_irq(struct rt_sdio_function *func, rt_sdio_irq_handler_t *handler);
+rt_int32_t sdio_attach_irq(struct rt_sdio_function *func,
+ rt_sdio_irq_handler_t *handler);
rt_int32_t sdio_detach_irq(struct rt_sdio_function *func);
void sdio_irq_wakeup(struct rt_mmcsd_host *host);
rt_int32_t sdio_enable_func(struct rt_sdio_function *func);
rt_int32_t sdio_disable_func(struct rt_sdio_function *func);
-rt_int32_t sdio_set_block_size(struct rt_sdio_function *func, rt_uint32_t blksize);
+rt_int32_t sdio_set_block_size(struct rt_sdio_function *func,
+ rt_uint32_t blksize);
rt_int32_t sdio_register_driver(struct rt_sdio_driver *driver);
rt_int32_t sdio_unregister_driver(struct rt_sdio_driver *driver);
void rt_sdio_init(void);
-
#ifdef __cplusplus
}
#endif
diff --git a/components/drivers/include/drivers/sdio_func_ids.h b/components/drivers/include/drivers/sdio_func_ids.h
index 1885533544..9fee7c238a 100644
--- a/components/drivers/include/drivers/sdio_func_ids.h
+++ b/components/drivers/include/drivers/sdio_func_ids.h
@@ -3,34 +3,43 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
- * Date Author Notes
- * 2012-02-26 weety first version
+ * Date Author Notes
+ * 2012-02-26 weety first version
*/
#ifndef __SDIO_FUNC_IDS_H__
#define __SDIO_FUNC_IDS_H__
-
#ifdef __cplusplus
extern "C" {
#endif
/* Standard SDIO Function Interfaces */
-#define SDIO_FUNC_CODE_NONE 0x00 /* Not a SDIO standard interface */
-#define SDIO_FUNC_CODE_UART 0x01 /* SDIO Standard UART */
-#define SDIO_FUNC_CODE_BT_A 0x02 /* SDIO Type-A for Bluetooth standard interface */
-#define SDIO_FUNC_CODE_BT_B 0x03 /* SDIO Type-B for Bluetooth standard interface */
-#define SDIO_FUNC_CODE_GPS 0x04 /* SDIO GPS standard interface */
-#define SDIO_FUNC_CODE_CAMERA 0x05 /* SDIO Camera standard interface */
-#define SDIO_FUNC_CODE_PHS 0x06 /* SDIO PHS standard interface */
-#define SDIO_FUNC_CODE_WLAN 0x07 /* SDIO WLAN interface */
-#define SDIO_FUNC_CODE_ATA 0x08 /* Embedded SDIO-ATA standard interface */
+#define SDIO_FUNC_CODE_NONE 0x00 /* Not a SDIO standard interface */
+#define SDIO_FUNC_CODE_UART 0x01 /* SDIO Standard UART */
+#define SDIO_FUNC_CODE_BT_A 0x02 /* SDIO Type-A for Bluetooth standard interface */
+#define SDIO_FUNC_CODE_BT_B 0x03 /* SDIO Type-B for Bluetooth standard interface */
+#define SDIO_FUNC_CODE_GPS 0x04 /* SDIO GPS standard interface */
+#define SDIO_FUNC_CODE_CAMERA 0x05 /* SDIO Camera standard interface */
+#define SDIO_FUNC_CODE_PHS 0x06 /* SDIO PHS standard interface */
+#define SDIO_FUNC_CODE_WLAN 0x07 /* SDIO WLAN interface */
+#define SDIO_FUNC_CODE_ATA 0x08 /* Embedded SDIO-ATA standard interface */
/* manufacturer id, product io */
diff --git a/components/drivers/include/drivers/serial.h b/components/drivers/include/drivers/serial.h
index edf05cfa1d..3d118fb45b 100644
--- a/components/drivers/include/drivers/serial.h
+++ b/components/drivers/include/drivers/serial.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/spi.h b/components/drivers/include/drivers/spi.h
index a9faf933ad..cfa4b73ca3 100644
--- a/components/drivers/include/drivers/spi.h
+++ b/components/drivers/include/drivers/spi.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
diff --git a/components/drivers/include/drivers/usb_device.h b/components/drivers/include/drivers/usb_device.h
index 2f464def3f..db03ee36ef 100644
--- a/components/drivers/include/drivers/usb_device.h
+++ b/components/drivers/include/drivers/usb_device.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
@@ -175,15 +185,16 @@ typedef struct udev_msg* udev_msg_t;
udevice_t rt_usbd_device_create(void);
uconfig_t rt_usbd_config_create(void);
-uclass_t rt_usbd_class_create(udevice_t device, udev_desc_t dev_desc,
+uclass_t rt_usbd_class_create(udevice_t device,
+ udev_desc_t dev_desc,
uclass_ops_t ops);
uintf_t rt_usbd_interface_create(udevice_t device, uintf_handler_t handler);
uep_t rt_usbd_endpoint_create(uep_desc_t ep_desc, udep_handler_t handler);
ualtsetting_t rt_usbd_altsetting_create(rt_size_t desc_size);
rt_err_t rt_usbd_core_init(void);
-rt_err_t rt_usb_device_init(const char* udc_name);
-rt_err_t rt_usbd_post_event(struct udev_msg* msg, rt_size_t size);
+rt_err_t rt_usb_device_init(const char *udc_name);
+rt_err_t rt_usbd_post_event(struct udev_msg *msg, rt_size_t size);
rt_err_t rt_usbd_free_device(udevice_t device);
rt_err_t rt_usbd_device_set_controller(udevice_t device, udcd_t dcd);
rt_err_t rt_usbd_device_set_descriptor(udevice_t device, udev_desc_t dev_desc);
@@ -193,14 +204,20 @@ rt_err_t rt_usbd_config_add_class(uconfig_t cfg, uclass_t cls);
rt_err_t rt_usbd_class_add_interface(uclass_t cls, uintf_t intf);
rt_err_t rt_usbd_interface_add_altsetting(uintf_t intf, ualtsetting_t setting);
rt_err_t rt_usbd_altsetting_add_endpoint(ualtsetting_t setting, uep_t ep);
-rt_err_t rt_usbd_altsetting_config_descriptor(ualtsetting_t setting, const void* desc, rt_off_t intf_pos);
+rt_err_t rt_usbd_altsetting_config_descriptor(ualtsetting_t setting,
+ const void *desc,
+ rt_off_t intf_pos);
rt_err_t rt_usbd_set_config(udevice_t device, rt_uint8_t value);
rt_err_t rt_usbd_set_altsetting(uintf_t intf, rt_uint8_t value);
udevice_t rt_usbd_find_device(udcd_t dcd);
uconfig_t rt_usbd_find_config(udevice_t device, rt_uint8_t value);
-uintf_t rt_usbd_find_interface(udevice_t device, rt_uint8_t value, uclass_t *pcls);
-uep_t rt_usbd_find_endpoint(udevice_t device, uclass_t* pcls, rt_uint8_t ep_addr);
+uintf_t rt_usbd_find_interface(udevice_t device,
+ rt_uint8_t value,
+ uclass_t *pcls);
+uep_t rt_usbd_find_endpoint(udevice_t device,
+ uclass_t *pcls,
+ rt_uint8_t ep_addr);
uclass_t rt_usbd_class_mstorage_create(udevice_t device);
uclass_t rt_usbd_class_cdc_create(udevice_t device);
@@ -218,14 +235,18 @@ rt_inline rt_err_t dcd_set_address(udcd_t dcd, rt_uint8_t value)
return dcd->ops->set_address(value);
}
-rt_inline rt_err_t dcd_clear_feature(udcd_t dcd, rt_uint16_t value, rt_uint16_t index)
+rt_inline rt_err_t dcd_clear_feature(udcd_t dcd,
+ rt_uint16_t value,
+ rt_uint16_t index)
{
RT_ASSERT(dcd != RT_NULL);
return dcd->ops->clear_feature(value, index);
}
-rt_inline rt_err_t dcd_set_feature(udcd_t dcd, rt_uint8_t value, rt_uint16_t index)
+rt_inline rt_err_t dcd_set_feature(udcd_t dcd,
+ rt_uint8_t value,
+ rt_uint16_t index)
{
RT_ASSERT(dcd != RT_NULL);
@@ -275,7 +296,9 @@ rt_inline rt_err_t dcd_ep_read(udcd_t dcd, uep_t ep, void *buffer,
return dcd->ops->ep_read(ep, buffer, size);
}
-rt_inline rt_size_t dcd_ep_write(udcd_t dcd, uep_t ep, void *buffer,
+rt_inline rt_size_t dcd_ep_write(udcd_t dcd,
+ uep_t ep,
+ void *buffer,
rt_size_t size)
{
RT_ASSERT(dcd != RT_NULL);
diff --git a/components/drivers/include/drivers/usb_host.h b/components/drivers/include/drivers/usb_host.h
index 8803d5236b..a5a850d4cf 100644
--- a/components/drivers/include/drivers/usb_host.h
+++ b/components/drivers/include/drivers/usb_host.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2011, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes
@@ -167,23 +177,27 @@ void rt_usb_hub_thread(void);
uinst_t rt_usb_alloc_instance(void);
rt_err_t rt_usb_attatch_instance(uinst_t uinst);
rt_err_t rt_usb_detach_instance(uinst_t uinst);
-rt_err_t rt_usb_get_descriptor(uinst_t uinst, rt_uint8_t type, void* buffer,
- int nbytes);
+rt_err_t rt_usb_get_descriptor(uinst_t uinst,
+ rt_uint8_t type,
+ void *buffer,
+ int nbytes);
rt_err_t rt_usb_set_configure(uinst_t uinst, int config);
rt_err_t rt_usb_set_address(uinst_t uinst);
rt_err_t rt_usb_set_interface(uinst_t uinst, int intf);
rt_err_t rt_usb_clear_feature(uinst_t uinst, int endpoint, int feature);
-rt_err_t rt_usb_get_interface_descriptor(ucfg_desc_t cfg_desc, int num,
- uintf_desc_t* intf_desc);
-rt_err_t rt_usb_get_endpoint_descriptor(uintf_desc_t intf_desc, int num,
- uep_desc_t* ep_desc);
+rt_err_t rt_usb_get_interface_descriptor(ucfg_desc_t cfg_desc,
+ int num,
+ uintf_desc_t *intf_desc);
+rt_err_t rt_usb_get_endpoint_descriptor(uintf_desc_t intf_desc,
+ int num,
+ uep_desc_t *ep_desc);
/* usb class driver interface */
rt_err_t rt_usb_class_driver_init(void);
rt_err_t rt_usb_class_driver_register(ucd_t drv);
rt_err_t rt_usb_class_driver_unregister(ucd_t drv);
-rt_err_t rt_usb_class_driver_run(ucd_t drv, void* args);
-rt_err_t rt_usb_class_driver_stop(ucd_t drv, void* args);
+rt_err_t rt_usb_class_driver_run(ucd_t drv, void *args);
+rt_err_t rt_usb_class_driver_stop(ucd_t drv, void *args);
ucd_t rt_usb_class_driver_find(int class_code, int subclass_code);
/* usb class driver implement */
@@ -197,28 +211,39 @@ uprotocal_t rt_usb_hid_protocal_kbd(void);
uprotocal_t rt_usb_hid_protocal_mouse(void);
/* usb adk class driver interface */
-rt_err_t rt_usb_adk_set_string(const char* manufacturer, const char* model,
- const char* description, const char* version, const char* uri,
- const char* serial);
+rt_err_t rt_usb_adk_set_string(const char *manufacturer,
+ const char *model,
+ const char *description,
+ const char *version,
+ const char *uri,
+ const char *serial);
/* usb hub interface */
-rt_err_t rt_usb_hub_get_descriptor(uinst_t uinst, rt_uint8_t *buffer,
- rt_size_t size);
-rt_err_t rt_usb_hub_get_status(uinst_t uinst, rt_uint8_t* buffer);
-rt_err_t rt_usb_hub_get_port_status(uhubinst_t uhub, rt_uint16_t port,
- rt_uint8_t* buffer);
-rt_err_t rt_usb_hub_clear_port_feature(uhubinst_t uhub, rt_uint16_t port,
- rt_uint16_t feature);
-rt_err_t rt_usb_hub_set_port_feature(uhubinst_t uhub, rt_uint16_t port,
- rt_uint16_t feature);
+rt_err_t rt_usb_hub_get_descriptor(uinst_t uinst,
+ rt_uint8_t *buffer,
+ rt_size_t size);
+rt_err_t rt_usb_hub_get_status(uinst_t uinst, rt_uint8_t *buffer);
+rt_err_t rt_usb_hub_get_port_status(uhubinst_t uhub,
+ rt_uint16_t port,
+ rt_uint8_t *buffer);
+rt_err_t rt_usb_hub_clear_port_feature(uhubinst_t uhub,
+ rt_uint16_t port,
+ rt_uint16_t feature);
+rt_err_t rt_usb_hub_set_port_feature(uhubinst_t uhub,
+ rt_uint16_t port,
+ rt_uint16_t feature);
rt_err_t rt_usb_hub_reset_port(uhubinst_t uhub, rt_uint16_t port);
rt_err_t rt_usb_post_event(struct uhost_msg* msg, rt_size_t size);
/* usb host controller driver interface */
-rt_inline rt_err_t rt_usb_hcd_alloc_pipe(uhcd_t hcd, upipe_t* pipe,
- uifinst_t ifinst, uep_desc_t ep, func_callback callback)
+rt_inline rt_err_t rt_usb_hcd_alloc_pipe(uhcd_t hcd,
+ upipe_t *pipe,
+ uifinst_t ifinst,
+ uep_desc_t ep,
+ func_callback callback)
{
- if(ifinst == RT_NULL) return -RT_EIO;
+ if (ifinst == RT_NULL)
+ return -RT_EIO;
return hcd->ops->alloc_pipe(pipe, ifinst, ep, callback);
}
@@ -230,40 +255,59 @@ rt_inline rt_err_t rt_usb_hcd_free_pipe(uhcd_t hcd, upipe_t pipe)
return hcd->ops->free_pipe(pipe);
}
-rt_inline int rt_usb_hcd_bulk_xfer(uhcd_t hcd, upipe_t pipe, void* buffer,
- int nbytes, int timeout)
+rt_inline int rt_usb_hcd_bulk_xfer(uhcd_t hcd,
+ upipe_t pipe,
+ void *buffer,
+ int nbytes,
+ int timeout)
{
- if(pipe == RT_NULL) return -1;
- if(pipe->ifinst == RT_NULL) return -1;
- if(pipe->ifinst->uinst == RT_NULL) return -1;
- if(pipe->ifinst->uinst->status == UINST_STATUS_IDLE)
+ if (pipe == RT_NULL)
+ return -1;
+ if (pipe->ifinst == RT_NULL)
+ return -1;
+ if (pipe->ifinst->uinst == RT_NULL)
+ return -1;
+ if (pipe->ifinst->uinst->status == UINST_STATUS_IDLE)
return -1;
return hcd->ops->bulk_xfer(pipe, buffer, nbytes, timeout);
}
-rt_inline int rt_usb_hcd_control_xfer(uhcd_t hcd, uinst_t uinst, ureq_t setup,
- void* buffer, int nbytes, int timeout)
+rt_inline int rt_usb_hcd_control_xfer(uhcd_t hcd,
+ uinst_t uinst,
+ ureq_t setup,
+ void *buffer,
+ int nbytes,
+ int timeout)
{
- if(uinst->status == UINST_STATUS_IDLE) return -1;
+ if (uinst->status == UINST_STATUS_IDLE)
+ return -1;
return hcd->ops->ctl_xfer(uinst, setup, buffer, nbytes, timeout);
}
-rt_inline int rt_usb_hcd_int_xfer(uhcd_t hcd, upipe_t pipe, void* buffer,
- int nbytes, int timeout)
+rt_inline int rt_usb_hcd_int_xfer(uhcd_t hcd,
+ upipe_t pipe,
+ void *buffer,
+ int nbytes,
+ int timeout)
{
- if(pipe == RT_NULL) return -1;
- if(pipe->ifinst == RT_NULL) return -1;
- if(pipe->ifinst->uinst == RT_NULL) return -1;
- if(pipe->ifinst->uinst->status == UINST_STATUS_IDLE)
+ if (pipe == RT_NULL)
+ return -1;
+ if (pipe->ifinst == RT_NULL)
+ return -1;
+ if (pipe->ifinst->uinst == RT_NULL)
+ return -1;
+ if (pipe->ifinst->uinst->status == UINST_STATUS_IDLE)
return -1;
return hcd->ops->int_xfer(pipe, buffer, nbytes, timeout);
}
-rt_inline rt_err_t rt_usb_hcd_hub_control(uhcd_t hcd, rt_uint16_t port,
- rt_uint8_t cmd, void *args)
+rt_inline rt_err_t rt_usb_hcd_hub_control(uhcd_t hcd,
+ rt_uint16_t port,
+ rt_uint8_t cmd,
+ void *args)
{
return hcd->ops->hub_ctrl(port, cmd, args);
}
diff --git a/components/drivers/include/rtdevice.h b/components/drivers/include/rtdevice.h
index a50ceb6b34..cf74ce2529 100644
--- a/components/drivers/include/rtdevice.h
+++ b/components/drivers/include/rtdevice.h
@@ -3,9 +3,19 @@
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
*
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rt-thread.org/license/LICENSE
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * 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.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Change Logs:
* Date Author Notes