@@ -63,13 +63,13 @@ static void hint_free(rt_mm_va_hint_t hint)
6363
6464static void on_page_fault (struct rt_varea * varea , struct rt_aspace_fault_msg * msg )
6565{
66- void * init_start = (void * )init_mpr_align_start ;
67- void * init_end = (void * )init_mpr_align_end ;
68- if (msg -> fault_vaddr < init_end && msg -> fault_vaddr >= init_start )
66+ char * init_start = (void * )init_mpr_align_start ;
67+ char * init_end = (void * )init_mpr_align_end ;
68+ if (( char * ) msg -> fault_vaddr < init_end && ( char * ) msg -> fault_vaddr >= init_start )
6969 {
70- rt_size_t offset = msg -> fault_vaddr - init_start ;
70+ rt_size_t offset = ( char * ) msg -> fault_vaddr - init_start ;
7171 msg -> response .status = MM_FAULT_STATUS_OK ;
72- msg -> response .vaddr = init_mpr_cont_start + offset ;
72+ msg -> response .vaddr = ( char * ) init_mpr_cont_start + offset ;
7373 msg -> response .size = ARCH_PAGE_SIZE ;
7474 }
7575 else
@@ -194,13 +194,13 @@ static void _trace_free(rt_page_t page, void *caller, size_t size_bits)
194194
195195static inline void * page_to_addr (rt_page_t page )
196196{
197- return (void * )((page - page_start ) << ARCH_PAGE_SHIFT ) - PV_OFFSET ;
197+ return (void * )((( page - page_start ) << ARCH_PAGE_SHIFT ) - PV_OFFSET ) ;
198198}
199199
200200static inline rt_page_t addr_to_page (rt_page_t pg_start , void * addr )
201201{
202- addr += PV_OFFSET ;
203- return & pg_start [((uintptr_t )addr >> ARCH_PAGE_SHIFT )];
202+ addr = ( char * ) addr + PV_OFFSET ;
203+ return & pg_start [((rt_ubase_t )addr >> ARCH_PAGE_SHIFT )];
204204}
205205
206206#define FLOOR (val , align ) (((rt_size_t)(val) + (align)-1) & ~((align)-1))
@@ -301,7 +301,7 @@ static void _pages_ref_inc(struct rt_page *p, rt_uint32_t size_bits)
301301 idx = idx & ~((1UL << size_bits ) - 1 );
302302
303303 page_head = page_start + idx ;
304- page_head = (void * )page_head + early_offset ;
304+ page_head = (void * )(( char * ) page_head + early_offset ) ;
305305 page_head -> ref_cnt ++ ;
306306}
307307
@@ -324,7 +324,7 @@ static int _pages_free(rt_page_t page_list[], struct rt_page *p, rt_uint32_t siz
324324 struct rt_page * buddy ;
325325
326326 RT_ASSERT (p >= page_start );
327- RT_ASSERT ((void * )p < rt_mpr_start + rt_mpr_size );
327+ RT_ASSERT ((char * )p < ( char * ) rt_mpr_start + rt_mpr_size );
328328 RT_ASSERT (rt_kmem_v2p (p ));
329329 RT_ASSERT (p -> ref_cnt > 0 );
330330 RT_ASSERT (p -> size_bits == ARCH_ADDRESS_WIDTH_BITS );
@@ -395,10 +395,10 @@ static struct rt_page *_pages_alloc(rt_page_t page_list[], rt_uint32_t size_bits
395395
396396static void _early_page_remove (rt_page_t page_list [], rt_page_t page , rt_uint32_t size_bits )
397397{
398- rt_page_t page_cont = (void * )page + early_offset ;
398+ rt_page_t page_cont = (rt_page_t )(( char * )page + early_offset ) ;
399399 if (page_cont -> pre )
400400 {
401- rt_page_t pre_cont = (void * )page_cont -> pre + early_offset ;
401+ rt_page_t pre_cont = (rt_page_t )(( char * )page_cont -> pre + early_offset ) ;
402402 pre_cont -> next = page_cont -> next ;
403403 }
404404 else
@@ -408,7 +408,7 @@ static void _early_page_remove(rt_page_t page_list[], rt_page_t page, rt_uint32_
408408
409409 if (page_cont -> next )
410410 {
411- rt_page_t next_cont = (void * )page_cont -> next + early_offset ;
411+ rt_page_t next_cont = (rt_page_t )(( char * )page_cont -> next + early_offset ) ;
412412 next_cont -> pre = page_cont -> pre ;
413413 }
414414
@@ -418,13 +418,13 @@ static void _early_page_remove(rt_page_t page_list[], rt_page_t page, rt_uint32_
418418static void _early_page_insert (rt_page_t page_list [], rt_page_t page , int size_bits )
419419{
420420 RT_ASSERT ((void * )page >= rt_mpr_start &&
421- (void * )page - rt_mpr_start < + rt_mpr_size );
422- rt_page_t page_cont = (void * )page + early_offset ;
421+ (( char * )page - ( char * ) rt_mpr_start ) < rt_mpr_size );
422+ rt_page_t page_cont = (rt_page_t )(( char * )page + early_offset ) ;
423423
424424 page_cont -> next = page_list [size_bits ];
425425 if (page_cont -> next )
426426 {
427- rt_page_t next_cont = (void * )page_cont -> next + early_offset ;
427+ rt_page_t next_cont = (rt_page_t )(( char * )page_cont -> next + early_offset ) ;
428428 next_cont -> pre = page ;
429429 }
430430 page_cont -> pre = 0 ;
@@ -466,7 +466,7 @@ static struct rt_page *_early_pages_alloc(rt_page_t page_list[], rt_uint32_t siz
466466 level -- ;
467467 }
468468 }
469- rt_page_t page_cont = (void * )p + early_offset ;
469+ rt_page_t page_cont = (rt_page_t )(( char * )p + early_offset ) ;
470470 page_cont -> size_bits = ARCH_ADDRESS_WIDTH_BITS ;
471471 page_cont -> ref_cnt = 1 ;
472472 return p ;
@@ -723,7 +723,7 @@ static void _install_page(rt_page_t mpr_head, rt_region_t region, void *insert_h
723723
724724 /* insert to list */
725725 rt_page_t * page_list = _get_page_list ((void * )region .start );
726- insert (page_list , (void * )p - early_offset , size_bits - ARCH_PAGE_SHIFT );
726+ insert (page_list , (rt_page_t )(( char * )p - early_offset ) , size_bits - ARCH_PAGE_SHIFT );
727727 region .start += (1UL << size_bits );
728728 }
729729}
@@ -778,9 +778,9 @@ void rt_page_init(rt_region_t reg)
778778 rt_size_t init_mpr_npage = init_mpr_size >> ARCH_PAGE_SHIFT ;
779779
780780 init_mpr_cont_start = (void * )reg .start ;
781- void * init_mpr_cont_end = init_mpr_cont_start + init_mpr_size ;
782- early_offset = init_mpr_cont_start - ( void * ) init_mpr_align_start ;
783- rt_page_t mpr_cont = rt_mpr_start + early_offset ;
781+ rt_size_t init_mpr_cont_end = ( rt_size_t ) init_mpr_cont_start + init_mpr_size ;
782+ early_offset = ( rt_size_t ) init_mpr_cont_start - init_mpr_align_start ;
783+ rt_page_t mpr_cont = ( void * )(( char * ) rt_mpr_start + early_offset ) ;
784784
785785 /* mark init mpr pages as illegal */
786786 rt_page_t head_cont = addr_to_page (mpr_cont , (void * )reg .start );
@@ -790,7 +790,7 @@ void rt_page_init(rt_region_t reg)
790790 iter -> size_bits = ARCH_ADDRESS_WIDTH_BITS ;
791791 }
792792
793- reg .start = ( rt_size_t ) init_mpr_cont_end ;
793+ reg .start = init_mpr_cont_end ;
794794 _install_page (mpr_cont , reg , _early_page_insert );
795795
796796 pages_alloc_handler = _early_pages_alloc ;
@@ -808,7 +808,7 @@ void rt_page_init(rt_region_t reg)
808808static int _load_mpr_area (void * head , void * tail )
809809{
810810 int err = 0 ;
811- void * iter = (void * )((uintptr_t )head & ~ARCH_PAGE_MASK );
811+ char * iter = (char * )((rt_ubase_t )head & ~ARCH_PAGE_MASK );
812812 tail = (void * )FLOOR (tail , ARCH_PAGE_SIZE );
813813
814814 while (iter != tail )
0 commit comments