summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorhathach <[email protected]>2013-04-07 03:40:24 +0700
committerhathach <[email protected]>2013-04-07 03:40:24 +0700
commit1776bb53f630295c33ea0d283deadf8a794b8c88 (patch)
tree39f553f70c1e24fa8a6cca6fb040de336fad4954 /tests
parentb5f7e48ad4767f6d3b79e920c5ca8ff33b0dfca4 (diff)
add hal init for USB1 and trying to get USB1 working
add hack delay 100 ms after a port reset (huge) for correct speed detection
Diffstat (limited to 'tests')
-rw-r--r--tests/test/host/ehci/test_ehci_isr.c2
-rw-r--r--tests/test/host/hid/test_hidh_mouse.c48
-rw-r--r--tests/test/host/integration/test_hidh_keyboard.c75
3 files changed, 115 insertions, 10 deletions
diff --git a/tests/test/host/ehci/test_ehci_isr.c b/tests/test/host/ehci/test_ehci_isr.c
index 7539500a5..6e66f99eb 100644
--- a/tests/test/host/ehci/test_ehci_isr.c
+++ b/tests/test/host/ehci/test_ehci_isr.c
@@ -51,6 +51,7 @@ usbh_device_info_t usbh_devices[TUSB_CFG_HOST_DEVICE_MAX+1];
uint8_t hostid;
ehci_registers_t * regs;
+
void setUp(void)
{
ehci_controller_init();
@@ -59,7 +60,6 @@ void setUp(void)
regs = get_operational_register(hostid);
hcd_init();
- regs->usb_sts = 0; // hcd_init clear usb_sts by writing 1s
}
void tearDown(void)
diff --git a/tests/test/host/hid/test_hidh_mouse.c b/tests/test/host/hid/test_hidh_mouse.c
new file mode 100644
index 000000000..4e2433c81
--- /dev/null
+++ b/tests/test/host/hid/test_hidh_mouse.c
@@ -0,0 +1,48 @@
+/*
+ * test_hidh_mouse.c
+ *
+ * Created on: Apr 6, 2013
+ * Author: hathach
+ */
+
+/*
+ * Software License Agreement (BSD License)
+ * Copyright (c) 2012, hathach (tinyusb.org)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * 3. The name of the author may not be used to endorse or promote products
+ * derived from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
+ * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
+ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ *
+ * This file is part of the tiny usb stack.
+ */
+
+#include "stdlib.h"
+#include "unity.h"
+#include "type_helper.h"
+#include "errors.h"
+#include "hid_host.h"
+#include "mock_osal.h"
+#include "mock_usbh.h"
+#include "mock_hcd.h"
+#include "descriptor_test.h"
+
+
diff --git a/tests/test/host/integration/test_hidh_keyboard.c b/tests/test/host/integration/test_hidh_keyboard.c
index d66b81040..f7662f954 100644
--- a/tests/test/host/integration/test_hidh_keyboard.c
+++ b/tests/test/host/integration/test_hidh_keyboard.c
@@ -34,7 +34,6 @@
*
* This file is part of the tiny usb stack.
*/
-#define _TINY_USB_SOURCE_FILE_
#include "stdlib.h"
#include "unity.h"
@@ -42,7 +41,7 @@
#include "tusb_option.h"
#include "errors.h"
-#include "osal_none.h"
+#include "mock_osal.h"
#include "hcd.h"
#include "usbh.h"
#include "tusb.h"
@@ -58,16 +57,74 @@ void setUp(void)
dev_addr = RANDOM(TUSB_CFG_HOST_DEVICE_MAX)+1;
hostid = RANDOM(CONTROLLER_HOST_NUMBER) + TEST_CONTROLLER_HOST_START_INDEX;
+ ehci_controller_init();
tusb_init();
-}
-void tearDown(void)
-{
}
-void test_(void)
+void tearDown(void)
{
- ehci_controller_device_plug(hostid, TUSB_SPEED_HIGH);
-
-
}
+//
+//osal_semaphore_handle_t sem_create_stub(osal_semaphore_t * const sem, int num_call)
+//{
+// (*p_sem) = 0;
+// return (osal_semaphore_handle_t) p_sem;
+//}
+//void sem_wait_stub(osal_semaphore_handle_t const sem_hdl, uint32_t msec, tusb_error_t *p_error, int num_call)
+//{
+//
+//}
+//tusb_error_t sem_post_stub(osal_semaphore_handle_t const sem_hdl, int num_call)
+//{
+// (*sem_hdl)++;
+//
+// return TUSB_ERROR_NONE;
+//}
+//void sem_reset_stub(osal_semaphore_handle_t const sem_hdl, int num_call)
+//{
+// (*sem_hdl) = 0;
+//}
+//
+//osal_queue_handle_t queue_create_stub (osal_queue_t *p_queue, int num_call)
+//{
+// p_queue->count = p_queue->wr_idx = p_queue->rd_idx = 0;
+// return (osal_queue_handle_t) p_queue;
+//}
+//void queue_receive_stub (osal_queue_handle_t const queue_hdl, uint32_t *p_data, uint32_t msec, tusb_error_t *p_error, int num_call)
+//{
+//
+//}
+//tusb_error_t queue_send_stub (osal_queue_handle_t const queue_hdl, uint32_t data, int num_call)
+//{
+// //TODO mutex lock hal_interrupt_disable
+//
+// queue_hdl->buffer[queue_hdl->wr_idx] = data;
+// queue_hdl->wr_idx = (queue_hdl->wr_idx + 1) % queue_hdl->depth;
+//
+// if (queue_hdl->depth == queue_hdl->count) // queue is full, 1st rd is overwritten
+// {
+// queue_hdl->rd_idx = queue_hdl->wr_idx; // keep full state
+// }else
+// {
+// queue_hdl->count++;
+// }
+//
+// //TODO mutex unlock hal_interrupt_enable
+//
+// return TUSB_ERROR_NONE;
+//}
+//void queue_flush_stub(osal_queue_handle_t const queue_hdl, int num_call)
+//{
+// queue_hdl->count = queue_hdl->rd_idx = queue_hdl->wr_idx = 0;
+//}
+//
+//void test_(void)
+//{
+// ehci_controller_device_plug(hostid, TUSB_SPEED_HIGH);
+//
+// tusb_task_runner(); // get 8-byte descriptor
+// ehci_controller_control_xfer_proceed(0, &desc_device);
+//
+// tusb_task_runner(); // get 8-byte descriptor
+//}