Re: K8 + 2.4.21 + Tyan S2880
* ron minnich [EMAIL PROTECTED] [030724 21:37]: Thank you for the patch. What I would like to do is get my linuxbios back to working condition, then merge these in. Otherwise, if Stefan can test and verify them, maybe he can merge them in before me. I'm sitting at home and don't have access to any SMP K8 from here, so I'm going to test (and commit) this tommorrow at work.. Greetings, Stefan -- Architecture Team SuSE Linux AG ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
OK, I'm back, the checked out tree works fine now. YhLu, I will try to commit your changes tomrrow. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
YhLu: I can fix your problem without adding the mainboard init function to hardware main, and also without code like this to the include file: #ifdef FINAL_MAINBOARD_FIXUP void final_mainboard_fixup(void); #else # define final_mainboard_fixup() do {} while(0) #endif /* FINAL_MAINBOARD_FIXUP */ All I need to do is add an enable function for the mainboard into the static device tree, and create a structure for your mainboard in the mainboard/tyan/2880 directory. This is pretty easy, and will let us test out the new static device support. But, if I make this change you are going to have to use the new config tool for your mainboard. There is no going back to the old config tool once I make the change. The new config tool is working pretty well, now, however: Greg and Stefan and I are using it, and Greg and I use it exclusively. There are still some glitches here and there but overall it is quite solid. Is this acceptable to you? Stefan, Greg, and I can help you with any problems you encounter with the new config tool. thanks ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
Good, I will use your new config tool for s2880. -- : ron minnich [mailto:[EMAIL PROTECTED] : 2003724 16:07 : YhLu : [EMAIL PROTECTED]; Stefan Reinauer; [EMAIL PROTECTED] : Re: K8 + 2.4.21 + Tyan S2880 YhLu: I can fix your problem without adding the mainboard init function to hardware main, and also without code like this to the include file: #ifdef FINAL_MAINBOARD_FIXUP void final_mainboard_fixup(void); #else # define final_mainboard_fixup() do {} while(0) #endif /* FINAL_MAINBOARD_FIXUP */ All I need to do is add an enable function for the mainboard into the static device tree, and create a structure for your mainboard in the mainboard/tyan/2880 directory. This is pretty easy, and will let us test out the new static device support. But, if I make this change you are going to have to use the new config tool for your mainboard. There is no going back to the old config tool once I make the change. The new config tool is working pretty well, now, however: Greg and Stefan and I are using it, and Greg and I use it exclusively. There are still some glitches here and there but overall it is quite solid. Is this acceptable to you? Stefan, Greg, and I can help you with any problems you encounter with the new config tool. thanks ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
OK, I will start on this tonight. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
Eric, It can be compiled with you new code. But it meet problems in Etherboot stage. In S2880 has two broadcom NIC port in 8131 bus B, and one amd 8111 built-in nic, and even if I hide it in amd8111 init and Etherboot can find it and try to enable it and can not find the PM cap so aborting, in the old linuxbios code (before yesterday) ( with mem hard code), it will go to tickle on Broadcom nic, but in the new code (yesterday check in) ( mem configurable), it will go to MB restarting.??? How about arima broadcom nic position? Regards Yinghai Lu -- : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] : 2003721 18:33 : YhLu : ron minnich; Stefan Reinauer; [EMAIL PROTECTED] : Re: K8 + 2.4.21 + Tyan S2880 YhLu [EMAIL PROTECTED] writes: Eric, In the auto.c, if I enable : sdram_initialize(cpu1), the linuxbios need another 20k. What happened? Only add one line and the same function has been called ??? All functions are inline and the set of functions called is large. At least I believe that is the issue. And good luck catching up While I am away you get a chance. My latest code has changed sdram_initialize one more time to take a cpu count parameter. And perversely this should help because if a function is called in a loop it will only be inlined once instead of multiple times. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
On Mon, 21 Jul 2003, YhLu wrote: I can build the linuxbios. But it is too large and it is around 60k, and tg3.zelf is about 22k, and tg3--ide_disk.zelf is about 24k, then the sum is above 65k.So I can not build the images. I now routinely set my linuxbios size for 64K with payload size of 32k. romcc is WONDERFUL but it does grow things a bit. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: : K8 + 2.4.21 + Tyan S2880
On Mon, 21 Jul 2003, YhLu wrote: So fallback image will be 96K? that's how I'm doing it. With a 1 Mbyte flash I don't worry much. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
: K8 + 2.4.21 + Tyan S2880
Ron, So fallback image will be 96K? Regards Yinghai Lu -- : ron minnich [mailto:[EMAIL PROTECTED] : 2003721 14:45 : YhLu : [EMAIL PROTECTED]; Stefan Reinauer; [EMAIL PROTECTED] : Re: K8 + 2.4.21 + Tyan S2880 On Mon, 21 Jul 2003, YhLu wrote: I can build the linuxbios. But it is too large and it is around 60k, and tg3.zelf is about 22k, and tg3--ide_disk.zelf is about 24k, then the sum is above 65k.So I can not build the images. I now routinely set my linuxbios size for 64K with payload size of 32k. romcc is WONDERFUL but it does grow things a bit. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
ron minnich [EMAIL PROTECTED] writes: On Mon, 21 Jul 2003, YhLu wrote: I can build the linuxbios. But it is too large and it is around 60k, and tg3.zelf is about 22k, and tg3--ide_disk.zelf is about 24k, then the sum is above 65k.So I can not build the images. I now routinely set my linuxbios size for 64K with payload size of 32k. romcc is WONDERFUL but it does grow things a bit. Next time I get to it I intend to start honoring the inline keyword. The problem is that it inlines everything and creates code bloat. So far it is working well enough and there are other priorities that I have not come back to it. It is my goal that before the 2.0 release I can fit everything back into 64K for fallback again. It is not critical now but it is a warning sign of troubles ahead. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
ron minnich [EMAIL PROTECTED] writes: On 21 Jul 2003, Eric W. Biederman wrote: Next time I get to it I intend to start honoring the inline keyword. The problem is that it inlines everything and creates code bloat. hmm, I'll be wanting to see how you solve the call stack problem :-) Well routines that are only called once will still get inlined. And with 24 registers I have a lot more freedom, than with just 8. Historically Fortran did not have a call stack and it made procedure and function calls just fine. The same techniques with registers instead of hard coded memory locations should work fine. So far it is working well enough and there are other priorities that I have not come back to it. It is my goal that before the 2.0 release I can fit everything back into 64K for fallback again. It is not critical now but it is a warning sign of troubles ahead. Personally, for now, I think it's fine. You haven't had your debug code fail to compile because linuxbios goes over the 64K limit yet either. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
On 21 Jul 2003, Eric W. Biederman wrote: You haven't had your debug code fail to compile because linuxbios goes over the 64K limit yet either. I just did :-) ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
YhLu [EMAIL PROTECTED] writes: Eric, In the auto.c, if I enable : sdram_initialize(cpu1), the linuxbios need another 20k. What happened? Only add one line and the same function has been called ??? All functions are inline and the set of functions called is large. At least I believe that is the issue. And good luck catching up While I am away you get a chance. My latest code has changed sdram_initialize one more time to take a cpu count parameter. And perversely this should help because if a function is called in a loop it will only be inlined once instead of multiple times. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
What I will do is first, get my tree in sync with Greg's new config tool code and Eric's new updates for SMP; Then look at YhLu's code and try to get it integrated. Next week is K8 week for me. It is very exciting to see this coming up on my bench after reading about all the work you folks have been doing. ron ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
Eric, My boss has said that I can release the source code to you. Please find out the patch I made. Make the diff to today's tree. I didn't test RON new script and still use the old scripts tools. I strip out the LSI scsi support, because I don't know if there is any license problem, and I have referred to their documents and may need put their FW in the ROM. It's greater you add ops-enable function that make it easy to handle special device. To some device if it is not gotten magic code, it will not get the resource allocate to it. Before that I have to do it in init function and re-allocate the resource to it again. Please refer to my old amd8131_ioapic.c in southbridge/amd8111. Also you init the io_base, upper16 reg, otherwise the device in PCIX will not got io port allocated to them, and will not work. I have tested Stefan's the code about coherent_ht.c, and add some hardcode to it. coherent_ht.o.c is the original one. Coherent_ht.1.c is total hardcode one. coherent_ht.c and coherent_ht.2.c are modified with some hardcode ones. raminit.c and raminit.1.c are till the hardcode one, and I have tried to use the configurable one, but auto.c can not be compiled, it is too big and used up REG? The old one has been renamed to raminit.o.c. To start other cpus, in auto.c We must enable apic and make sure all apic_id is right. Please refer to mainboard/tyan/s2880/auto.c boot_cpu function. Again, thank you all to answer my questions to help Tyan s2880 work with LinuxBIOS. Regards Yinghai Lu change.diff.gz Description: Binary data
Re: K8 + 2.4.21 + Tyan S2880
YhLu [EMAIL PROTECTED] writes: Eric, My boss has said that I can release the source code to you. Please find out the patch I made. Make the diff to today's tree. I didn't test RON new script and still use the old scripts tools. I strip out the LSI scsi support, because I don't know if there is any license problem, and I have referred to their documents and may need put their FW in the ROM. It's greater you add ops-enable function that make it easy to handle special device. To some device if it is not gotten magic code, it will not get the resource allocate to it. Before that I have to do it in init function and re-allocate the resource to it again. Please refer to my old amd8131_ioapic.c in southbridge/amd8111. Also you init the io_base, upper16 reg, otherwise the device in PCIX will not got io port allocated to them, and will not work. I have tested Stefan's the code about coherent_ht.c, and add some hardcode to it. coherent_ht.o.c is the original one. Coherent_ht.1.c is total hardcode one. coherent_ht.c and coherent_ht.2.c are modified with some hardcode ones. raminit.c and raminit.1.c are till the hardcode one, and I have tried to use the configurable one, but auto.c can not be compiled, it is too big and used up REG? The old one has been renamed to raminit.o.c. To start other cpus, in auto.c We must enable apic and make sure all apic_id is right. Please refer to mainboard/tyan/s2880/auto.c boot_cpu function. Again, thank you all to answer my questions to help Tyan s2880 work with LinuxBIOS. Welcome. You have the most interesting time. Your stuff always seems to come in just as I am about to walk away for the day. I have just gotten SMP working in my tree and that is checked in. I did the fun thing and am using the apic timer as my timer. It has the nice property of working without calibration because it is based on the FSB clock, which on the Opteron is fixed at 200Mhz. And as a very cool thing I have that code compiling both ways. More later, Good Night. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios
Re: K8 + 2.4.21 + Tyan S2880
Eric, Thanks, I change 8k to 40k and it works. Because I put the elf in hda1. In the Config of Ehterboot, I have set BOOT_FIRST=BOOT_DISK and BOOT_SECOND=BOOT_NIC. In the fallback track, It works great and if HD is not there is will boot from Network. About the normal boot, it seems there some problems. After change the cmos.conf. boot_option=Normal boot_first=HDD boot_second=HDD boot_third=Network Then corresponding to BOOT_FIRST it says that Wrong index ??? When the HDD is present, it works as touch pci_ide (find one HD and print Wrong index)/ isa_ide/ pci_ide and load image from ide. And When the HDD is not present , it works as touch pci_ide/isa_ide/pci_nic and load image from ide. Is it because boot_first should be set Network fixedly? In the main.c of Etherboot, it only at state=3 and index=0 and type mismatched can print such Wrong index, It is a bug in Etherboot 5.1.8.? Regards Yinghai Lu -- : [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] : 2003714 18:21 : YhLu : ron minnich; [EMAIL PROTECTED] : Re: K8 + 2.4.21 + SuSE 64-bit mode + Arima HDAMA + 49LF040 + MTD YhLu [EMAIL PROTECTED] writes: Eric, I have tried to build the tg3--ide_disk.zelf and use it in fallback and normal but all failed. In fallback track: It said: Searching for image...abort In Normal track: It said: Wrong index I have use to cmos_util to change boot track and BOOT_FIRST=HDD and BOOT_SECOND=Network. Yes. It only pays attention to the variables in Normal mode. When building tg3--ide_disk.zelf, I used BOOT_FIRST=IDE and BOOT_SECOND=NIC. What kind of image in HDD that eltherboot wound want? An ELF image within 8K from the start of the DISK. Imperfect but it works. Eric ___ Linuxbios mailing list [EMAIL PROTECTED] http://www.clustermatic.org/mailman/listinfo/linuxbios