Re: [coreboot] Building AMD Persimmon in MinGW
Hello Zheng, I have a working environment now by switching to CygWin. I did not have the regex issues there. Wim From: coreboot-boun...@coreboot.org [mailto:coreboot-boun...@coreboot.org] On Behalf Of Zheng Bao Sent: woensdag 8 mei 2013 3:46 To: coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW http://sourceforge.net/projects/gnuwin32/files/regex/2.7/ Here is the link for regex library. There are lib and dll in regex-2.7-bin.zip. Kconfig is a seperated tool. If we want to leverage the regex.c in Kconfig, we need to submit a patch. Zheng Date: Tue, 7 May 2013 15:30:02 +0200 From: wvervo...@eltan.com To: coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Hello, I noticed that KConfig includes the regex.c and .h files to solve this issue. I did the same for nvramtool.exe and now it seems to work. (At least I can build it and run it without errors). Regards, Wim From: coreboot-boun...@coreboot.org [mailto:coreboot-boun...@coreboot.org] On Behalf Of Wim Vervoorn Sent: dinsdag 7 mei 2013 13:09 To: Zheng Bao; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Hello Zheng, Any suggestions where I can find this? I haven't been able to locate it until now. Wim From: Zheng Bao [mailto:fishb...@hotmail.com] Sent: dinsdag 7 mei 2013 11:12 To: Wim Vervoorn; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW You need to find a regex2.dll. Just putting it in folder coreboot is OK. Zheng > Date: Tue, 7 May 2013 09:07:18 +0200 > From: wvervo...@eltan.com > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Hello, > > This is the fragment where it fails: > > It seems that the call to regcomp is causing the issue. > > I don't think this has anything to do with direct access to the > hardware. It seems to be some kind of pointer issue, the call seems to > access data it can't reach. > > > /*** > * > * compile_reg_expr > * > * Compile a regular expression. > > > / > void compile_reg_expr(int cflags, const char *expr, regex_t *reg) > { > static const size_t ERROR_BUF_SIZE = 256; > char error_msg[ERROR_BUF_SIZE]; > int result; > > -->>>> if ((result = regcomp(reg, expr, cflags)) != 0) { <<- > > regerror(result, reg, error_msg, ERROR_BUF_SIZE); > fprintf(stderr, "%s: %s\n", prog_name, error_msg); > exit(1); > } > > printf( "compile_reg_expr 3\n"); > > } > > > Regards, > > Wim > > -Original Message----- > From: coreboot-boun...@coreboot.org > [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi > Sent: dinsdag 7 mei 2013 8:51 > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Am 2013-05-07 01:56, schrieb Peter Stuge: > > Sounds right. Would be great to find out more details about why and > > how nvramtool is being used during the build! > During the handling of cmos.layout and cmos.settings (if present and > used). > > We don't need any special hardware access for that and should not use > any such code while building coreboot. > One place to look at is the win32mmap implementation, which _is_ used. > > > Patrick > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
http://sourceforge.net/projects/gnuwin32/files/regex/2.7/ Here is the link for regex library. There are lib and dll in regex-2.7-bin.zip. Kconfig is a seperated tool. If we want to leverage the regex.c in Kconfig, we need to submit a patch. Zheng Date: Tue, 7 May 2013 15:30:02 +0200 From: wvervo...@eltan.com To: coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Hello, I noticed that KConfig includes the regex.c and .h files to solve this issue. I did the same for nvramtool.exe and now it seems to work. (At least I can build it and run it without errors). Regards, Wim From: coreboot-boun...@coreboot.org [mailto:coreboot-boun...@coreboot.org] On Behalf Of Wim Vervoorn Sent: dinsdag 7 mei 2013 13:09 To: Zheng Bao; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Hello Zheng, Any suggestions where I can find this? I haven’t been able to locate it until now. Wim From: Zheng Bao [mailto:fishb...@hotmail.com] Sent: dinsdag 7 mei 2013 11:12 To: Wim Vervoorn; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW You need to find a regex2.dll. Just putting it in folder coreboot is OK. Zheng> Date: Tue, 7 May 2013 09:07:18 +0200 > From: wvervo...@eltan.com > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Hello, > > This is the fragment where it fails: > > It seems that the call to regcomp is causing the issue. > > I don't think this has anything to do with direct access to the > hardware. It seems to be some kind of pointer issue, the call seems to > access data it can't reach. > > > /*** > * > * compile_reg_expr > * > * Compile a regular expression. > > > / > void compile_reg_expr(int cflags, const char *expr, regex_t *reg) > { > static const size_t ERROR_BUF_SIZE = 256; > char error_msg[ERROR_BUF_SIZE]; > int result; > > -->>>> if ((result = regcomp(reg, expr, cflags)) != 0) { <<- > > regerror(result, reg, error_msg, ERROR_BUF_SIZE); > fprintf(stderr, "%s: %s\n", prog_name, error_msg); > exit(1); > } > > printf( "compile_reg_expr 3\n"); > > } > > > Regards, > > Wim > > -Original Message- > From: coreboot-boun...@coreboot.org > [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi > Sent: dinsdag 7 mei 2013 8:51 > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Am 2013-05-07 01:56, schrieb Peter Stuge: > > Sounds right. Would be great to find out more details about why and > > how nvramtool is being used during the build! > During the handling of cmos.layout and cmos.settings (if present and > used). > > We don't need any special hardware access for that and should not use > any such code while building coreboot. > One place to look at is the win32mmap implementation, which _is_ used. > > > Patrick > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
Hello, I noticed that KConfig includes the regex.c and .h files to solve this issue. I did the same for nvramtool.exe and now it seems to work. (At least I can build it and run it without errors). Regards, Wim From: coreboot-boun...@coreboot.org [mailto:coreboot-boun...@coreboot.org] On Behalf Of Wim Vervoorn Sent: dinsdag 7 mei 2013 13:09 To: Zheng Bao; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Hello Zheng, Any suggestions where I can find this? I haven't been able to locate it until now. Wim From: Zheng Bao [mailto:fishb...@hotmail.com] Sent: dinsdag 7 mei 2013 11:12 To: Wim Vervoorn; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW You need to find a regex2.dll. Just putting it in folder coreboot is OK. Zheng > Date: Tue, 7 May 2013 09:07:18 +0200 > From: wvervo...@eltan.com > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Hello, > > This is the fragment where it fails: > > It seems that the call to regcomp is causing the issue. > > I don't think this has anything to do with direct access to the > hardware. It seems to be some kind of pointer issue, the call seems to > access data it can't reach. > > > /*** > * > * compile_reg_expr > * > * Compile a regular expression. > > > / > void compile_reg_expr(int cflags, const char *expr, regex_t *reg) > { > static const size_t ERROR_BUF_SIZE = 256; > char error_msg[ERROR_BUF_SIZE]; > int result; > > -->>>> if ((result = regcomp(reg, expr, cflags)) != 0) { <<- > > regerror(result, reg, error_msg, ERROR_BUF_SIZE); > fprintf(stderr, "%s: %s\n", prog_name, error_msg); > exit(1); > } > > printf( "compile_reg_expr 3\n"); > > } > > > Regards, > > Wim > > -Original Message----- > From: coreboot-boun...@coreboot.org > [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi > Sent: dinsdag 7 mei 2013 8:51 > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Am 2013-05-07 01:56, schrieb Peter Stuge: > > Sounds right. Would be great to find out more details about why and > > how nvramtool is being used during the build! > During the handling of cmos.layout and cmos.settings (if present and > used). > > We don't need any special hardware access for that and should not use > any such code while building coreboot. > One place to look at is the win32mmap implementation, which _is_ used. > > > Patrick > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
Hello Zheng, Any suggestions where I can find this? I haven't been able to locate it until now. Wim From: Zheng Bao [mailto:fishb...@hotmail.com] Sent: dinsdag 7 mei 2013 11:12 To: Wim Vervoorn; coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW You need to find a regex2.dll. Just putting it in folder coreboot is OK. Zheng > Date: Tue, 7 May 2013 09:07:18 +0200 > From: wvervo...@eltan.com > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Hello, > > This is the fragment where it fails: > > It seems that the call to regcomp is causing the issue. > > I don't think this has anything to do with direct access to the > hardware. It seems to be some kind of pointer issue, the call seems to > access data it can't reach. > > > /*** > * > * compile_reg_expr > * > * Compile a regular expression. > > > / > void compile_reg_expr(int cflags, const char *expr, regex_t *reg) > { > static const size_t ERROR_BUF_SIZE = 256; > char error_msg[ERROR_BUF_SIZE]; > int result; > > -->>>> if ((result = regcomp(reg, expr, cflags)) != 0) { <<- > > regerror(result, reg, error_msg, ERROR_BUF_SIZE); > fprintf(stderr, "%s: %s\n", prog_name, error_msg); > exit(1); > } > > printf( "compile_reg_expr 3\n"); > > } > > > Regards, > > Wim > > -Original Message----- > From: coreboot-boun...@coreboot.org > [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi > Sent: dinsdag 7 mei 2013 8:51 > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Am 2013-05-07 01:56, schrieb Peter Stuge: > > Sounds right. Would be great to find out more details about why and > > how nvramtool is being used during the build! > During the handling of cmos.layout and cmos.settings (if present and > used). > > We don't need any special hardware access for that and should not use > any such code while building coreboot. > One place to look at is the win32mmap implementation, which _is_ used. > > > Patrick > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
You need to find a regex2.dll. Just putting it in folder coreboot is OK. Zheng > Date: Tue, 7 May 2013 09:07:18 +0200 > From: wvervo...@eltan.com > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Hello, > > This is the fragment where it fails: > > It seems that the call to regcomp is causing the issue. > > I don't think this has anything to do with direct access to the > hardware. It seems to be some kind of pointer issue, the call seems to > access data it can't reach. > > > /*** > * > * compile_reg_expr > * > * Compile a regular expression. > > > / > void compile_reg_expr(int cflags, const char *expr, regex_t *reg) > { > static const size_t ERROR_BUF_SIZE = 256; > char error_msg[ERROR_BUF_SIZE]; > int result; > > -->>>>if ((result = regcomp(reg, expr, cflags)) != 0) { <<- > > regerror(result, reg, error_msg, ERROR_BUF_SIZE); > fprintf(stderr, "%s: %s\n", prog_name, error_msg); > exit(1); > } > > printf( "compile_reg_expr 3\n"); > > } > > > Regards, > > Wim > > -Original Message- > From: coreboot-boun...@coreboot.org > [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi > Sent: dinsdag 7 mei 2013 8:51 > To: coreboot@coreboot.org > Subject: Re: [coreboot] Building AMD Persimmon in MinGW > > Am 2013-05-07 01:56, schrieb Peter Stuge: > > Sounds right. Would be great to find out more details about why and > > how nvramtool is being used during the build! > During the handling of cmos.layout and cmos.settings (if present and > used). > > We don't need any special hardware access for that and should not use > any such code while building coreboot. > One place to look at is the win32mmap implementation, which _is_ used. > > > Patrick > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
Hello, This is the fragment where it fails: It seems that the call to regcomp is causing the issue. I don't think this has anything to do with direct access to the hardware. It seems to be some kind of pointer issue, the call seems to access data it can't reach. /*** * * compile_reg_expr * * Compile a regular expression. / void compile_reg_expr(int cflags, const char *expr, regex_t *reg) { static const size_t ERROR_BUF_SIZE = 256; char error_msg[ERROR_BUF_SIZE]; int result; -->>>> if ((result = regcomp(reg, expr, cflags)) != 0) { <<- regerror(result, reg, error_msg, ERROR_BUF_SIZE); fprintf(stderr, "%s: %s\n", prog_name, error_msg); exit(1); } printf( "compile_reg_expr 3\n"); } Regards, Wim -Original Message- From: coreboot-boun...@coreboot.org [mailto:coreboot-boun...@coreboot.org] On Behalf Of Patrick Georgi Sent: dinsdag 7 mei 2013 8:51 To: coreboot@coreboot.org Subject: Re: [coreboot] Building AMD Persimmon in MinGW Am 2013-05-07 01:56, schrieb Peter Stuge: > Sounds right. Would be great to find out more details about why and > how nvramtool is being used during the build! During the handling of cmos.layout and cmos.settings (if present and used). We don't need any special hardware access for that and should not use any such code while building coreboot. One place to look at is the win32mmap implementation, which _is_ used. Patrick -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
Am 2013-05-07 01:56, schrieb Peter Stuge: Sounds right. Would be great to find out more details about why and how nvramtool is being used during the build! During the handling of cmos.layout and cmos.settings (if present and used). We don't need any special hardware access for that and should not use any such code while building coreboot. One place to look at is the win32mmap implementation, which _is_ used. Patrick -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
Scott Duplichan wrote: > why should the coreboot build process need to access the cmos of > the build machine? I assume the answer is that it does not, and > accessing the cmos of the build machine is an unintentional side > effect of the way nvramtool works. Sounds right. Would be great to find out more details about why and how nvramtool is being used during the build! //Peter -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
]2013/5/6 Wim Vervoorn : ]> Hello, ]> ]> ]> ]> I am trying to build CoreBoot from Windows using MingGW. ]> ]> ]> ]> After downloading the latest version of the complete package to enable ]> this it is possible to build this without problem. ]> ]> ]> ]> As this package contains an old version of the tree I updated this to ]> the latest one. After doing this it's not possible to build the ]> Persimmon tree any longer. ]> ]> ]> ]> In the latest CoreBoot version the Persimmon tree uses the ]> nvramtool.exe to generate "option_table.h". When this is started I get ]> a "nvramtool.exe has stopped working message" is anyone familiar with ]> that? Is there a solution for this so I can get the tree building with the latest version as well? ] ]My guess is that nvramtool won't work on any Windows build since Windows most likely blocks CMOS ](nvram) access. ]Most developers are using Linux; if you are in dire need of a persimmon coreboot.rom: please say so (I or ]someone else can send you one off-list). I looked at this problem a while back and found the same thing as you. Because Windows blocks direct hardware access attempts by applications, nvramtool fails. Routing I/O access through a driver was easy until Microsoft came up with their signed driver requirement. The question in my mind is why should the coreboot build process need to access the cmos of the build machine? I assume the answer is that it does not, and accessing the cmos of the build machine is an unintentional side effect of the way nvramtool works. Thanks, Scott ]> Best regards, ]> ]> Wim Vervoorn -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
Re: [coreboot] Building AMD Persimmon in MinGW
2013/5/6 Wim Vervoorn : > Hello, > > > > I am trying to build CoreBoot from Windows using MingGW. > > > > After downloading the latest version of the complete package to enable this > it is possible to build this without problem. > > > > As this package contains an old version of the tree I updated this to the > latest one. After doing this it’s not possible to build the Persimmon tree > any longer. > > > > In the latest CoreBoot version the Persimmon tree uses the nvramtool.exe to > generate “option_table.h”. When this is started I get a “nvramtool.exe has > stopped working message” is anyone familiar with that? Is there a solution > for this so I can get the tree building with the latest version as well? My guess is that nvramtool won't work on any Windows build since Windows most likely blocks CMOS (nvram) access. Most developers are using Linux; if you are in dire need of a persimmon coreboot.rom: please say so (I or someone else can send you one off-list). > > > > Best regards, > > Wim Vervoorn > > > > > > > -- > coreboot mailing list: coreboot@coreboot.org > http://www.coreboot.org/mailman/listinfo/coreboot -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot
[coreboot] Building AMD Persimmon in MinGW
Hello, I am trying to build CoreBoot from Windows using MingGW. After downloading the latest version of the complete package to enable this it is possible to build this without problem. As this package contains an old version of the tree I updated this to the latest one. After doing this it's not possible to build the Persimmon tree any longer. In the latest CoreBoot version the Persimmon tree uses the nvramtool.exe to generate "option_table.h". When this is started I get a "nvramtool.exe has stopped working message" is anyone familiar with that? Is there a solution for this so I can get the tree building with the latest version as well? Best regards, Wim Vervoorn -- coreboot mailing list: coreboot@coreboot.org http://www.coreboot.org/mailman/listinfo/coreboot