mirror of
				https://source.denx.de/u-boot/u-boot.git
				synced 2025-11-04 02:11:25 +01:00 
			
		
		
		
	- logdl - csb226 - innokom * Patch by Pantelis Antoniou, 25 Jun 2003: update NetVia with V2 board support
		
			
				
	
	
		
			40 lines
		
	
	
		
			873 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			873 B
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * -*- mode:c -*-
 | 
						|
 *
 | 
						|
 * (C) Copyright 2000
 | 
						|
 * Marius Groeger <mgroeger@sysgo.de>
 | 
						|
 * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
 | 
						|
 *
 | 
						|
 * void ull_write(unsigned long long volatile *address,
 | 
						|
 *                unsigned long long volatile *data)
 | 
						|
 * r3 = address
 | 
						|
 * r4 = data
 | 
						|
 *
 | 
						|
 * void ull_read(unsigned long long volatile *address,
 | 
						|
 *                unsigned long long volatile *data)
 | 
						|
 * r3 = address
 | 
						|
 * r4 = data
 | 
						|
 *
 | 
						|
 * Uses the floating point unit to read and write 64 bit wide
 | 
						|
 * data (unsigned long long) on the 60x bus. This is necessary
 | 
						|
 * because all 4 flash chips use the /WE line from byte lane 0
 | 
						|
 *
 | 
						|
 * IMPORTANT: data should always be 8-aligned, otherwise an exception will
 | 
						|
 * occur.
 | 
						|
 */
 | 
						|
 | 
						|
#include <ppc_asm.tmpl>
 | 
						|
#include <ppc_defs.h>
 | 
						|
 | 
						|
	.globl	ull_write
 | 
						|
ull_write:
 | 
						|
	lfd		0,0(r4)
 | 
						|
	stfd	0,0(r3)
 | 
						|
	blr
 | 
						|
 | 
						|
	.globl	ull_read
 | 
						|
ull_read:
 | 
						|
	lfd		0, 0(r3)
 | 
						|
	stfd	0, 0(r4)
 | 
						|
	blr
 |