|  Michael Brown | 75d864432c | Use the magic of common symbols to allow struct dev to effectively grow at link time to accommodate whatever bus objects are included. | 2005-04-14 10:10:54 +00:00 | 
				
					
						|  Michael Brown | 0dc98309b2 | Stripped references to variables in C code. | 2005-04-13 13:48:26 +00:00 | 
				
					
						|  Michael Brown | e294a1ddce | EISA support now provided by eisa.c MCA support now provided by mca.c | 2005-04-13 13:06:56 +00:00 | 
				
					
						|  Michael Brown | 200b39a645 | Extraced from 3c509.c | 2005-04-13 12:45:38 +00:00 | 
				
					
						|  Michael Brown | a4f1a058a4 | Add EISA as a bus type. | 2005-04-13 12:20:59 +00:00 | 
				
					
						|  Michael Brown | 4ae83f28f2 | Don't use htons, for compatibility with PCI :( | 2005-04-13 12:15:14 +00:00 | 
				
					
						|  Michael Brown | 4ecbc63296 | Use __bswap_16, since we're not dealing with quantities to go onto the network. | 2005-04-13 12:11:21 +00:00 | 
				
					
						|  Michael Brown | 5b8e549c83 | htons was used in ISAPnP code just due to ISAPnP storing bytes in reverse order. | 2005-04-13 12:06:33 +00:00 | 
				
					
						|  Michael Brown | 9711f50e20 | Created separate isa_ids.h file and a utility function to print out ISA IDs in a human-readable format. | 2005-04-13 12:01:44 +00:00 | 
				
					
						|  Michael Brown | ac1c0a753d | Add MCA devices | 2005-04-13 03:00:50 +00:00 | 
				
					
						|  Michael Brown | 677cda3263 | Minor fixups | 2005-04-13 03:00:30 +00:00 | 
				
					
						|  Michael Brown | 1aee4e8001 | Extracted from 3c509.c | 2005-04-13 02:59:13 +00:00 | 
				
					
						|  Michael Brown | e27ebad4b2 | Whoops | 2005-04-13 02:05:43 +00:00 | 
				
					
						|  Michael Brown | 7cc6366a84 | Finished by hand | 2005-04-13 02:02:08 +00:00 | 
				
					
						|  Michael Brown | 951e305081 | Finished by hand | 2005-04-13 01:45:20 +00:00 | 
				
					
						|  Michael Brown | f39cc6d978 | Finished by hand | 2005-04-13 01:31:44 +00:00 | 
				
					
						|  Michael Brown | f16ac2d87e | Fix type of dummy_irq() | 2005-04-13 01:28:43 +00:00 | 
				
					
						|  Michael Brown | 9848135950 | Finished by hand | 2005-04-13 01:01:33 +00:00 | 
				
					
						|  Michael Brown | 3616de915e | Hand-finished | 2005-04-13 00:21:59 +00:00 | 
				
					
						|  Michael Brown | 6e8878c1fa | Avoid compiler warnings. | 2005-04-13 00:19:01 +00:00 | 
				
					
						|  Michael Brown | 266dae4034 | Use NIC's connect method. | 2005-04-13 00:18:35 +00:00 | 
				
					
						|  Michael Brown | 17d69d8930 | Add mbps and duplex to struct nic, since some drivers (e.g. rtl8139) can fill them in. | 2005-04-13 00:16:42 +00:00 | 
				
					
						|  Michael Brown | 28590d718b | Hand-finished | 2005-04-13 00:15:45 +00:00 | 
				
					
						|  Michael Brown | 91e46ed588 | Automatically updated using perl -pi -0777 -e 's/^(\s*)dev->disable(\s*)=\s*(\w+)_disable;\s*nic->poll\s*=\s*(\w+);\s*nic->transmit\s*=\s*(\w+);\s*nic->irq\s*=\s*(\w+);/static struct nic_operations ${3}_operations;\nstatic struct nic_operations ${3}_operations = {\n\t.connect\t= dummy_connect,\n\t.poll\t\t= $4,\n\t.transmit\t= $5,\n\t.irq\t\t= $6,\n\t.disable\t= ${3}_disable,\n};${1}nic->nic_op\t= &${3}_operations;/msg' *.c | 2005-04-13 00:02:40 +00:00 | 
				
					
						|  Michael Brown | d9c64c9422 | Manual tweaks to get all drivers to follow the "disable, poll, transmit, irq" pattern. | 2005-04-12 23:47:52 +00:00 | 
				
					
						|  Michael Brown | 881023e9ca | Automatically updated using perl -pi -e 's/(_probe\s*\(\s*struct )dev \*.*?(\s*\);)/${1}dev *dev$2/' *.c
perl -pi -e 's/(_disable\s*\(\s*struct )dev \*.*?(\s*\);)/${1}nic *nic$2/' *.c | 2005-04-12 23:39:16 +00:00 | 
				
					
						|  Michael Brown | c87ba23399 | Automatically updated using perl -pi -0777 -e 's/_disable\s*\(\s*struct dev \*dev\s*\)\s*{\s*struct nic \*nic.*?$/_disable ( struct nic *nic ) {/ms' *.c
perl -pi -0777 -e 's/_disable\s*\(\s*struct dev \*dev(\s*__unused)?\)\s*{/_disable ( struct nic *nic$1 ) {/ms' *.c | 2005-04-12 23:31:37 +00:00 | 
				
					
						|  Michael Brown | bd9ae7cc70 | Automatically updated using perl -pi -0777 -e 's/_probe\s*\(\s*struct dev \*dev,\s*struct pci_device \*(\w+?)\s*\)\s*{(\s*)struct nic \*nic.*?$/_probe ( struct dev *dev ) {\n${2}struct nic *nic = nic_device ( dev );\n${2}struct pci_device *$1 = pci_device ( dev );/ms' *.c | 2005-04-12 23:24:39 +00:00 | 
				
					
						|  Michael Brown | 35e6f3e58a | Minor regexp tweaks to catch degenerate cases. | 2005-04-12 23:13:54 +00:00 | 
				
					
						|  Michael Brown | 4e3e389200 | Auto-updated using perl -pi -0777 -e 's/static struct pci_driver (\w+) __pci_driver = {.*\.name\s*=\s*(\"\S+\").*\.probe\s*=\s*(\w+).*\.ids\s*=\s*(\w+).*\.class\s*=\s*(\w+).*?};/static struct pci_driver $1 =\n\tPCI_DRIVER ( $2, $4, $5 );\n\nBOOT_DRIVER ( $2, $3 );/ms' *.c
perl -pi -e 's/(PCI_DRIVER \(.*, )0 \);/${1}PCI_NO_CLASS );/' *.c | 2005-04-12 23:05:00 +00:00 | 
				
					
						|  Michael Brown | 241fb0f3cd | Use dev's print_info method to print standardised information about the boot device. | 2005-04-12 22:44:02 +00:00 | 
				
					
						|  Michael Brown | 95da907d5f | Add print_info method to dev_operations. | 2005-04-12 22:43:25 +00:00 | 
				
					
						|  Michael Brown | c2a21744f6 | We now record a pointer to the struct pci_device, since it's carried around in struct dev anyway. | 2005-04-12 22:42:52 +00:00 | 
				
					
						|  Michael Brown | e1d0cebfa8 | Able to at least compile again now. | 2005-04-12 19:11:42 +00:00 | 
				
					
						|  Michael Brown | d9f34bfdfc | Add dummy_connect and dummy_irq | 2005-04-12 19:11:13 +00:00 | 
				
					
						|  Michael Brown | 81320fae4b | Remove debugging by default | 2005-04-12 18:32:20 +00:00 | 
				
					
						|  Michael Brown | 27a55b514c | Updated to new device API. | 2005-04-12 18:23:00 +00:00 | 
				
					
						|  Michael Brown | 1218698e01 | Cope with nic.h being included before (or without) dev.h | 2005-04-12 18:21:38 +00:00 | 
				
					
						|  Michael Brown | 122b025293 | Include dev.h, since several drivers just include nic.h | 2005-04-12 18:15:12 +00:00 | 
				
					
						|  Michael Brown | 8fa0e38233 | Fixed up PCI-scanning code to use new PCI interface. | 2005-04-12 18:13:59 +00:00 | 
				
					
						|  Michael Brown | 3293c68488 | Make adjust_pci_device global, since many drivers call it. | 2005-04-12 18:10:57 +00:00 | 
				
					
						|  Michael Brown | 762fa9a478 | Fix up find_pci_device so that it can be used for scanning for devices *other* than the main boot device. | 2005-04-12 18:04:03 +00:00 | 
				
					
						|  Michael Brown | eb8f730d63 | Use pci_{vendor,device}_id instead of just pci_{vendor,device}, to avoid conflict with pci_device function. | 2005-04-12 17:56:23 +00:00 | 
				
					
						|  Michael Brown | 5c31682674 | Tie into new boot device framework. | 2005-04-12 16:54:09 +00:00 | 
				
					
						|  Michael Brown | 1434e8d68d | struct nic is now part of struct dev, rather than the other way around. Tie into new boot device framework. | 2005-04-12 16:52:59 +00:00 | 
				
					
						|  Michael Brown | 31410b1b5d | Needs to be updated to new probe logic. | 2005-04-12 16:51:26 +00:00 | 
				
					
						|  Michael Brown | 236a195257 | All code related to the device probe logic is ifdeffed 0 out. | 2005-04-12 16:49:59 +00:00 | 
				
					
						|  Michael Brown | bb293ca5c2 | Global struct dev is now in main.c | 2005-04-12 16:49:11 +00:00 | 
				
					
						|  Michael Brown | 6f37dc410a | print_drivers() is now unified. | 2005-04-12 16:48:45 +00:00 | 
				
					
						|  Michael Brown | daad093c40 | Now obsolete.  :) | 2005-04-12 16:46:57 +00:00 | 
				
					
						|  Michael Brown | 0effbefe6f | All boot device drivers are now lumped together in boot_drivers | 2005-04-12 16:46:15 +00:00 | 
				
					
						|  Michael Brown | 6343381e25 | Matches new pci.c interface. | 2005-04-12 16:45:40 +00:00 | 
				
					
						|  Michael Brown | 5603c879c4 | Add INIT_PCIBIOS | 2005-04-12 16:45:16 +00:00 | 
				
					
						|  Michael Brown | 3095881c54 | For pci_io.c | 2005-04-12 16:44:50 +00:00 | 
				
					
						|  Michael Brown | 3901d197f7 | Replaced main loop with a trivial implementation so that we can try out the new probing logic. | 2005-04-12 16:43:18 +00:00 | 
				
					
						|  Michael Brown | 17aad49028 | 16-bit PCI BIOS interface also now known to work. | 2005-04-12 16:42:14 +00:00 | 
				
					
						|  Michael Brown | 45f96a49c7 | main.c contains the global struct dev. | 2005-04-12 16:39:03 +00:00 | 
				
					
						|  Michael Brown | 5e807dffe6 | Obsoleted by new device probing mechanism. | 2005-04-12 16:38:38 +00:00 | 
				
					
						|  Michael Brown | 17c1ca90e7 | New device probing mechanism | 2005-04-12 16:38:23 +00:00 | 
				
					
						|  Michael Brown | 707720c4e5 | New PCI scan functions now work. | 2005-04-12 16:36:55 +00:00 | 
				
					
						|  Michael Brown | bbcdf38214 | Improved debug messages | 2005-04-12 16:27:27 +00:00 | 
				
					
						|  Michael Brown | ff53205d0d | Should work for KEEP_IT_REAL as well now. | 2005-04-12 13:35:31 +00:00 | 
				
					
						|  Michael Brown | 0ccaf5bb83 | Nearly there... | 2005-04-12 13:31:36 +00:00 | 
				
					
						|  Michael Brown | 67f122c645 | Removed pci_find_device_x; it was too ugly to live. | 2005-04-12 12:59:21 +00:00 | 
				
					
						|  Michael Brown | 121e7386f6 | New device probing mechanism written, not tested. | 2005-04-11 19:19:35 +00:00 | 
				
					
						|  Michael Brown | 7172d4abfb | Moved functions that we want to keep to drivers/bus/pci.c | 2005-04-11 13:45:00 +00:00 | 
				
					
						|  Michael Brown | 2ebc56f334 | Moved in functions from old core/pci.c that we want to keep. | 2005-04-11 13:43:53 +00:00 | 
				
					
						|  Michael Brown | 95f755ad7f | Renamed pci.c to pci_legacy.c in preparation for new bus managment infrastructure. | 2005-04-11 13:25:41 +00:00 | 
				
					
						|  Michael Brown | 63a0e0e2df | Removed references to no-longer-existent CFLAGS options. | 2005-04-11 10:17:00 +00:00 | 
				
					
						|  Michael Brown | 5d96e5dad9 | Changed guard name to avoid clash with INCLUDE_xxx namespace used by drivers. | 2005-04-11 09:58:31 +00:00 | 
				
					
						|  Michael Brown | 378c1b500c | Cleaner separation of functionality between post_reloc and initialise_via_librm. | 2005-04-11 09:24:10 +00:00 | 
				
					
						|  Michael Brown | b9237160ad | Almost all information in this file is now obsolete.  Writing a new driver should, with the new build system, just be a case of writing the .c file
and dropping it in place in drivers/net.  :) | 2005-04-10 23:45:55 +00:00 | 
				
					
						|  Michael Brown | 34a0b5f16f | initialise() doesn't take regs | 2005-04-10 18:39:28 +00:00 | 
				
					
						|  Michael Brown | 87508aa0b2 | arch_initialise() is now sufficiently generic that we may as well just call it initialise() and place it in main.c.  :) | 2005-04-10 18:30:34 +00:00 | 
				
					
						|  Michael Brown | 997b51c1e6 | Use librm_arch_initialise for librm, arch_initialise for others. | 2005-04-10 18:22:31 +00:00 | 
				
					
						|  Michael Brown | 560027899e | Heading towards a sane set of control functions | 2005-04-10 18:21:53 +00:00 | 
				
					
						|  Michael Brown | 39cb1b4f9e | All the icky stuff is now taken care of by librm_arch_initialise | 2005-04-10 18:21:27 +00:00 | 
				
					
						|  Michael Brown | d189b84536 | Fix up init ordering. Make init function table name fixed; it's a static variable anyway. | 2005-04-10 18:20:38 +00:00 | 
				
					
						|  Michael Brown | 3714946709 | arch_rm_main no longer exists. | 2005-04-10 18:19:59 +00:00 | 
				
					
						|  Michael Brown | 1937b39079 | Drag in relocate unless NORELOCATE is defined, since it's now called only via the initialisation function table. | 2005-04-10 18:19:05 +00:00 | 
				
					
						|  Michael Brown | f06e8c9707 | Added post-relocation function table. | 2005-04-10 18:18:37 +00:00 | 
				
					
						|  Michael Brown | 9abceef561 | Removed obsolete initialisation calls. | 2005-04-10 18:13:24 +00:00 | 
				
					
						|  Michael Brown | 070f6c0b6b | Fixed debug messages | 2005-04-10 16:58:19 +00:00 | 
				
					
						|  Michael Brown | 43417e6c1b | setup16() now calls initialise(); we don't have to do it. | 2005-04-10 16:48:04 +00:00 | 
				
					
						|  Michael Brown | 04682f9838 | Setup now calls initialise() directly, rather than expecting the prefix to do it. | 2005-04-10 16:46:46 +00:00 | 
				
					
						|  Michael Brown | 44e62317be | Add librm_base. | 2005-04-10 16:44:49 +00:00 | 
				
					
						|  Michael Brown | dfb9c44994 | hooks.o is now a single object, rather than having separate hooks.o and hooks_rm.o | 2005-04-10 16:44:29 +00:00 | 
				
					
						|  Michael Brown | 04a99841e6 | Make prot_call() able to transparently return via the newly installed copy of librm. | 2005-04-10 15:51:10 +00:00 | 
				
					
						|  Michael Brown | 44eee81d11 | Don't build relocate() under KEEP_IT_REAL | 2005-04-09 17:05:35 +00:00 | 
				
					
						|  Michael Brown | 2fa14f2f1d | lgdt needs data32 prefix, otherwise it loads only 24 bits.  (sgdt always saves 32 bits). | 2005-04-09 16:42:50 +00:00 | 
				
					
						|  Michael Brown | 6a4ac358f3 | Add INIT_FNs to make sure that librm gets reallocated when needed. | 2005-04-09 16:42:07 +00:00 | 
				
					
						|  Michael Brown | e29e6456b0 | Don't zero freed base memory; one block will contain librm. | 2005-04-09 16:14:37 +00:00 | 
				
					
						|  Michael Brown | 1f6dfd7047 | Allow ourselves to be freed by basemem.c without being damaged. | 2005-04-09 16:14:09 +00:00 | 
				
					
						|  Michael Brown | 97ced37c71 | Need to provide sizeof(struct free_base_memory_header) to assembly code. | 2005-04-09 16:13:19 +00:00 | 
				
					
						|  Michael Brown | 90cf689810 | Note basemem API change. | 2005-04-09 15:56:03 +00:00 | 
				
					
						|  Michael Brown | ef05051f23 | Add INIT_LIBRM before INIT_CONSOLE. | 2005-04-09 15:26:38 +00:00 | 
				
					
						|  Michael Brown | 48feb91a40 | Rewritten in a much saner way, now that we don't have to worry about continually reallocating the real-mode stack. | 2005-04-09 15:01:38 +00:00 | 
				
					
						|  Michael Brown | 0574136c6d | Split out from etherboot.h | 2005-04-09 15:01:09 +00:00 | 
				
					
						|  Michael Brown | 8570814148 | Removed basemem.c prototypes | 2005-04-09 15:00:28 +00:00 | 
				
					
						|  Michael Brown | fd95189c4d | basememsize() updates the BIOS FBMS counter at 40:13. | 2005-04-09 14:16:25 +00:00 | 
				
					
						|  Michael Brown | a800e9657d | PM function called by prot_call() should be allowed to modifying registers returned to RM code. | 2005-04-09 13:56:33 +00:00 | 
				
					
						|  Michael Brown | 29f43896aa | Add relocate.h Note that we can't make real-mode calls immediately after relocate_to(). | 2005-04-09 13:36:55 +00:00 | 
				
					
						|  Michael Brown | 9cc90cbb07 | First version | 2005-04-09 13:32:26 +00:00 | 
				
					
						|  Michael Brown | c8c7d93757 | Relocation code is arch-specific. | 2005-04-09 13:28:59 +00:00 | 
				
					
						|  Michael Brown | 64d3886c1d | relocate() is called by arch_initialise(). | 2005-04-09 13:23:49 +00:00 | 
				
					
						|  Michael Brown | 8039086ec8 | Added a lot of explanatory comments. Preserves alignment requested via _max_align parameter to linker. | 2005-04-09 13:12:22 +00:00 | 
				
					
						|  Michael Brown | 19176718be | callbacks.h no longer exists | 2005-04-09 11:19:14 +00:00 | 
				
					
						|  Michael Brown | 792f34d228 | #ifdef 0 out the UNDI loader routine, since it refers to the obsolete callback mechanism. | 2005-04-09 11:17:29 +00:00 | 
				
					
						|  Michael Brown | 73dbe41007 | Old callbacks mechanism is obsolete. | 2005-04-09 11:16:17 +00:00 | 
				
					
						|  Michael Brown | fedd00dd46 | Removed references to old callback mechanism | 2005-04-09 11:15:14 +00:00 | 
				
					
						|  Michael Brown | 9c32083d56 | callbacks.h no longer exists. | 2005-04-09 11:12:29 +00:00 | 
				
					
						|  Michael Brown | a3faaf405a | Callback mechanism now obsolete | 2005-04-09 11:11:34 +00:00 | 
				
					
						|  Michael Brown | a4920c16bd | Moved relocate.c to arch-specific dir, since it involves arch-specific logic (e.g. avoiding memory regions with A20=0). | 2005-04-09 10:49:26 +00:00 | 
				
					
						|  Michael Brown | 0ff80b477d | Merged mcb30-realmode-redesign back to HEAD | 2005-04-08 15:01:17 +00:00 | 
				
					
						|  Michael Brown | de5d935135 | Merged this file into HEAD | 2005-03-24 13:54:46 +00:00 | 
				
					
						|  Michael Brown | afff2b50f1 | Obsolete; not referenced by anything. | 2005-03-09 14:16:01 +00:00 | 
				
					
						|  Michael Brown | 8bb1866f24 | lzhuf is obsolete and no longer used | 2005-03-09 14:14:01 +00:00 | 
				
					
						|  Michael Brown | 168973a5d7 | Obsolete; not reference by anything. | 2005-03-09 14:11:45 +00:00 | 
				
					
						|  Michael Brown | 6d4d056202 | Obsolete; not referenced by anything. | 2005-03-09 14:09:29 +00:00 | 
				
					
						|  Michael Brown | 0ff846a503 | unhuf.S is obsolete and no longer used | 2005-03-09 14:07:23 +00:00 | 
				
					
						|  Michael Brown | 10d9f9cec8 | Obsolete and no longer used | 2005-03-09 14:05:32 +00:00 | 
				
					
						|  Michael Brown | 8bd447ad1b | Add rule to generate 16-bit version of decompressor | 2005-03-09 14:04:04 +00:00 | 
				
					
						|  Michael Brown | 7700b8059c | Remove CODE16 as a global define; most files define it themselves anyway, and I want to be able to use it as a compile-time option for
the i386 decompressor. | 2005-03-09 14:02:20 +00:00 | 
				
					
						|  Michael Brown | 3d6123e69a | Initial revision | 2005-03-08 18:53:11 +00:00 |