root/drivers/staging/wusbcore/pal.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. wusbhc_channel_changed
  2. wusbhc_pal_register
  3. wusbhc_pal_unregister

   1 // SPDX-License-Identifier: GPL-2.0
   2 /*
   3  * Wireless USB Host Controller
   4  * UWB Protocol Adaptation Layer (PAL) glue.
   5  *
   6  * Copyright (C) 2008 Cambridge Silicon Radio Ltd.
   7  */
   8 #include "wusbhc.h"
   9 
  10 static void wusbhc_channel_changed(struct uwb_pal *pal, int channel)
  11 {
  12         struct wusbhc *wusbhc = container_of(pal, struct wusbhc, pal);
  13 
  14         dev_dbg(wusbhc->dev, "%s: channel = %d\n", __func__, channel);
  15         if (channel < 0)
  16                 wusbhc_stop(wusbhc);
  17         else
  18                 wusbhc_start(wusbhc);
  19 }
  20 
  21 /**
  22  * wusbhc_pal_register - register the WUSB HC as a UWB PAL
  23  * @wusbhc: the WUSB HC
  24  */
  25 int wusbhc_pal_register(struct wusbhc *wusbhc)
  26 {
  27         uwb_pal_init(&wusbhc->pal);
  28 
  29         wusbhc->pal.name   = "wusbhc";
  30         wusbhc->pal.device = wusbhc->usb_hcd.self.controller;
  31         wusbhc->pal.rc     = wusbhc->uwb_rc;
  32         wusbhc->pal.channel_changed = wusbhc_channel_changed;
  33 
  34         return uwb_pal_register(&wusbhc->pal);
  35 }
  36 
  37 /**
  38  * wusbhc_pal_unregister - unregister the WUSB HC as a UWB PAL
  39  * @wusbhc: the WUSB HC
  40  */
  41 void wusbhc_pal_unregister(struct wusbhc *wusbhc)
  42 {
  43         if (wusbhc->uwb_rc)
  44                 uwb_pal_unregister(&wusbhc->pal);
  45 }

/* [<][>][^][v][top][bottom][index][help] */