diff options
| author | Max Krasnyansky <maxk@qualcomm.com> | 2002-05-17 00:42:43 +0000 | 
|---|---|---|
| committer | Max Krasnyansky <maxk@qualcomm.com> | 2002-05-17 00:42:43 +0000 | 
| commit | cbc274c6e3ce3b2135c21c101d19271d66d3215e (patch) | |
| tree | 8ba6a94cd33f31e73c78c8f10b9526d9061fe833 /hcid/main.c | |
| parent | f7ab1ef143abdee16036e23e8cdf19d999d84916 (diff) | |
First bring device up then init everything else.
Diffstat (limited to 'hcid/main.c')
| -rw-r--r-- | hcid/main.c | 18 | 
1 files changed, 9 insertions, 9 deletions
| diff --git a/hcid/main.c b/hcid/main.c index a1ac60c2..8f6ec8bc 100644 --- a/hcid/main.c +++ b/hcid/main.c @@ -163,6 +163,13 @@ static void init_device(int hdev)  		exit(1);  	} +	/* Start HCI device */ +	if (ioctl(s, HCIDEVUP, hdev) < 0 && errno != EALREADY) { +		syslog(LOG_ERR, "Can't init device hci%d. %s(%d)\n", hdev,  +				strerror(errno), errno); +		exit(1); +	} +  	dr.dev_id  = hdev;  	/* Set packet type */ @@ -192,13 +199,6 @@ static void init_device(int hdev)  		}  	} -	/* Start HCI device */ -	if (ioctl(s, HCIDEVUP, hdev) < 0 && errno != EALREADY) { -		syslog(LOG_ERR, "Can't init device hci%d. %s(%d)\n", hdev,  -				strerror(errno), errno); -		exit(1); -	} -  	exit(0);  } @@ -226,10 +226,10 @@ static void init_all_devices(int ctl)  		if (hcid.auto_init)  			init_device(dr->dev_id); -		if (hcid.auto_init && (dr->dev_opt & (1<<HCI_UP))) +		if (hcid.auto_init && hci_test_bit(HCI_UP, &dr->dev_opt))  			configure_device(dr->dev_id); -		if (hcid.security && (dr->dev_opt & (1<<HCI_UP))) +		if (hcid.security && hci_test_bit(HCI_UP, &dr->dev_opt))  			start_security_manager(dr->dev_id);  	} | 
