From 41a1e513ddae163d47d265b2d666cd189bf8b72b Mon Sep 17 00:00:00 2001 From: IFX-Anusha Date: Thu, 3 Oct 2024 12:02:25 +0530 Subject: [PATCH] ports/psoc6: Remove unwanted files. Signed-off-by: IFX-Anusha --- ports/psoc6/irq.h | 74 ----------------------------------------- ports/psoc6/mphalport.h | 14 +------- 2 files changed, 1 insertion(+), 87 deletions(-) delete mode 100644 ports/psoc6/irq.h diff --git a/ports/psoc6/irq.h b/ports/psoc6/irq.h deleted file mode 100644 index 6156d047235bd..0000000000000 --- a/ports/psoc6/irq.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * This file is part of the MicroPython project, http://micropython.org/ - * - * The MIT License (MIT) - * - * Copyright (c) 2023 Damien P. George - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ -#ifndef MICROPY_INCLUDED_PSOC6_IRQ_H -#define MICROPY_INCLUDED_PSOC6_IRQ_H - -#define NVIC_PRIORITYGROUP_4 ((uint32_t)0x00000003) - -static inline uint32_t query_irq(void) { - return __get_PRIMASK(); -} - -static inline uint32_t raise_irq_pri(uint32_t pri) { - uint32_t basepri = __get_BASEPRI(); - // If non-zero, the processor does not process any exception with a - // priority value greater than or equal to BASEPRI. - // When writing to BASEPRI_MAX the write goes to BASEPRI only if either: - // - Rn is non-zero and the current BASEPRI value is 0 - // - Rn is non-zero and less than the current BASEPRI value - pri <<= (8 - __NVIC_PRIO_BITS); - __ASM volatile ("msr basepri_max, %0" : : "r" (pri) : "memory"); - return basepri; -} - -// "basepri" should be the value returned from raise_irq_pri -static inline void restore_irq_pri(uint32_t basepri) { - __set_BASEPRI(basepri); -} - -// IRQ priority definitions. -// -// Lower number implies higher interrupt priority. -// -// The default priority grouping used in this port is NVIC_PRIORITYGROUP_4. -// This corresponds to 4 bits for the priority field and 0 bits for the -// sub-priority field (which means that for all intents and purposes the -// sub-priorities below are ignored). -// -// While a given interrupt is being processed, only higher priority (lower number) -// interrupts will preempt a given interrupt. If sub-priorities are active -// then the sub-priority determines the order that pending interrupts of -// a given priority are executed. This is only meaningful if 2 or more -// interrupts of the same priority are pending at the same time. -// -// The following interrupts are arranged from highest priority to lowest -// priority to make it a bit easier to figure out. - -// PENDSV should be at the lowst priority so that other interrupts complete -// before exception is raised. -#define IRQ_PRI_PENDSV NVIC_EncodePriority(NVIC_PRIORITYGROUP_4, 10, 0) - -#endif // MICROPY_INCLUDED_PSOC6_IRQ_H diff --git a/ports/psoc6/mphalport.h b/ports/psoc6/mphalport.h index f9eeda5f81957..aaf7d992d7027 100644 --- a/ports/psoc6/mphalport.h +++ b/ports/psoc6/mphalport.h @@ -33,12 +33,12 @@ #include "py/mpconfig.h" #include "py/runtime.h" + // MTB includes #include "cyhal.h" // port-specific includes -#include "irq.h" #define MICROPY_BEGIN_ATOMIC_SECTION() cyhal_system_critical_section_enter() #define MICROPY_END_ATOMIC_SECTION(state) cyhal_system_critical_section_exit(state) @@ -46,18 +46,6 @@ // #define MICROPY_BEGIN_ATOMIC_SECTION() (0) // #define MICROPY_END_ATOMIC_SECTION(state) {(void)state;} -// For regular code that wants to prevent "background tasks" from running. -// These background tasks (LWIP) run in PENDSV context. -#define MICROPY_PY_PENDSV_ENTER uint32_t atomic_state = raise_irq_pri(IRQ_PRI_PENDSV); -#define MICROPY_PY_PENDSV_REENTER atomic_state = raise_irq_pri(IRQ_PRI_PENDSV); -#define MICROPY_PY_PENDSV_EXIT restore_irq_pri(atomic_state); - -// Prevent the "lwIP task" from running. -#define MICROPY_PY_LWIP_ENTER MICROPY_PY_PENDSV_ENTER -#define MICROPY_PY_LWIP_REENTER MICROPY_PY_PENDSV_REENTER -#define MICROPY_PY_LWIP_EXIT MICROPY_PY_PENDSV_EXIT - - #define MP_HAL_PIN_FMT "%u" #define mp_hal_pin_obj_t uint