forked from xuos/xiuos
				
			support zynq7000-zc702
This commit is contained in:
		
							parent
							
								
									5f9478251b
								
							
						
					
					
						commit
						6489d94dcd
					
				| 
						 | 
				
			
			@ -140,7 +140,7 @@ OKToRun:
 | 
			
		|||
	mcr	p15, 0, r0, c8, c7, 0		/* invalidate TLBs */
 | 
			
		||||
	mcr	p15, 0, r0, c7, c5, 0		/* invalidate icache */
 | 
			
		||||
	mcr	p15, 0, r0, c7, c5, 6		/* Invalidate branch predictor array */
 | 
			
		||||
	bl	invalidate_dcache		/* invalidate dcache */
 | 
			
		||||
	bl	boot_invalidate_dcache		/* invalidate dcache */
 | 
			
		||||
 | 
			
		||||
	/* Disable MMU, if enabled */
 | 
			
		||||
	mrc	p15, 0, r0, c1, c0, 0		/* read CP15 register 1 */
 | 
			
		||||
| 
						 | 
				
			
			@ -193,14 +193,14 @@ OKToRun:
 | 
			
		|||
/*
 | 
			
		||||
 *************************************************************************
 | 
			
		||||
 *
 | 
			
		||||
 * invalidate_dcache - invalidate the entire d-cache by set/way
 | 
			
		||||
 * boot_invalidate_dcache - invalidate the entire d-cache by set/way
 | 
			
		||||
 *
 | 
			
		||||
 * Note: for Cortex-A9, there is no cp instruction for invalidating
 | 
			
		||||
 * the whole D-cache. Need to invalidate each line.
 | 
			
		||||
 *
 | 
			
		||||
 *************************************************************************
 | 
			
		||||
 */
 | 
			
		||||
invalidate_dcache:
 | 
			
		||||
boot_invalidate_dcache:
 | 
			
		||||
	mrc	p15, 1, r0, c0, c0, 1		/* read CLIDR */
 | 
			
		||||
	ands	r3, r0, #0x7000000
 | 
			
		||||
	mov	r3, r3, lsr #23			/* cache level value (naturally aligned) */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -36,8 +36,6 @@ SECTIONS
 | 
			
		|||
	.start_sec : {
 | 
			
		||||
		. = ALIGN(0x1000);
 | 
			
		||||
 | 
			
		||||
		*(.vectors)
 | 
			
		||||
 | 
			
		||||
		/* read only area. */
 | 
			
		||||
		boot.o(.text)
 | 
			
		||||
		xil-crt0.o(.text .text.*)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,6 +50,7 @@
 | 
			
		|||
 *****************************************************************************/
 | 
			
		||||
 | 
			
		||||
/***************************** Include Files ********************************/
 | 
			
		||||
#include "xparameters.h"
 | 
			
		||||
#include "xuartps_hw.h"
 | 
			
		||||
 | 
			
		||||
#include "mmio_access.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -176,8 +177,6 @@ void XUartPs_ResetHw(u32 BaseAddress)
 | 
			
		|||
        ((u32)XUARTPS_CR_RX_DIS | (u32)XUARTPS_CR_TX_DIS | (u32)XUARTPS_CR_STOPBRK));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#define STDIN_BASEADDRESS 0xE0001000
 | 
			
		||||
#define STDOUT_BASEADDRESS 0xE0001000
 | 
			
		||||
void UartPutChar(uint8_t ch)
 | 
			
		||||
{
 | 
			
		||||
    if (ch == '\n') {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -288,7 +288,6 @@ void load_kern_pgdir(struct TraceTag* mmu_driver_tag, struct TraceTag* intr_driv
 | 
			
		|||
    uintptr_t dev_attr = 0;
 | 
			
		||||
    _p_pgtbl_mmu_access->MmuDevPteAttr(&dev_attr);
 | 
			
		||||
 | 
			
		||||
    _map_pages((uintptr_t*)kern_pgdir.pd_addr, PHY_MEM_BASE, PHY_MEM_BASE, (PHY_MEM_STOP - PHY_MEM_BASE), kern_attr);
 | 
			
		||||
    // kern mem
 | 
			
		||||
    _map_pages((uintptr_t*)kern_pgdir.pd_addr, KERN_MEM_BASE, PHY_MEM_BASE, (PHY_MEM_STOP - PHY_MEM_BASE), kern_attr);
 | 
			
		||||
    // dev mem
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -198,9 +198,7 @@ static void _scheduler(struct SchedulerRightGroup right_group)
 | 
			
		|||
 | 
			
		||||
        struct CPU* cpu = cur_cpu();
 | 
			
		||||
        cpu->task = next_task;
 | 
			
		||||
        // DEBUG("%s %d\n", __func__, __LINE__);
 | 
			
		||||
        context_switch(&cpu->scheduler, next_task->main_thread.context);
 | 
			
		||||
        // DEBUG("%s %d\n", __func__, __LINE__);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue