All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com>
To: Szymon Janc <szymon.janc@tieto.com>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: [PATCH] android-tester: Add HIDHost initial interface setup test
Date: Wed, 08 Jan 2014 10:43:30 +0200	[thread overview]
Message-ID: <52CD0FB2.4090507@linux.intel.com> (raw)
In-Reply-To: <3983437.QCzj2PTKjz@uw000953>

Hi

On 01/08/2014 10:26 AM, Szymon Janc wrote:
> Hi Ravi,
>
>> Hi Szymon,
>>
>> On 01/08/2014 10:09 AM, Szymon Janc wrote:
>>> Hi Ravi,
>>>
>>>> ---
>>>>    android/android-tester.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
>>>>    1 file changed, 46 insertions(+)
>>> This patch makes android-tester segfaults when running "HIDHost Init" test.
>>    When I run output is:
>> HIDHost Init - init
>>     Read Index List callback
>>       Status: 0x00
>>     New hciemu instance created
>>     Index Added callback
>>       Index: 0x0001
>>     Read Info callback
>>       Status: 0x00
>>       Address: 00:AA:01:00:00:00
>>       Version: 0x06
>>       Manufacturer: 0x003f
>>       Supported settings: 0x000002ff
>>       Current settings: 0x00000080
>>       Class: 0x000000
>>       Name:
>>       Short name:
>> HIDHost Init - setup
>>
>> Nothing happened. Let me know what commands and in which sequence it
>> occurred ?
> This is due to running tester via sudo. Run it from root shell or gdb/valgrind.
   Yes, got it. I'll send v2.

  Thanks,
  Ravi.
>
>> Regards,
>> Ravi.
>>>> diff --git a/android/android-tester.c b/android/android-tester.c
>>>> index 9a161ad..e4837c6 100644
>>>> --- a/android/android-tester.c
>>>> +++ b/android/android-tester.c
>>>> @@ -39,6 +39,7 @@
>>>>    #include <hardware/hardware.h>
>>>>    #include <hardware/bluetooth.h>
>>>>    #include <hardware/bt_sock.h>
>>>> +#include <hardware/bt_hh.h>
>>>>    
>>>>    #include "utils.h"
>>>>    
>>>> @@ -79,6 +80,7 @@ struct test_data {
>>>>    	struct hw_device_t *device;
>>>>    	const bt_interface_t *if_bluetooth;
>>>>    	const btsock_interface_t *if_sock;
>>>> +	const bthh_interface_t *if_hid;
>>>>    
>>>>    	bool mgmt_settings_set;
>>>>    	bool cb_count_checked;
>>>> @@ -958,6 +960,16 @@ static bt_callbacks_t bt_callbacks = {
>>>>    	.le_test_mode_cb = NULL
>>>>    };
>>>>    
>>>> +static bthh_callbacks_t bthh_callbacks = {
>>>> +	.size = sizeof(bthh_callbacks),
>>>> +	.connection_state_cb = NULL,
>>>> +	.hid_info_cb = NULL,
>>>> +	.protocol_mode_cb = NULL,
>>>> +	.idle_time_cb = NULL,
>>>> +	.get_report_cb = NULL,
>>>> +	.virtual_unplug_cb = NULL
>>>> +};
>>>> +
>>>>    static void setup(struct test_data *data)
>>>>    {
>>>>    	const hw_module_t *module;
>>>> @@ -1069,6 +1081,11 @@ static void teardown(const void *test_data)
>>>>    		data->if_bluetooth = NULL;
>>>>    	}
>>>>    
>>>> +	if (data->if_hid) {
>>>> +		data->if_hid->cleanup();
>>>> +		data->if_hid = NULL;
>>>> +	}
>>>> +
>>>>    	data->device->close(data->device);
>>>>    
>>>>    	if (data->bluetoothd_pid)
>>>> @@ -1860,6 +1877,32 @@ clean:
>>>>    		close(sock_fd);
>>>>    }
>>>>    
>>>> +static void setup_hidhost_interface(const void *test_data)
>>>> +{
>>>> +	struct test_data *data = tester_get_data();
>>>> +	bt_status_t status;
>>>> +	const void *hid;
>>>> +
>>>> +	setup(data);
>>>> +
>>>> +	status = data->if_hid->init(&bthh_callbacks);
>>>> +	if (status != BT_STATUS_SUCCESS) {
>>>> +		data->if_hid = NULL;
>>>> +		tester_setup_failed();
>>>> +		return;
>>>> +	}
>>>> +
>>>> +	hid = data->if_bluetooth->get_profile_interface(BT_PROFILE_HIDHOST_ID);
>>>> +	if (!hid) {
>>>> +		tester_setup_failed();
>>>> +		return;
>>>> +	}
>>>> +
>>>> +	data->if_hid = hid;
>>>> +
>>>> +	tester_setup_complete();
>>>> +}
>>>> +
>>>>    #define test_bredrle(name, data, test_setup, test, test_teardown) \
>>>>    	do { \
>>>>    		struct test_data *user; \
>>>> @@ -2071,5 +2114,8 @@ int main(int argc, char *argv[])
>>>>    			setup_socket_interface_enabled,
>>>>    			test_socket_real_connect, teardown);
>>>>    
>>>> +	test_bredrle("HIDHost Init", NULL, setup_hidhost_interface,
>>>> +						test_dummy, teardown);
>>>> +
>>>>    	return tester_run();
>>>>    }
>>>>


      reply	other threads:[~2014-01-08  8:43 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-07 14:18 [PATCH] android-tester: Add HIDHost initial interface setup test Ravi kumar Veeramally
2014-01-08  8:09 ` Szymon Janc
2014-01-08  8:17   ` Ravi kumar Veeramally
2014-01-08  8:26     ` Szymon Janc
2014-01-08  8:43       ` Ravi kumar Veeramally [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52CD0FB2.4090507@linux.intel.com \
    --to=ravikumar.veeramally@linux.intel.com \
    --cc=linux-bluetooth@vger.kernel.org \
    --cc=szymon.janc@tieto.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.