|  | @@ -10,26 +10,6 @@
 | 
		
	
		
			
			| 10 | 10 |  #include <int13.h>
 | 
		
	
		
			
			| 11 | 11 |  #include <usr/aoeboot.h>
 | 
		
	
		
			
			| 12 | 12 |  
 | 
		
	
		
			
			| 13 |  | -/**
 | 
		
	
		
			
			| 14 |  | - * AoE boot information block
 | 
		
	
		
			
			| 15 |  | - *
 | 
		
	
		
			
			| 16 |  | - * Must be placed at 40:f0.
 | 
		
	
		
			
			| 17 |  | - *
 | 
		
	
		
			
			| 18 |  | - * This structure needs to be replaced by an ACPI table or similar.
 | 
		
	
		
			
			| 19 |  | - */
 | 
		
	
		
			
			| 20 |  | -struct aoe_boot_info {
 | 
		
	
		
			
			| 21 |  | -	/** Must be 0x01 */
 | 
		
	
		
			
			| 22 |  | -	uint8_t one;
 | 
		
	
		
			
			| 23 |  | -	/** Client MAC address */
 | 
		
	
		
			
			| 24 |  | -	uint8_t client[ETH_ALEN];
 | 
		
	
		
			
			| 25 |  | -	/** Server MAC address */
 | 
		
	
		
			
			| 26 |  | -	uint8_t server[ETH_ALEN];
 | 
		
	
		
			
			| 27 |  | -	/** Shelf number */
 | 
		
	
		
			
			| 28 |  | -	uint16_t shelf;
 | 
		
	
		
			
			| 29 |  | -	/** Slot number */
 | 
		
	
		
			
			| 30 |  | -	uint8_t slot;
 | 
		
	
		
			
			| 31 |  | -} __attribute__ (( packed ));
 | 
		
	
		
			
			| 32 |  | -
 | 
		
	
		
			
			| 33 | 13 |  /**
 | 
		
	
		
			
			| 34 | 14 |   * Guess boot network device
 | 
		
	
		
			
			| 35 | 15 |   *
 | 
		
	
	
		
			
			|  | @@ -73,16 +53,6 @@ int aoeboot ( const char *root_path ) {
 | 
		
	
		
			
			| 73 | 53 |  	/* FIXME: ugly, ugly hack */
 | 
		
	
		
			
			| 74 | 54 |  	struct aoe_session *aoe =
 | 
		
	
		
			
			| 75 | 55 |  		container_of ( ata.backend, struct aoe_session, refcnt );
 | 
		
	
		
			
			| 76 |  | -	struct aoe_boot_info boot_info;
 | 
		
	
		
			
			| 77 |  | -	boot_info.one = 0x01;
 | 
		
	
		
			
			| 78 |  | -	memcpy ( boot_info.client, netdev->ll_addr,
 | 
		
	
		
			
			| 79 |  | -		 sizeof ( boot_info.client ) );
 | 
		
	
		
			
			| 80 |  | -	memcpy ( boot_info.server, aoe->target,
 | 
		
	
		
			
			| 81 |  | -		 sizeof ( boot_info.server ) );
 | 
		
	
		
			
			| 82 |  | -	boot_info.shelf = htons ( aoe->major );
 | 
		
	
		
			
			| 83 |  | -	boot_info.slot = aoe->minor;
 | 
		
	
		
			
			| 84 |  | -	copy_to_real ( 0x40, 0xf0, &boot_info, sizeof ( boot_info ) );
 | 
		
	
		
			
			| 85 |  | -
 | 
		
	
		
			
			| 86 | 56 |  	abft_fill_data ( aoe );
 | 
		
	
		
			
			| 87 | 57 |  
 | 
		
	
		
			
			| 88 | 58 |  	drive.drive = find_global_dhcp_num_option ( DHCP_EB_BIOS_DRIVE );
 |