Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion components/drivers/ofw/base.c
Original file line number Diff line number Diff line change
Expand Up @@ -1474,7 +1474,7 @@ static const char *ofw_get_prop_fuzzy_name(const struct rt_ofw_node *np, const c
char *sf, split_field[64];
rt_size_t len = 0, max_ak = 0;
const char *str, *result = RT_NULL;
RT_BITMAP_DECLARE(ak, sizeof(split_field));
RT_BITMAP_DECLARE(ak, sizeof(split_field)) = {0};
struct rt_ofw_prop *prop;

/*
Expand Down
2 changes: 1 addition & 1 deletion components/drivers/ofw/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -624,7 +624,7 @@ int rt_ofw_get_irq(struct rt_ofw_node *np, int index)

if ((rt_int64_t)cpuid >= 0)
{
RT_DECLARE_BITMAP(affinity, RT_CPUS_NR) = { 0 };
RT_BITMAP_DECLARE(affinity, RT_CPUS_NR) = { 0 };

rt_bitmap_set_bit(affinity, cpuid);

Expand Down
2 changes: 1 addition & 1 deletion components/drivers/pic/pic_rthw.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ void rt_hw_interrupt_uninstall(int vector, rt_isr_handler_t handler, void *param
#if defined(RT_USING_SMP) || defined(RT_USING_AMP)
void rt_hw_ipi_send(int ipi_vector, unsigned int cpu_mask)
{
RT_DECLARE_BITMAP(cpu_masks, RT_CPUS_NR) = { cpu_mask };
RT_BITMAP_DECLARE(cpu_masks, RT_CPUS_NR) = { cpu_mask };

rt_pic_irq_send_ipi(ipi_vector, cpu_masks);
}
Expand Down
3 changes: 2 additions & 1 deletion components/libc/compilers/common/ctime.c
Original file line number Diff line number Diff line change
Expand Up @@ -879,7 +879,8 @@ static void rtthread_timer_wrapper(void *timerobj)
}
#ifdef RT_USING_SMART
/* this field is named as tid in musl */
int tid = *(int *)&timer->sigev_notify_function;
void *ptid = &timer->sigev_notify_function;
int tid = *(int *)ptid;
struct lwp_timer_event_param *data = rt_container_of(timer->work, struct lwp_timer_event_param, work);
data->signo = timer->sigev_signo;

Expand Down
2 changes: 1 addition & 1 deletion components/lwp/lwp_internal.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ static rt_err_t _mutex_take_safe(rt_mutex_t mtx, rt_int32_t timeout, int flags)
}
else
{
rc = -RT_EINVAL;
rc = -RT_ERROR;
LOG_W("%s: mtx should not be NULL", __func__);
RT_ASSERT(0);
}
Expand Down
2 changes: 1 addition & 1 deletion components/lwp/lwp_syscall.c
Original file line number Diff line number Diff line change
Expand Up @@ -2700,7 +2700,7 @@ sysret_t sys_execve(const char *path, char *const argv[], char *const envp[])
*/
RT_ASSERT(rt_list_entry(lwp->t_grp.prev, struct rt_thread, sibling) == thread);

strncpy(thread->parent.name, run_name + last_backslash, RT_NAME_MAX);
strncpy(thread->parent.name, run_name + last_backslash, RT_NAME_MAX - 1);
strncpy(lwp->cmd, new_lwp->cmd, RT_NAME_MAX);
rt_free(lwp->exe_file);
lwp->exe_file = strndup(new_lwp->exe_file, DFS_PATH_MAX);
Expand Down
8 changes: 4 additions & 4 deletions components/mm/mm_page.c
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ static void _collect()
rt_page_t page = _trace_head;
if (!page)
{
LOG_RAW("ok! ALLOC CNT %ld\n", _alloc_cnt);
rt_kprintf("ok! ALLOC CNT %ld\n", _alloc_cnt);
}
else
{
Expand Down Expand Up @@ -159,7 +159,7 @@ void _report(rt_page_t page, size_t size_bits, char *msg)
{
void *pg_va = rt_page_page2addr(page);
LOG_W("%s: %p, allocator: %p, size bits: %lx", msg, pg_va, page->caller, page->trace_size);
LOG_RAW("backtrace\n");
rt_kprintf("backtrace\n");
rt_backtrace();
}

Expand All @@ -175,7 +175,7 @@ static void _trace_free(rt_page_t page, void *caller, size_t size_bits)
}
else if (page->trace_size != size_bits)
{
LOG_RAW("free with size bits %lx\n", size_bits);
rt_kprintf("free with size bits %lx\n", size_bits);
_report(page, size_bits, "incompatible size bits parameter");
return ;
}
Expand Down Expand Up @@ -636,7 +636,7 @@ void list_page(void)
rt_kprintf("[0x%08p]", rt_page_page2addr(hp));
hp = hp->next;
}
LOG_RAW("\n");
rt_kprintf("\n");
}

rt_spin_unlock_irqrestore(&_spinlock, level);
Expand Down
4 changes: 2 additions & 2 deletions libcpu/aarch64/common/SConscript
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ if GetDepend('RT_USING_OFW') == False:
SrcRemove(src, ['setup.c', 'cpu_psci.c', 'psci.c'])

if GetDepend('RT_USING_PIC') == True:
SrcRemove(src, ['gicv3.c', 'gic.c', 'interrupt.c', 'gtimer.c'])
SrcRemove(src, ['gicv3.c', 'gic.c', 'gtimer.c'])

group = DefineGroup('libcpu', src, depend = [''], CPPPATH = CPPPATH)

# build for sub-directory
Expand Down
23 changes: 13 additions & 10 deletions libcpu/aarch64/common/interrupt.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,18 @@
#include "gicv3.h"
#include "ioremap.h"


/* exception and interrupt handler table */
struct rt_irq_desc isr_table[MAX_HANDLERS];

#ifndef RT_USING_SMP
/* Those variables will be accessed in ISR, so we need to share them. */
rt_ubase_t rt_interrupt_from_thread = 0;
rt_ubase_t rt_interrupt_to_thread = 0;
rt_ubase_t rt_thread_switch_interrupt_flag = 0;
#endif

#ifndef RT_USING_PIC

/* exception and interrupt handler table */
struct rt_irq_desc isr_table[MAX_HANDLERS];

#ifndef RT_CPUS_NR
#define RT_CPUS_NR 1
#endif
Expand Down Expand Up @@ -138,17 +139,17 @@ void rt_hw_interrupt_mask(int vector)
#ifdef SOC_BCM283x
if (vector < 32)
{
IRQ_DISABLE1 = (1 << vector);
IRQ_DISABLE1 = (1UL << vector);
}
else if (vector < 64)
{
vector = vector % 32;
IRQ_DISABLE2 = (1 << vector);
IRQ_DISABLE2 = (1UL << vector);
}
else
{
vector = vector - 64;
IRQ_DISABLE_BASIC = (1 << vector);
IRQ_DISABLE_BASIC = (1UL << vector);
}
#else
arm_gic_mask(0, vector);
Expand All @@ -164,17 +165,17 @@ void rt_hw_interrupt_umask(int vector)
#ifdef SOC_BCM283x
if (vector < 32)
{
IRQ_ENABLE1 = (1 << vector);
IRQ_ENABLE1 = (1UL << vector);
}
else if (vector < 64)
{
vector = vector % 32;
IRQ_ENABLE2 = (1 << vector);
IRQ_ENABLE2 = (1UL << vector);
}
else
{
vector = vector - 64;
IRQ_ENABLE_BASIC = (1 << vector);
IRQ_ENABLE_BASIC = (1UL << vector);
}
#else
arm_gic_umask(0, vector);
Expand Down Expand Up @@ -416,6 +417,8 @@ void rt_hw_ipi_handler_install(int ipi_vector, rt_isr_handler_t ipi_isr_handler)
}
#endif

#endif /* RT_USING_PIC */

#if defined(FINSH_USING_MSH) && defined(RT_USING_INTERRUPT_INFO)
int list_isr()
{
Expand Down
3 changes: 2 additions & 1 deletion libcpu/aarch64/common/mmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -688,6 +688,7 @@ static unsigned long *_query(rt_aspace_t aspace, void *vaddr, int *plvl_shf)

if (!(cur_lv_tbl[off] & MMU_TYPE_USED))
{
*plvl_shf = level_shift;
return (void *)0;
}

Expand All @@ -707,11 +708,11 @@ static unsigned long *_query(rt_aspace_t aspace, void *vaddr, int *plvl_shf)
off &= MMU_LEVEL_MASK;
page = cur_lv_tbl[off];

*plvl_shf = level_shift;
if (!(page & MMU_TYPE_USED))
{
return (void *)0;
}
*plvl_shf = level_shift;
return &cur_lv_tbl[off];
}

Expand Down
3 changes: 2 additions & 1 deletion tools/ci/cpp_check.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,10 @@ def check(self):
[
'cppcheck',
'-DRT_ASSERT(x)=',
'-Drt_list_for_each_entry(a,b,c)=a=(void*)b',
'-Drt_list_for_each_entry(a,b,c)=a=(void*)b;',
'-I include',
'-I thread/components/finsh',
# it's okay because CI will do the real compilation to check this
'--suppress=syntaxError',
'--enable=warning',
'performance',
Expand Down