[PATCH rtems-libbsd v2 2/5] usb_template: Configure template driver only for CDC Ethernet

Ahamed Husni ahamedhusni73 at gmail.com
Wed Jul 28 15:10:40 UTC 2021


On Wed, 28 Jul 2021, 17:27 Husni Faiz, <ahamedhusni73 at gmail.com> wrote:

> Add the conditional macro to prevent the driver from referencing
> the templates which are not imported yet.
>
> Include functions which adds the hw.usb.template sysctl variable.
>
> Signed-off-by: Husni Faiz <ahamedhusni73 at gmail.com>
> ---
>  freebsd/sys/dev/usb/template/usb_template.c | 4 ++++
>  freebsd/sys/dev/usb/usb_device.c            | 8 ++++++--
>  2 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/freebsd/sys/dev/usb/template/usb_template.c
> b/freebsd/sys/dev/usb/template/usb_template.c
> index 0650da15..76567e85 100644
> --- a/freebsd/sys/dev/usb/template/usb_template.c
> +++ b/freebsd/sys/dev/usb/template/usb_template.c
> @@ -1433,12 +1433,15 @@ usb_temp_setup_by_index(struct usb_device *udev,
> uint16_t index)
>         usb_error_t err;
>
>         switch (index) {
> +#ifndef __rtems__
>         case USB_TEMP_MSC:
>                 err = usb_temp_setup(udev, &usb_template_msc);
>                 break;
> +#endif /* __rtems__ */
>         case USB_TEMP_CDCE:
>                 err = usb_temp_setup(udev, &usb_template_cdce);
>                 break;
> +#ifndef __rtems__
>         case USB_TEMP_MTP:
>                 err = usb_temp_setup(udev, &usb_template_mtp);
>                 break;
> @@ -1469,6 +1472,7 @@ usb_temp_setup_by_index(struct usb_device *udev,
> uint16_t index)
>         case USB_TEMP_CDCEEM:
>                 err = usb_temp_setup(udev, &usb_template_cdceem);
>                 break;
> +#endif /* __rtems__ */
>         default:
>                 return (USB_ERR_INVAL);
>         }
> diff --git a/freebsd/sys/dev/usb/usb_device.c
> b/freebsd/sys/dev/usb/usb_device.c
> index ee240949..619cae5a 100644
> --- a/freebsd/sys/dev/usb/usb_device.c
> +++ b/freebsd/sys/dev/usb/usb_device.c
> @@ -28,6 +28,10 @@
>   * SUCH DAMAGE.
>   */
>
> +#ifdef __rtems__
> +#include <rtems/bsd/modules.h>
> +#endif
> +
>  #ifdef USB_GLOBAL_INCLUDE_FILE
>  #include USB_GLOBAL_INCLUDE_FILE
>  #else
> @@ -123,7 +127,7 @@ int usb_template = USB_TEMPLATE;
>  int    usb_template = -1;
>  #endif
>
> -#ifndef __rtems__
> +#if !defined(__rtems__) || defined(RTEMS_BSD_MODULE_DEV_USB_TEMPLATE)
>  SYSCTL_PROC(_hw_usb, OID_AUTO, template,
>      CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_MPSAFE,
>      NULL, 0, sysctl_hw_usb_template,
> @@ -255,7 +259,7 @@ sysctl_hw_usb_template(SYSCTL_HANDLER_ARGS)
>
>         return (0);
>  }
> -#endif /* __rtems__ */
> +#endif /* !__rtmes__ || RTEMS_BSD_MODULE_DEV_USB_TEMPLATE */
>
Ah, a typo here (rtmes). Should I send a new set of patches?

>
>  /* English is default language */
>
> --
> 2.25.1
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20210728/048625cc/attachment.html>


More information about the devel mailing list