You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gn...@apache.org on 2020/04/27 04:12:50 UTC
[incubator-nuttx] branch master updated: Remove a duplicate file
introduced by the previous PR.
This is an automated email from the ASF dual-hosted git repository.
gnutt pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new e5443a4 Remove a duplicate file introduced by the previous PR.
e5443a4 is described below
commit e5443a471808da2a46aa7f543a3ff45c10514e56
Author: Ouss4 <ab...@gmail.com>
AuthorDate: Mon Apr 27 05:15:56 2020 +0100
Remove a duplicate file introduced by the previous PR.
---
arch/mips/src/pic32mz/pic32mz_oneshot-lowerhalf.c | 353 ----------------------
arch/mips/src/pic32mz/pic32mz_oneshot_lowerhalf.c | 2 +-
2 files changed, 1 insertion(+), 354 deletions(-)
diff --git a/arch/mips/src/pic32mz/pic32mz_oneshot-lowerhalf.c b/arch/mips/src/pic32mz/pic32mz_oneshot-lowerhalf.c
deleted file mode 100644
index 0dd776f..0000000
--- a/arch/mips/src/pic32mz/pic32mz_oneshot-lowerhalf.c
+++ /dev/null
@@ -1,353 +0,0 @@
-/****************************************************************************
- * arch/mips/src/pic32mz/chip/pic32mz_oneshot_lowerhalf.c
- *
- * Copyright (C) 2019 Abdelatif Guettouche. All rights reserved.
- * Author: Abdelatif Guettouche <ab...@gmail.com>
- *
- * This file is a part of NuttX:
- *
- * Copyright (C) 2019 Gregory Nutt. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. Neither the name NuttX nor the names of its contributors may be
- * used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
- * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
- * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- ****************************************************************************/
-
-/****************************************************************************
- * Included Files
- ****************************************************************************/
-
-#include <nuttx/config.h>
-
-#include <stdint.h>
-#include <time.h>
-#include <assert.h>
-#include <debug.h>
-
-#include <nuttx/irq.h>
-#include <nuttx/kmalloc.h>
-#include <nuttx/timers/oneshot.h>
-
-#include "pic32mz_oneshot.h"
-
-/****************************************************************************
- * Private Types
- ****************************************************************************/
-
-/* This structure describes the state of the oneshot lower-half driver */
-
-struct pic32mz_oneshot_lowerhalf_s
-{
- /* This is the part of the lower half driver that is visible to the upper-
- * half client of the driver. This must be the first thing in this
- * structure so that pointers to struct oneshot_lowerhalf_s are cast
- * compatible to struct pic32mz_oneshot_lowerhalf_s and vice versa.
- */
-
- struct oneshot_lowerhalf_s lh; /* Common lower-half driver fields */
-
- /* Private lower half data follows */
-
- struct pic32mz_oneshot_s oneshot; /* PIC32MZ-specific oneshot state */
- oneshot_callback_t callback; /* Handler that receives callback */
- FAR void *arg; /* Argument passed to the handler */
-};
-
-/****************************************************************************
- * Private Function Prototypes
- ****************************************************************************/
-
-static void pic32mz_oneshot_handler(void *arg);
-
-static int pic32mz_max_delay(FAR struct oneshot_lowerhalf_s *lower,
- FAR struct timespec *ts);
-static int pic32mz_start(FAR struct oneshot_lowerhalf_s *lower,
- oneshot_callback_t callback, FAR void *arg,
- FAR const struct timespec *ts);
-static int pic32mz_cancel(FAR struct oneshot_lowerhalf_s *lower,
- FAR struct timespec *ts);
-
-/****************************************************************************
- * Private Data
- ****************************************************************************/
-
-/* Lower half operations */
-
-static const struct oneshot_operations_s g_oneshot_ops =
-{
- .max_delay = pic32mz_max_delay,
- .start = pic32mz_start,
- .cancel = pic32mz_cancel,
-};
-
-/****************************************************************************
- * Private Functions
- ****************************************************************************/
-
-/****************************************************************************
- * Name: pic32mz_oneshot_handler
- *
- * Description:
- * Timer expiration handler
- *
- * Input Parameters:
- * arg Should be the same argument provided when pic32mz_oneshot_start()
- * was called.
- *
- * Returned Value:
- * None
- *
- ****************************************************************************/
-
-static void pic32mz_oneshot_handler(void *arg)
-{
- FAR struct pic32mz_oneshot_lowerhalf_s *priv =
- (FAR struct pic32mz_oneshot_lowerhalf_s *)arg;
- oneshot_callback_t callback;
- FAR void *cbarg;
-
- DEBUGASSERT(priv != NULL);
-
- /* Perhaps the callback was nullified in a race condition with
- * pic32mz_cancel?
- */
-
- if (priv->callback)
- {
- /* Sample and nullify BEFORE executing callback (in case the callback
- * restarts the oneshot).
- */
-
- callback = priv->callback;
- cbarg = priv->arg;
- priv->callback = NULL;
- priv->arg = NULL;
-
- /* Then perform the callback */
-
- callback(&priv->lh, cbarg);
- }
-}
-
-/****************************************************************************
- * Name: pic32mz_max_delay
- *
- * Description:
- * Determine the maximum delay of the one-shot timer (in microseconds)
- *
- * Input Parameters:
- * lower An instance of the lower-half oneshot state structure. This
- * structure must have been previously initialized via a call to
- * oneshot_initialize();
- * ts The location in which to return the maximum delay.
- *
- * Returned Value:
- * Zero (OK) is returned on success; a negated errno value is returned
- * on failure.
- *
- ****************************************************************************/
-
-static int pic32mz_max_delay(FAR struct oneshot_lowerhalf_s *lower,
- FAR struct timespec *ts)
-{
- FAR struct pic32mz_oneshot_lowerhalf_s *priv =
- (FAR struct pic32mz_oneshot_lowerhalf_s *)lower;
- uint64_t usecs;
- int ret;
-
- DEBUGASSERT(priv != NULL && ts != NULL);
-
- ret = pic32mz_oneshot_max_delay(&priv->oneshot, &usecs);
- tmrinfo("max delay %lu\n", usecs);
-
- if (ret >= 0)
- {
- uint64_t sec = usecs / 1000000;
- usecs -= 1000000 * sec;
-
- ts->tv_sec = (time_t)sec;
- ts->tv_nsec = (long)(usecs * 1000);
- }
-
- return ret;
-}
-
-/****************************************************************************
- * Name: pic32mz_start
- *
- * Description:
- * Start the oneshot timer
- *
- * Input Parameters:
- * lower An instance of the lower-half oneshot state structure. This
- * structure must have been previously initialized via a call to
- * oneshot_initialize();
- * handler The function to call when when the oneshot timer expires.
- * arg An opaque argument that will accompany the callback.
- * ts Provides the duration of the one shot timer.
- *
- * Returned Value:
- * Zero (OK) is returned on success; a negated errno value is returned
- * on failure.
- *
- ****************************************************************************/
-
-static int pic32mz_start(FAR struct oneshot_lowerhalf_s *lower,
- oneshot_callback_t callback, FAR void *arg,
- FAR const struct timespec *ts)
-{
- FAR struct pic32mz_oneshot_lowerhalf_s *priv =
- (FAR struct pic32mz_oneshot_lowerhalf_s *)lower;
- irqstate_t flags;
- int ret;
-
- DEBUGASSERT(priv != NULL && callback != NULL && ts != NULL);
-
- /* Save the callback information and start the timer */
-
- flags = enter_critical_section();
- priv->callback = callback;
- priv->arg = arg;
- ret = pic32mz_oneshot_start(&priv->oneshot,
- pic32mz_oneshot_handler,
- priv, ts);
- leave_critical_section(flags);
-
- if (ret < 0)
- {
- tmrerr("ERROR: pic32mz_oneshot_start failed: %d\n", flags);
- }
-
- return ret;
-}
-
-/****************************************************************************
- * Name: pic32mz_cancel
- *
- * Description:
- * Cancel the oneshot timer and return the time remaining on the timer.
- *
- * NOTE: This function may execute at a high rate with no timer running (as
- * when pre-emption is enabled and disabled).
- *
- * Input Parameters:
- * lower Caller allocated instance of the oneshot state structure. This
- * structure must have been previously initialized via a call to
- * oneshot_initialize();
- * ts The location in which to return the time remaining on the
- * oneshot timer. A time of zero is returned if the timer is
- * not running.
- *
- * Returned Value:
- * Zero (OK) is returned on success. A call to up_timer_cancel() when
- * the timer is not active should also return success; a negated errno
- * value is returned on any failure.
- *
- ****************************************************************************/
-
-static int pic32mz_cancel(FAR struct oneshot_lowerhalf_s *lower,
- FAR struct timespec *ts)
-{
- FAR struct pic32mz_oneshot_lowerhalf_s *priv =
- (FAR struct pic32mz_oneshot_lowerhalf_s *)lower;
- irqstate_t flags;
- int ret;
-
- DEBUGASSERT(priv != NULL);
-
- /* Cancel the timer */
-
- flags = enter_critical_section();
- ret = pic32mz_oneshot_cancel(&priv->oneshot, ts);
- priv->callback = NULL;
- priv->arg = NULL;
- leave_critical_section(flags);
-
- if (ret < 0)
- {
- tmrerr("ERROR: pic32mz_oneshot_cancel failed: %d\n", flags);
- }
-
- return ret;
-}
-
-/****************************************************************************
- * Public Functions
- ****************************************************************************/
-
-/****************************************************************************
- * Name: oneshot_initialize
- *
- * Description:
- * Initialize the oneshot timer and return a oneshot lower half driver
- * instance.
- *
- * Input Parameters:
- * chan Timer counter channel to be used.
- * resolution The required resolution of the timer in units of
- * microseconds. NOTE that the range is restricted to the
- * range of uint16_t (excluding zero).
- *
- * Returned Value:
- * On success, a non-NULL instance of the oneshot lower-half driver is
- * returned. NULL is return on any failure.
- *
- ****************************************************************************/
-
-FAR struct oneshot_lowerhalf_s *oneshot_initialize(int chan,
- uint16_t resolution)
-{
- FAR struct pic32mz_oneshot_lowerhalf_s *priv;
- int ret;
-
- /* Allocate an instance of the lower half driver */
-
- priv = (FAR struct pic32mz_oneshot_lowerhalf_s *)
- kmm_zalloc(sizeof(struct pic32mz_oneshot_lowerhalf_s));
-
- if (priv == NULL)
- {
- tmrerr("ERROR: Failed to initialized state structure\n");
- return NULL;
- }
-
- /* Initialize the lower-half driver structure */
-
- priv->lh.ops = &g_oneshot_ops;
-
- /* Initialize the contained PIC32MZ oneshot timer */
-
- ret = pic32mz_oneshot_initialize(&priv->oneshot, chan, resolution);
- if (ret < 0)
- {
- tmrerr("ERROR: pic32mz_oneshot_initialize failed: %d\n", ret);
- kmm_free(priv);
- return NULL;
- }
-
- return &priv->lh;
-}
diff --git a/arch/mips/src/pic32mz/pic32mz_oneshot_lowerhalf.c b/arch/mips/src/pic32mz/pic32mz_oneshot_lowerhalf.c
index 2fcb345..0dd776f 100644
--- a/arch/mips/src/pic32mz/pic32mz_oneshot_lowerhalf.c
+++ b/arch/mips/src/pic32mz/pic32mz_oneshot_lowerhalf.c
@@ -1,5 +1,5 @@
/****************************************************************************
- * arch/mips/src/pic32mz/chip/pic32mz_oneshot-lowerhalf.c
+ * arch/mips/src/pic32mz/chip/pic32mz_oneshot_lowerhalf.c
*
* Copyright (C) 2019 Abdelatif Guettouche. All rights reserved.
* Author: Abdelatif Guettouche <ab...@gmail.com>