Update SeaBIOS to include PCI based option rom loading
[qemu.git] / Changelog
blob79cd934a44c82e52b516f4d8b6aa69c3f36dab76
1 version 0.12.0-rc2:
3   - v2: properly save kvm system time msr registers (Glauber Costa)
4   - convert more monitor commands to qmp (Luiz Capitulino)
5   - vnc: fix capslock tracking logic. (Gerd Hoffmann)
6   - QemuOpts: allow larger option values. (Gerd Hoffmann)
7   - scsi: fix drive hotplug. (Gerd Hoffmann)
8   - pci: don't hw_error() when no slot is available. (Gerd Hoffmann)
9   - pci: don't abort() when trying to hotplug with acpi off. (Gerd Hoffmann)
10   - allow default devices to be implemented in config file (Gerd Hoffman)
11   - vc: colorize chardev title line with blue background. (Gerd Hoffmann)
12   - chardev: make chardevs specified in config file work. (Gerd Hoffmann)
13   - qdev: also match bus name for global properties (Gerd Hoffmann)
14   - qdev: add command line option to set global defaults for properties. (Gerd Hoffmann)
15   - kvm: x86: Save/restore exception_index (Jan Kiszka)
16   - qdev: Replace device names containing whitespace (Markus Armbruster)
17   - fix rtc-td-hack on host without high-res timers (Gleb Natapov)
18   - virtio: verify features on load (Michael S. Tsirkin)
19   - vmware_vga: add rom file so that it boots. (Dave Airlie)
20   - Do not abort on qemu_malloc(0) in production builds (Anthony Liguori)
21   - Fix ARM userspace strex implementation. (Paul Brook)
22   - qemu: delete rule target on error (Michael S. Tsirkin)
23   - QMP: add human-readable description to error response (Markus Armbruster)
24   - convert more monitor commands to QError (Markus Armbruster)
25   - monitor: Fix double-prompt after "change vnc passwd BLA" (Markus Armbruster)
26   - monitor: do_cont(): Don't ask for passwords (Luiz Capitulino)
27   - monitor: Introduce 'block_passwd' command (Luiz Capitulino)
28   - pci: interrupt disable bit support (Michael S. Tsirkin)
29   - pci: interrupt status bit implementation (Michael S. Tsirkin)
30   - pci: prepare irq code for interrupt state (Michael S. Tsirkin)
31   - msix: function mask support (Michael S. Tsirkin)
32   - msix: macro rename for function mask support (Michael S. Tsirkin)
33   - cpuid: Fix multicore setup on Intel (Andre Przywara)
34   - kvm: x86: Fix initial kvm_has_msr_star (Jan Kiszka)
35   - Update OpenBIOS images to r640 (Aurelien Jarno)     
37 version 0.10.2:
39   - fix savevm/loadvm (Anthony Liguori)
40   - live migration: fix dirty tracking windows (Glauber Costa)
41   - live migration: improve error propogation (Glauber Costa)
42   - qcow2: fix image creation for > ~2TB images (Chris Wright)
43   - hotplug: fix error handling for if= parameter (Eduardo Habkost)
44   - qcow2: fix data corruption (Nolan Leake)
45   - virtio: fix guest oops with 2.6.25 kernels (Rusty Russell)
46   - SH4: add support for -kernel (Takashi Yoshii, Aurelien Jarno)
47   - hotplug: fix closing of char devices (Jan Kiszka)
48   - hotplug: remove incorrect check for device name (Eduardo Habkost)
49   - enable -k on win32 (Herve Poussineau)
50   - configure: use LANG=C for grep (Andreas Faerber)
51   - fix VGA regression (malc)
52         
53 version 0.10.1:
55   - virtio-net: check right return size on sg list (Alex Williamson)
56   - Make qemu_announce_self handle holes (live migration after hotplug)
57     (Marcelo Tosatti)
58   - Revert r6804-r6808 (qcow2 allocation info).  This series of changes added
59     a high cost to startup for large qcow2 images (Anthony Liguori)
60   - qemu-img: fix help message (Aurelien Jarno)
61   - Fix build for non-default installs of SDL (Anthony Liguori)
62   - Fix race condition in env->interrupt_request.  When using TCG and a dynticks
63     host timer, this condition could cause TCG to get stuck in an infinite
64     loop (Aurelien Jarno)
65   - Fix reading encrypted hard disk passwords during early startup (Jan Kiszka)
66   - Fix encrypted disk reporting in 'info block' (Jan Kiszka)
67   - Fix console size with tiny displays (MusicPal) (Jan Kiszka)
68   - Improve error handling in bdrv_open2 (Jan Kiszka)
69   - Avoid leaking data in mux'ed character devices (Jan Kiszka)
70   - Fix initial character device reset (no banner in monitor) (Jan Kiszka)
71   - Fix cpuid KVM crash on i386 host (Lubomir Rintel)
72   - Fix SLES10sp2 installation by adding ISTAT1 register to LSI SCSI emulation
73     (Ryan Harper)
75 version 0.10.0:
77   - TCG support (No longer requires GCC 3.x)
78   - Kernel Virtual Machine acceleration support
79   - BSD userspace emulation
80   - Bluetooth emulation and host passthrough support
81   - GDB XML register description support
82   - Intel e1000 emulation
83   - HPET emulation
84   - VirtIO paravirtual device support
85   - Marvell 88w8618 / MusicPal emulation
86   - Nokia N-series tablet emulation / OMAP2 processor emulation
87   - PCI hotplug support
88   - Live migration and new save/restore formats
89   - Curses display support
90   - qemu-nbd utility to mount supported block formats
91   - Altivec support in PPC emulation and new firmware (OpenBIOS)
92   - Multiple VNC clients are now supported
93   - TLS encryption is now supported in VNC
94   - MIPS Magnum R4000 machine (Hervé Poussineau)
95   - Braille support (Samuel Thibault)
96   - Freecom MusicPal system emulation (Jan Kiszka)
97   - OMAP242x and Nokia N800, N810 machines (Andrzej Zaborowski)
98   - EsounD audio driver (Frederick Reeve)
99   - Gravis Ultrasound GF1 sound card (Tibor "TS" Schütz)
100   - Many, many, bug fixes and new features
102 version 0.9.1:
104   - TFTP booting from host directory (Anthony Liguori, Erwan Velu)
105   - Tap device emulation for Solaris (Sittichai Palanisong)
106   - Monitor multiplexing to several I/O channels (Jason Wessel)
107   - ds1225y nvram support (Herve Poussineau)
108   - CPU model selection support (J. Mayer, Paul Brook, Herve Poussineau)
109   - Several Sparc fixes (Aurelien Jarno, Blue Swirl, Robert Reif)
110   - MIPS 64-bit FPU support (Thiemo Seufer)
111   - Xscale PDA emulation (Andrzej Zaborowski)
112   - ColdFire system emulation (Paul Brook)
113   - Improved SH4 support (Magnus Damm)
114   - MIPS64 support (Aurelien Jarno, Thiemo Seufer)
115   - Preliminary Alpha guest support (J. Mayer)
116   - Read-only support for Parallels disk images (Alex Beregszaszi)
117   - SVM (x86 virtualization) support (Alexander Graf)
118   - CRIS emulation (Edgar E. Iglesias)
119   - SPARC32PLUS execution support (Blue Swirl)
120   - MIPS mipssim pseudo machine (Thiemo Seufer)
121   - Strace for Linux userland emulation (Stuart Anderson, Thayne Harbaugh)
122   - OMAP310 MPU emulation plus Palm T|E machine (Andrzej Zaborowski)
123   - ARM v6, v7, NEON SIMD and SMP emulation (Paul Brook/CodeSourcery)
124   - Gumstix boards: connex and verdex emulation (Thorsten Zitterell)
125   - Intel mainstone II board emulation (Armin Kuster)
126   - VMware SVGA II graphics card support (Andrzej Zaborowski)
128 version 0.9.0:
130   - Support for relative paths in backing files for disk images
131   - Async file I/O API
132   - New qcow2 disk image format
133   - Support of multiple VM snapshots
134   - Linux: specific host CDROM and floppy support
135   - SMM support
136   - Moved PCI init, MP table init and ACPI table init to Bochs BIOS
137   - Support for MIPS32 Release 2 instruction set (Thiemo Seufer)
138   - MIPS Malta system emulation (Aurelien Jarno, Stefan Weil)
139   - Darwin userspace emulation (Pierre d'Herbemont)
140   - m68k user support (Paul Brook)
141   - several x86 and x86_64 emulation fixes
142   - Mouse relative offset VNC extension (Anthony Liguori)
143   - PXE boot support (Anthony Liguori)
144   - '-daemonize' option (Anthony Liguori)
146 version 0.8.2:
148   - ACPI support
149   - PC VGA BIOS fixes
150   - switch to OpenBios for SPARC targets (Blue Swirl)
151   - VNC server fixes
152   - MIPS FPU support (Marius Groeger)
153   - Solaris/SPARC host support (Juergen Keil)
154   - PPC breakpoints and single stepping (Jason Wessel)
155   - USB updates (Paul Brook)
156   - UDP/TCP/telnet character devices (Jason Wessel)
157   - Windows sparse file support (Frediano Ziglio)
158   - RTL8139 NIC TCP segmentation offloading (Igor Kovalenko)
159   - PCNET NIC support (Antony T Curtis)
160   - Support for variable frequency host CPUs
161   - Workaround for win32 SMP hosts
162   - Support for AMD Flash memories (Jocelyn Mayer)
163   - Audio capture to WAV files support (malc)
165 version 0.8.1:
167   - USB tablet support (Brad Campbell, Anthony Liguori)
168   - win32 host serial support (Kazu)
169   - PC speaker support (Joachim Henke)
170   - IDE LBA48 support (Jens Axboe)
171   - SSE3 support
172   - Solaris port (Juergen Keil)
173   - Preliminary SH4 target (Samuel Tardieu)
174   - VNC server (Anthony Liguori)
175   - slirp fixes (Ed Swierk et al.)
176   - USB fixes
177   - ARM Versatile Platform Baseboard emulation (Paul Brook)
179 version 0.8.0:
181   - ARM system emulation: Arm Integrator/CP board with an arm1026ej-s
182     cpu (Paul Brook)
183   - SMP support
184   - Mac OS X cocoa improvements (Mike Kronenberg)
185   - Mac OS X CoreAudio driver (Mike Kronenberg)
186   - DirectSound driver (malc)
187   - ALSA audio driver (malc)
188   - new audio options: '-soundhw' and '-audio-help' (malc)
189   - ES1370 PCI audio device (malc)
190   - Initial USB support
191   - Linux host serial port access
192   - Linux host low level parallel port access
193   - New network emulation code supporting VLANs.
194   - MIPS and MIPSel User Linux emulation
195   - MIPS fixes to boot Linux (Daniel Jacobowitz)
196   - NX bit support
197   - Initial SPARC SMP support (Blue Swirl)
198   - Major overhaul of the virtual FAT driver for read/write support
199     (Johannes Schindelin)
201 version 0.7.2:
203   - x86_64 fixes (Win2000 and Linux 2.6 boot in 32 bit)
204   - merge self modifying code handling in dirty ram page mecanism.
205   - MIPS fixes (Ralf Baechle)
206   - better user net performances
208 version 0.7.1:
210   - read-only Virtual FAT support (Johannes Schindelin)
211   - Windows 2000 install disk full hack (original idea from Vladimir
212     N. Oleynik)
213   - VMDK disk image creation (Filip Navara)
214   - SPARC64 progress (Blue Swirl)
215   - initial MIPS support (Jocelyn mayer)
216   - MIPS improvements (Ralf Baechle)
217   - 64 bit fixes in user networking (initial patch by Gwenole Beauchesne)
218   - IOAPIC support (Filip Navara)
220 version 0.7.0:
222   - better BIOS translation and HDD geometry auto-detection
223   - user mode networking bug fix
224   - undocumented FPU ops support
225   - Cirrus VGA: support for 1280x1024x[8,15,16] modes
226   - 'pidfile' option
227   - .dmg disk image format support (Johannes Schindelin)
228   - keymaps support (initial patch by Johannes Schindelin)
229   - big endian ARM support (Lennert Buytenhek)
230   - added generic 64 bit target support
231   - x86_64 target support
232   - initial APIC support
233   - MMX/SSE/SSE2/PNI support
234   - PC parallel port support (Mark Jonckheere)
235   - initial SPARC64 support (Blue Swirl)
236   - SPARC target boots Linux (Blue Swirl)
237   - armv5te user mode support (Paul Brook)
238   - ARM VFP support (Paul Brook)
239   - ARM "Angel" semihosting syscalls (Paul Brook)
240   - user mode gdb stub support (Paul Brook)
241   - Samba 3 support
242   - initial Cocoa support (Pierre d'Herbemont)
243   - generic FPU emulation code
244   - Virtual PC read-only disk image support (Alex Beregszaszi)
246 version 0.6.1:
248   - Mac OS X port (Pierre d'Herbemont)
249   - Virtual console support
250   - Better monitor line edition
251   - New block device layer
252   - New 'qcow' growable disk image support with AES encryption and
253     transparent decompression
254   - VMware 3 and 4 read-only disk image support (untested)
255   - Support for up to 4 serial ports
256   - TFTP server support (Magnus Damm)
257   - Port redirection support in user mode networking
258   - Support for not executable data sections
259   - Compressed loop disk image support (Johannes Schindelin)
260   - Level triggered IRQ fix (aka NE2000 PCI performance fix) (Steve
261     Wormley)
262   - Fixed Fedora Core 2 problems (now you can run qemu without any
263     LD_ASSUME_KERNEL tricks on FC2)
264   - DHCP fix for Windows (accept DHCPREQUEST alone)
265   - SPARC system emulation (Blue Swirl)
266   - Automatic Samba configuration for host file access from Windows.
267   - '-loadvm' and '-full-screen' options
268   - ne2000 savevm support (Johannes Schindelin)
269   - Ctrl-Alt is now the default grab key. Ctrl-Alt-[0-9] switches to
270     the virtual consoles.
271   - BIOS floppy fix for NT4 (Mike Nordell, Derek Fawcus, Volker Ruppert)
272   - Floppy fixes for NT4 and NT5 (Mike Nordell)
273   - NT4 IDE fixes (Ben Pfaf, Mike Nordell)
274   - SDL Audio support and SB16 fixes (malc)
275   - ENTER instruction bug fix (initial patch by Stefan Kisdaroczi)
276   - VGA font change fix
277   - VGA read-only CRTC register fix
279 version 0.6.0:
281   - minimalist FPU exception support (NetBSD FPU probe fix)
282   - cr0.ET fix (Win95 boot)
283   - *BSD port (Markus Niemisto)
284   - I/O access fix (signaled by Mark Jonckheere)
285   - IDE drives serial number fix (Mike Nordell)
286   - int13 CDROM BIOS fix (aka Solaris x86 install CD fix)
287   - int15, ah=86 BIOS fix (aka Solaris x86 hardware probe hang up fix)
288   - BSR/BSF "undefined behaviour" fix
289   - vmdk2raw: convert VMware disk images to raw images
290   - PCI support
291   - NE2K PCI support
292   - dummy VGA PCI support
293   - VGA font selection fix (Daniel Serpell)
294   - PIC reset fix (Hidemi KAWAI)
295   - PIC spurious irq support (aka Solaris install bug)
296   - added '-localtime' option
297   - Cirrus CL-GD54xx VGA support (initial patch by Makoto Suzuki (suzu))
298   - APM and system shutdown support
299   - Fixed system reset
300   - Support for other PC BIOSes
301   - Initial PowerMac hardware emulation
302   - PowerMac/PREP OpenFirmware compatible BIOS (Jocelyn Mayer)
303   - initial IDE BMDMA support (needed for Darwin x86)
304   - Set the default memory size for PC emulation to 128 MB
306 version 0.5.5:
308   - SDL full screen support (initial patch by malc)
309   - VGA support on PowerPC PREP
310   - VBE fixes (Matthew Mastracci)
311   - PIT fixes (aka Win98 hardware probe and "VGA slowness" bug)
312   - IDE master only fixes (aka Win98 CD-ROM probe bug)
313   - ARM load/store half word fix (Ulrich Hecht)
314   - FDC fixes for Win98
316 version 0.5.4:
318   - qemu-fast fixes
319   - BIOS area protection fix (aka EMM386.EXE fix) (Mike Nordell)
320   - keyboard/mouse fix (Mike Nordell)
321   - IDE fixes (Linux did not recognized slave drivers)
322   - VM86 EIP masking fix (aka NT5 install fix) (Mike Nordell)
323   - QEMU can now boot a PowerPC Linux kernel (Jocelyn Mayer)
324   - User mode network stack
325   - imul imm8 fix + 0x82 opcode support (Hidemi KAWAI)
326   - precise self modifying code (aka BeOS install bug)
328 version 0.5.3:
330   - added Bochs VESA VBE support
331   - VGA memory map mode 3 access fix (OS/2 install fix)
332   - IDE fixes (Jens Axboe)
333   - CPU interrupt fixes
334   - fixed various TLB invalidation cases (NT install)
335   - fixed cr0.WP semantics (XP install)
336   - direct chaining support for SPARC and PowerPC (faster)
337   - ARM NWFPE support (initial patch by Ulrich Hecht)
338   - added specific x86 to x86 translator (close to native performance
339     in qemu-i386 and qemu-fast)
340   - shm syscalls support (Paul McKerras)
341   - added accurate CR0.MP/ME/TS emulation
342   - fixed DMA memory write access (Win95 boot floppy fix)
343   - graphical x86 linux loader
344   - command line monitor
345   - generic removable device support
346   - support of CD-ROM change
347   - multiple network interface support
348   - initial x86-64 host support (Gwenole Beauchesne)
349   - lret to outer priviledge fix (OS/2 install fix)
350   - task switch fixes (SkyOS boot)
351   - VM save/restore commands
352   - new timer API
353   - more precise RTC emulation (periodic timers + time updates)
354   - Win32 port (initial patch by Kazu)
356 version 0.5.2:
358   - improved soft MMU speed (assembly functions and specializing)
359   - improved multitasking speed by avoiding flushing TBs when
360     switching tasks
361   - improved qemu-fast speed
362   - improved self modifying code handling (big performance gain in
363     softmmu mode).
364   - fixed IO checking
365   - fixed CD-ROM detection (win98 install CD)
366   - fixed addseg real mode bug (GRUB boot fix)
367   - added ROM memory support (win98 boot)
368   - fixed 'call Ev' in case of paging exception
369   - updated the script 'qemu-binfmt-conf.sh' to use QEMU automagically
370     when launching executables for the supported target CPUs.
371   - PowerPC system emulation update (Jocelyn Mayer)
372   - PC floppy emulation and DMA fixes (Jocelyn Mayer)
373   - polled mode for PIC (Jocelyn Mayer)
374   - fixed PTE dirty bit handling
375   - fixed xadd same reg bug
376   - fixed cmpxchg exception safeness
377   - access to virtual memory in gdb stub
378   - task gate and NT flag fixes
379   - eflags optimisation fix for string operations
381 version 0.5.1:
383   - float access fixes when using soft mmu
384   - PC emulation support on PowerPC
385   - A20 support
386   - IDE CD-ROM emulation
387   - ARM fixes (Ulrich Hecht)
388   - SB16 emulation (malc)
389   - IRET and INT fixes in VM86 mode with IOPL=3
390   - Port I/Os use TSS io map
391   - Full task switching/task gate support
392   - added verr, verw, arpl, fcmovxx
393   - PowerPC target support (Jocelyn Mayer)
394   - Major SPARC target fixes (dynamically linked programs begin to work)
396 version 0.5.0:
398   - full hardware level VGA emulation
399   - graphical display with SDL
400   - added PS/2 mouse and keyboard emulation
401   - popw (%esp) fix
402   - mov to/from segment data width fix
403   - added real mode support
404   - added Bochs BIOS and LGPL'ed VGA BIOS loader in qemu
405   - m68k host port (Richard Zidlicky)
406   - partial soft MMU support for memory mapped I/Os
407   - multi-target build
408   - fixed: no error code in hardware interrupts
409   - fixed: pop ss, mov ss, x and sti disable hardware irqs for the next insn
410   - correct single stepping thru string operations
411   - preliminary SPARC target support (Thomas M. Ogrisegg)
412   - tun-fd option (Rusty Russell)
413   - automatic IDE geometry detection
414   - renamed 'vl' to qemu[-fast] and user qemu to qemu-{cpu}.
415   - added man page
416   - added full soft mmu mode to launch unpatched OSes.
418 version 0.4.3:
420   - x86 exception fix in case of nop instruction.
421   - gcc 3.2.2 bug workaround (RedHat 9 fix)
422   - sparc and Alpha host fixes
423   - many ARM target fixes: 'ls' and 'bash' can be launched.
425 version 0.4.2:
427  - many exception handling fixes (can compile a Linux kernel inside vl)
428  - IDE emulation support
429  - initial GDB stub support
430  - deferred update support for disk images (Rusty Russell)
431  - accept User Mode Linux Copy On Write disk images
432  - SMP kernels can at least be booted
434 version 0.4.1:
436  - more accurate timer support in vl.
437  - more reliable NE2000 probe in vl.
438  - added 2.5.66 kernel in vl-test.
439  - added VLTMPDIR environment variable in vl.
441 version 0.4:
443  - initial support for ring 0 x86 processor emulation
444  - fixed signal handling for correct dosemu DPMI emulation
445  - fast x86 MMU emulation with mmap()
446  - fixed popl (%esp) case
447  - Linux kernel can be executed by QEMU with the 'vl' command.
449 version 0.3:
451  - initial support for ARM emulation
452  - added fnsave, frstor, fnstenv, fldenv FPU instructions
453  - added FPU register save in signal emulation
454  - initial ARM port
455  - Sparc and Alpha ports work on the regression test
456  - generic ioctl number conversion
457  - fixed ioctl type conversion
459 version 0.2:
461  - PowerPC disassembly and ELF symbols output (Rusty Russell)
462  - flock support (Rusty Russell)
463  - ugetrlimit support (Rusty Russell)
464  - fstat64 fix (Rusty Russell)
465  - initial Alpha port (Falk Hueffner)
466  - initial IA64 port (Matt Wilson)
467  - initial Sparc and Sparc64 port (David S. Miller)
468  - added HLT instruction
469  - LRET instruction fix.
470  - added GPF generation for I/Os.
471  - added INT3 and TF flag support.
472  - SHL instruction C flag fix.
473  - mmap emulation for host page size > 4KB
474  - self-modifying code support
475  - better VM86 support (dosemu works on non trivial programs)
476  - precise exception support (EIP is computed correctly in most cases)
477  - more precise LDT/GDT/IDT emulation
478  - faster segment load in vm86 mode
479  - direct chaining of basic blocks (faster emulation)
481 version 0.1.6:
483  - automatic library search system. QEMU can now work with unpatched
484    ELF dynamic loader and libc (Rusty Russell).
485  - ISO C warning fixes (Alistair Strachan)
486  - first self-virtualizable version (works only as long as the
487    translation cache is not flushed)
488  - RH9 fixes
490 version 0.1.5:
492  - ppc64 support + personality() patch (Rusty Russell)
493  - first Alpha CPU patches (Falk Hueffner)
494  - removed bfd.h dependancy
495  - fixed shrd, shld, idivl and divl on PowerPC.
496  - fixed buggy glibc PowerPC rint() function (test-i386 passes now on PowerPC).
498 version 0.1.4:
500  - more accurate VM86 emulation (can launch small DOS 16 bit
501    executables in wine).
502  - fixed push/pop fs/gs
503  - added iret instruction.
504  - added times() syscall and SIOCATMARK ioctl.
506 version 0.1.3:
508  - S390 support (Ulrich Weigand)
509  - glibc 2.3.x compile fix (Ulrich Weigand)
510  - socketcall endian fix (Ulrich Weigand)
511  - struct sockaddr endian fix (Ulrich Weigand)
512  - sendmsg/recvmsg endian fix (Ulrich Weigand)
513  - execve endian fix (Ulrich Weigand)
514  - fdset endian fix (Ulrich Weigand)
515  - partial setsockopt syscall support (Ulrich Weigand)
516  - more accurate pushf/popf emulation
517  - first partial vm86() syscall support (can be used with runcom example).
518  - added bound, cmpxchg8b, cpuid instructions
519  - added 16 bit addressing support/override for string operations
520  - poll() fix
522 version 0.1.2:
524  - compile fixes
525  - xlat instruction
526  - xchg instruction memory lock
527  - added simple vm86 example (not working with QEMU yet). The 54 byte
528    DOS executable 'pi_10.com' program was released by Bertram
529    Felgenhauer (more information at http://www.boo.net/~jasonp/pipage.html).
531 version 0.1.1:
533  - glibc 2.2 compilation fixes
534  - added -s and -L options
535  - binary distribution of x86 glibc and wine
536  - big endian fixes in ELF loader and getdents.
538 version 0.1:
540  - initial public release.