コード例 #1
0
ファイル: rtl871x_io.c プロジェクト: 119-org/hi3518-osdrv
static uint _init_intf_hdl(struct _adapter *padapter,
			   struct intf_hdl *pintf_hdl)
{
	struct	intf_priv	*pintf_priv;
	void (*set_intf_option)(u32 *poption) = NULL;
	void (*set_intf_funs)(struct intf_hdl *pintf_hdl);
	void (*set_intf_ops)(struct _io_ops	*pops);
	uint (*init_intf_priv)(struct intf_priv *pintfpriv);

	set_intf_option = &(r8712_usb_set_intf_option);
	set_intf_funs = &(r8712_usb_set_intf_funs);
	set_intf_ops = &r8712_usb_set_intf_ops;
	init_intf_priv = &r8712_usb_init_intf_priv;
	pintf_priv = pintf_hdl->pintfpriv = (struct intf_priv *)
		     _malloc(sizeof(struct intf_priv));
	if (pintf_priv == NULL)
		goto _init_intf_hdl_fail;
	pintf_hdl->adapter = (u8 *)padapter;
	set_intf_option(&pintf_hdl->intf_option);
	set_intf_funs(pintf_hdl);
	set_intf_ops(&pintf_hdl->io_ops);
	pintf_priv->intf_dev = (u8 *)&(padapter->dvobjpriv);
	if (init_intf_priv(pintf_priv) == _FAIL)
		goto _init_intf_hdl_fail;
	return _SUCCESS;
_init_intf_hdl_fail:
	kfree(pintf_priv);
	return _FAIL;
}
コード例 #2
0
ファイル: rtl871x_io.c プロジェクト: OpenHMR/Open-HMR600
uint _init_intf_hdl(_adapter *padapter, struct intf_hdl *pintf_hdl)
{	
	struct	intf_priv	*pintf_priv;
	void (*set_intf_option)(u32 *poption) = NULL;
	void (*set_intf_funs)(struct intf_hdl *pintf_hdl);
	void (*set_intf_ops)(struct _io_ops	*pops);
	uint (*init_intf_priv)(struct intf_priv *pintfpriv);

_func_enter_;
	
#ifdef CONFIG_SDIO_HCI
	set_intf_option = &(sdio_set_intf_option);
	set_intf_funs = &(sdio_set_intf_funs);
	set_intf_ops = &sdio_set_intf_ops;
	init_intf_priv = &sdio_init_intf_priv;
#endif

#ifdef CONFIG_USB_HCI
	set_intf_option = &(usb_set_intf_option);
	set_intf_funs = &(usb_set_intf_funs);
	set_intf_ops = &usb_set_intf_ops;
	init_intf_priv = &usb_init_intf_priv;
#endif

	pintf_priv = pintf_hdl->pintfpriv =(struct intf_priv *) _malloc(sizeof(struct intf_priv));
	
	if (pintf_priv == NULL)
		goto _init_intf_hdl_fail;

	pintf_hdl->adapter = (u8*)padapter;
	
	set_intf_option(&pintf_hdl->intf_option);
	set_intf_funs(pintf_hdl);
	set_intf_ops(&pintf_hdl->io_ops);

	pintf_priv->intf_dev = (u8 *)&(padapter->dvobjpriv);
	
	if (init_intf_priv(pintf_priv) == _FAIL)
		goto _init_intf_hdl_fail;
	
_func_exit_;

	return _SUCCESS;

_init_intf_hdl_fail:
	
	if (pintf_priv) {
		_mfree((u8 *)pintf_priv, sizeof(struct intf_priv));
	}
	
_func_exit_;

	return _FAIL;
	
}