Hi, One of our customers uses INT 22h/AX=C to shut down UNDI interface. This interface is documented in http://www.syslinux.org/doc/comboot.txt. The excerpt is shown below: AX=000Ch [2.00] Perform final cleanup Input: AX 000Ch DX derivative-specific flags (0000h = clean up all) Output: None Apparently, device is not shut down based on the description of the problem. I am looking at int22() routine in comboot_call.c. I don't see it processes this request (AX=0xc) at all. Can someone help to clarify this? Thanks! Kevin
On 02/12/2014 05:37 PM, Kevin Tran wrote:> Hi, > One of our customers uses INT 22h/AX=C to shut down UNDI interface. This interface is documented in http://www.syslinux.org/doc/comboot.txt. The excerpt is shown below: > > AX=000Ch [2.00] Perform final cleanup > Input: AX 000Ch > DX derivative-specific flags (0000h = clean up all) > Output: None > > Apparently, device is not shut down based on the description of the problem. I am looking at int22() routine in comboot_call.c. I don't see it processes this request (AX=0xc) at all. > > Can someone help to clarify this?comboot_call.c is part of gPXE/iPXE, which only supports a subset of the COMBOOT API. However, even if you are running on top of PXELINUX proper, the INT 22h interface is obsoleted in Syslinux 5+. Its direct replacement is the syslinux_final_cleanup() C API call, but perhaps you could give some insight in what your customer needs to do so we can advice if there is a better solution? -hpa
Hi Peter, They use PXELINUX to download the OS deployment bootstrap. When this is completed, they want to shutdown the stack including the UNDI driver before jumping to the kernel. Thanks! Kevin On Feb 12, 2014, at 8:15 PM, "H. Peter Anvin" <hpa at zytor.com> wrote:> On 02/12/2014 05:37 PM, Kevin Tran wrote: > Hi, > One of our customers uses INT 22h/AX=C to shut down UNDI interface. This interface is documented in http://www.syslinux.org/doc/comboot.txt. The excerpt is shown below: > > AX=000Ch [2.00] Perform final cleanup > Input: AX 000Ch > DX derivative-specific flags (0000h = clean up all) > Output: None > > Apparently, device is not shut down based on the description of the problem. I am looking at int22() routine in comboot_call.c. I don't see it processes this request (AX=0xc) at all. > > Can someone help to clarify this?comboot_call.c is part of gPXE/iPXE, which only supports a subset of the COMBOOT API. However, even if you are running on top of PXELINUX proper, the INT 22h interface is obsoleted in Syslinux 5+. Its direct replacement is the syslinux_final_cleanup() C API call, but perhaps you could give some insight in what your customer needs to do so we can advice if there is a better solution? -hpa