Alexey Zaytsev
							
						 
						
							
								a1572e0ab0
								
							 
						 
						
							Modify gPXE core and drivers to work with the new timer subsystem 
							
							 
							
Signed-off-by: Alexey Zaytsev <alexey.zaytsev@gmail.com > 
							
							
						 
						il y a 17 ans  
					 
				
					
						
							
								   Alexey Zaytsev
							
						 
						
							
								4006d229e5
								
							 
						 
						
							Introduce the new timer subsystem. 
							
							 
							
	Timer subsystem initialization code in core/timer.c
	Split the BIOS and RTDSC timer drivers from i386_timer.c
	Split arch/i386/firmware/pcbios/bios.c into the RTSDC
	timer driver and arch/i386/core/nap.c
	Split the headers properly:
		include/unistd.h - delay functions to be used by the
					gPXE core and drivers.
		include/gpxe/timer.h - the fimer subsystem interface
					to be used by the timer drivers
					and currticks() to be used by
					the code gPXE subsystems.
		include/latch.h	- removed
		include/timer.h - scheduled for removal. Some driver
					are using currticks, which is
					only for core subsystems.
Signed-off-by: Alexey Zaytsev <alexey.zaytsev@gmail.com > 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								bc3f0a25c6
								
							 
						 
						
							[Infiniband] Add preliminary support for multi-port devices. 
							
							 
							
Arbel and Hermon cards both have multiple ports.  Add the
infrastructure required to register each port as a separate IB
device.  Don't yet register more than one port, since registration
will currently fail unless a valid link is detected.
Use ib_*_{set,get}_{drv,owner}data wrappers to access driver- and
owner-private data on Infiniband structures. 
							
							
						 
						il y a 17 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								6570203571
								
							 
						 
						
							[Infiniband] Centralise MAD operations 
							
							 
							
Pull out common code for handling management datagrams from arbel.c
and hermon.c into infiniband.c.
Add port number to struct ib_device.
Add open(), close() and mad() methods to struct ib_device_operations. 
							
							
						 
						il y a 17 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								396dc6e797
								
							 
						 
						
							[Hermon] Add driver for Mellanox Hermon (ConnectX) cards. 
							
							
						 
						il y a 17 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a2b4252d5a
								
							 
						 
						
							Add XFER_INIT() macro. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								f6a8158eed
								
							 
						 
						
							Make seek information part of the xfer metadata, rather than an entirely 
							
							 
							separate xfer method.
Add missing .alloc_iob entries to several xfer_interface_operations
structures. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								74fd544101
								
							 
						 
						
							Added the embedded pxelinux payload patch from hpa. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								f3265b4bf8
								
							 
						 
						
							Add preliminary support for MTFTP. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								3b1efba864
								
							 
						 
						
							Add RFC2090 TFTP multicast support. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b3abf25e3c
								
							 
						 
						
							Allow DHCP server to instruct gPXE to ignore ProxyDHCP (which will 
							
							 
							also avoid waiting for ProxyDHCP offers).
Also reduce the ProxyDHCP timeout, because it's already irritating me. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								0becbf5fba
								
							 
						 
						
							Add ProxyDHCP support. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								fb809da2df
								
							 
						 
						
							Remove some assumptions about DHCP obtaining only a single options block. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8d18338ae7
								
							 
						 
						
							Add PXE-required DHCP options to DHCPDISCOVER and DHCPREQUEST packets. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								26f3a09ccf
								
							 
						 
						
							Add UUID to DHCP request as option 97 (if available). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								899f5b8ab2
								
							 
						 
						
							Added definition of a UUID and uuid_ntoa() (for debugging), and 
							
							 
							implemented smbios_get_uuid(). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Marty Connor
							
						 
						
							
								048a234dce
								
							 
						 
						
							Add errfile definition for new e1000.c 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Marty Connor
							
						 
						
							
								8bd670301c
								
							 
						 
						
							Add ERRFILE information for e1000_main and e1000_hw, part of the new e1000 driver 
							
							 
							
It is likely we will rename e1000_main to e1000 when the new e1000 driver is debugged. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								5793dbe96f
								
							 
						 
						
							Infinband requires longer link-layer addresses and headers than Ethernet. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2ee76d0c93
								
							 
						 
						
							Added defines for Infiniband files (which can't be committed to the 
							
							 
							main tree yet, but reserving the error numbers now avoids problems later). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								af303db75d
								
							 
						 
						
							Use RFC4390 whenever hardware address exceeds 16 bytes; this allows us 
							
							 
							to construct DHCP packets suitable for Infiniband. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								f09173326c
								
							 
						 
						
							Moved iobuf.h assertions outside the static inline functions, so that 
							
							 
							the assert message's file and line number gives some clue as to the
real location of the problem.
Added similar assertions to list.h. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								30717896f5
								
							 
						 
						
							IB can't afford many RX buffers, because the MTU is so large.  Reduce 
							
							 
							the TCP window to compensate. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2f23881856
								
							 
						 
						
							Added arbel.c 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2c56ede6f8
								
							 
						 
						
							Moved iobuf.h assertions outside the static inline functions, so that 
							
							 
							the assert message's file and line number gives some clue as to the
real location of the problem.
Added similar assertions to list.h. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								bdac591726
								
							 
						 
						
							Some interesting packet corruption happening now. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								2ed1acb9e9
								
							 
						 
						
							Broadcast GID is now calculated by IPoIB layer. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								ab191e45db
								
							 
						 
						
							Unicasts seem to be working. :) 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b3d3814c17
								
							 
						 
						
							Obtains a response to the get path record! 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								e05a8cd4de
								
							 
						 
						
							Use pkey table access to determine broadcast GID directly. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								440e7926fb
								
							 
						 
						
							Dead code removal 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								4e78a53cf2
								
							 
						 
						
							IPoIB code separated out to ipoib.c. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								67836430e6
								
							 
						 
						
							Read port GID directly using MAD IFC. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								3c6a6bdc5d
								
							 
						 
						
							Multicast join now works. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								7e85f0d296
								
							 
						 
						
							create_qp() and destroy_qp() now written (but not tested). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								251cc84ed6
								
							 
						 
						
							Started implementing create_qp() and destroy_qp(). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								b21d4ca21e
								
							 
						 
						
							Revert to dev_priv/owner_priv scheme, rather than container_of; it 
							
							 
							makes it easier to put the generic allocation code into infiniband.c 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								e238bb1e43
								
							 
						 
						
							destroy_cq() now implemented (not tested). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								156b409ccc
								
							 
						 
						
							Rearrange data structures to maximise embedding (and hence minimise 
							
							 
							the number of separate allocations that need to be done). 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								37fc40bc8c
								
							 
						 
						
							post_recv() now works, and we can pass data on the IPoIB queue pair 
							
							 
							using entirely our own code. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8deef093d9
								
							 
						 
						
							Direct polling of TX completion queue now works. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								6a791649f0
								
							 
						 
						
							Updated MLX_* accessor macros to use implicit type information. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								a3a91fedc1
								
							 
						 
						
							Started added poll_cq() verb. 
							
							 
							
Started reworking MLX_EXTRACT(), MLX_POPULATE() etc. to automatically
determine type information. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								970951666f
								
							 
						 
						
							arbel_post_send() has been observed to transmit a packet! 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								8b27da9de1
								
							 
						 
						
							Gets a response out of the hardware.  (An error completion, to be precise.) 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								38a73b55c4
								
							 
						 
						
							Now at least compiles 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								9d08b7c692
								
							 
						 
						
							Starting to introduce an Infiniband device abstraction 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								08e8dfd801
								
							 
						 
						
							Now handling TX completions in our poll loop. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								30a19c3f1c
								
							 
						 
						
							Can now both send and receive packets.  LL header format not yet 
							
							 
							fixed; still using a quick hack-up just to be able to pass through
data. 
							
							
						 
						il y a 18 ans  
					 
				
					
						
							
								   Michael Brown
							
						 
						
							
								99411e36da
								
							 
						 
						
							Added netdev_priv() to ease Linux driver compatibility. 
							
							
						 
						il y a 18 ans