Update to this very old document
Signed-off-by: Stefan Reinauer <stepan@coresystems.de> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4155 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
df444bf68a
commit
ebf2589e3b
|
@ -1,6 +1,6 @@
|
||||||
%
|
%
|
||||||
% This document is released under the GPL
|
% This document is released under the GPL
|
||||||
% Initially written by Stefan Reinauer, <stepan@openbios.org>
|
% Initially written by Stefan Reinauer, <stepan@coresystems.de>
|
||||||
%
|
%
|
||||||
|
|
||||||
\documentclass[titlepage,12pt]{article}
|
\documentclass[titlepage,12pt]{article}
|
||||||
|
@ -18,10 +18,10 @@
|
||||||
colorlinks=false,
|
colorlinks=false,
|
||||||
% pdfpagemode=None, % PDF-Viewer starts without TOC
|
% pdfpagemode=None, % PDF-Viewer starts without TOC
|
||||||
% pdfstartview=FitH,
|
% pdfstartview=FitH,
|
||||||
pdftitle={LinuxBIOS on AMD64},
|
pdftitle={coreboot on AMD64},
|
||||||
pdfauthor={Stefan Reinauer},
|
pdfauthor={Stefan Reinauer},
|
||||||
pdfsubject={LinuxBIOS configuration and build process},
|
pdfsubject={coreboot configuration and build process},
|
||||||
pdfkeywords={LinuxBIOS, Opteron, AMD64, Athlon64, Build}
|
pdfkeywords={coreboot, Opteron, AMD64, configuration, Build}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,9 +30,9 @@
|
||||||
|
|
||||||
\setlength{\parindent}{0pt}
|
\setlength{\parindent}{0pt}
|
||||||
|
|
||||||
\title{LinuxBIOS on AMD64}
|
\title{coreboot on AMD64}
|
||||||
\author{Stefan Reinauer $<$stepan@openbios.org$>$}
|
\author{Stefan Reinauer $<$stepan@coresystems.de$>$}
|
||||||
\date{June 2nd, 2004}
|
\date{April 19th, 2009}
|
||||||
|
|
||||||
\begin{document}
|
\begin{document}
|
||||||
|
|
||||||
|
@ -50,12 +50,12 @@
|
||||||
|
|
||||||
\section{Abstract}
|
\section{Abstract}
|
||||||
|
|
||||||
This document targets porting LinuxBIOS to new mainboards and creating
|
This document targets porting coreboot to new mainboards and creating
|
||||||
custom firmware images using LinuxBIOS. It describes how to build
|
custom firmware images using coreboot. It describes how to build
|
||||||
LinuxBIOS images for the AMD64 platform, including hypertransport
|
coreboot images for the AMD64 platform, including hypertransport
|
||||||
configuration and pertinent utilities. If you are missing information or
|
configuration and pertinent utilities. If you are missing information or
|
||||||
find errors in the following descriptions, contact
|
find errors in the following descriptions, contact
|
||||||
\href{mailto:stepan@openbios.org}{\textit{Stefan Reinauer $<$stepan@openbios.org$>$}}
|
\href{mailto:stepan@coresystems.de}{\textit{Stefan Reinauer $<$stepan@coresystems.de$>$}}
|
||||||
|
|
||||||
|
|
||||||
%
|
%
|
||||||
|
@ -64,6 +64,7 @@ find errors in the following descriptions, contact
|
||||||
|
|
||||||
\section{Changes}
|
\section{Changes}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
\item 2009/04/19 replace LinuxBIOS with coreboot
|
||||||
\item 2004/06/02 url and language fixes from Ken Fuchs $<$kfuchs@winternet.com$>$
|
\item 2004/06/02 url and language fixes from Ken Fuchs $<$kfuchs@winternet.com$>$
|
||||||
\item 2004/02/10 acpi and option rom updates
|
\item 2004/02/10 acpi and option rom updates
|
||||||
\item 2003/11/18 initial release
|
\item 2003/11/18 initial release
|
||||||
|
@ -72,22 +73,22 @@ find errors in the following descriptions, contact
|
||||||
|
|
||||||
|
|
||||||
%
|
%
|
||||||
% 3 What is LinuxBIOS
|
% 3 What is coreboot
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{What is LinuxBIOS?}
|
\section{What is coreboot?}
|
||||||
|
|
||||||
LinuxBIOS aims to replace the normal BIOS found on PCs, Alphas, and
|
coreboot aims to replace the normal BIOS found on x86, AMD64, PPC,
|
||||||
other machines with a Linux kernel that can boot Linux from a cold
|
Alpha, and other machines with a Linux kernel that can boot Linux from a cold
|
||||||
start. The startup code of an average LinuxBIOS port is about 500 lines
|
start. The startup code of an average coreboot port is about 500 lines of
|
||||||
of assembly and 5000 lines of C. It executes 16 instructions to get into
|
assembly and 5000 lines of C. It executes 16 instructions to get into 32bit
|
||||||
32bit mode and then performs DRAM and other hardware initializations
|
protected mode and then performs DRAM and other hardware initializations
|
||||||
required before Linux can take over.
|
required before Linux can take over.
|
||||||
|
|
||||||
The projects primary motivation initially was maintenance of large
|
The projects primary motivation initially was maintenance of large
|
||||||
clusters. Not surprisingly interest and contributions have come from
|
clusters. Not surprisingly interest and contributions have come from
|
||||||
people with varying backgrounds. Nowadays a large and growing number of
|
people with varying backgrounds. Nowadays a large and growing number of
|
||||||
Systems can be booted with LinuxBIOS, including embedded systems,
|
Systems can be booted with coreboot, including embedded systems,
|
||||||
Desktop PCs and Servers.
|
Desktop PCs and Servers.
|
||||||
|
|
||||||
%
|
%
|
||||||
|
@ -95,7 +96,7 @@ Desktop PCs and Servers.
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{Build Requirements}
|
\section{Build Requirements}
|
||||||
To build LinuxBIOS for AMD64 from the sources you need a recent Linux
|
To build coreboot for AMD64 from the sources you need a recent Linux
|
||||||
system for x86 or AMD64. SUSE Linux 8.2 or 9.0 are known to work fine.
|
system for x86 or AMD64. SUSE Linux 8.2 or 9.0 are known to work fine.
|
||||||
The following toolchain is recommended:
|
The following toolchain is recommended:
|
||||||
|
|
||||||
|
@ -116,31 +117,23 @@ The following toolchain is recommended:
|
||||||
|
|
||||||
\section{Getting the Sources}
|
\section{Getting the Sources}
|
||||||
|
|
||||||
The latest LinuxBIOS sources are available via CVS. The CVS repository
|
The latest coreboot sources are available via subversion. The subversion
|
||||||
is maintained at SourceForge.net (the project name is \emph{FreeBIOS}).
|
repository is maintained at SourceForge.net (the project name is
|
||||||
First you should create a directory for your LinuxBIOS trees:
|
\emph{FreeBIOS}). First you should create a directory for your
|
||||||
|
coreboot trees:
|
||||||
|
|
||||||
{ \small
|
{ \small
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
$ mkdir linuxbios
|
$ mkdir coreboot
|
||||||
$ cd linuxbios
|
$ cd coreboot
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
}
|
}
|
||||||
|
|
||||||
You can get the entire source tree via CVS:
|
You can get the entire source tree via SVN:
|
||||||
|
|
||||||
{ \small
|
{ \small
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
$ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/freebios login
|
$ svn co svn://coreboot.org/repos/trunk/coreboot-v2
|
||||||
\end{verbatim}
|
|
||||||
}
|
|
||||||
|
|
||||||
Hit return when you are asked for a password. Then checkout (or update)
|
|
||||||
the freebios source tree as follows:
|
|
||||||
|
|
||||||
{ \small
|
|
||||||
\begin{verbatim}
|
|
||||||
$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/freebios co freebios2
|
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -148,76 +141,76 @@ Once the source tree is checked out, it can be updated with:
|
||||||
|
|
||||||
{ \small
|
{ \small
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
% cvs update -Pd
|
% svn update
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
}
|
}
|
||||||
|
|
||||||
Due to recent problems with SourceForge's CVS infrastructure we set up a
|
For the case your corporate firewall blocks port 3690 (subversion) we set up a
|
||||||
snapshot site that keeps hourly source trees of the last four days. It
|
snapshot site that keeps the last few hundred source code revisions. It
|
||||||
is available at \url{http://snapshots.linuxbios.org/}.
|
is available at \url{http://qa.coreboot.org/}.
|
||||||
Due to major structural enhancements to \hbox{LinuxBIOS}, AMD64 support
|
Due to major structural enhancements to \hbox{coreboot}, AMD64 support
|
||||||
is only available in the \texttt{freebios2} tree. This tree reflects (as
|
is only available in the \texttt{coreboot-v2} tree. This tree reflects (as
|
||||||
of November 2003) LinuxBIOS version 1.1.5 and will lead to LinuxBIOS 2.0
|
of November 2003) coreboot version 1.1.5 and will lead to coreboot 2.0
|
||||||
when finished. Most x86 hardware is currently only supported by the
|
when finished. Most x86 hardware is currently only supported by the
|
||||||
LinuxBIOS 1.0 tree.
|
coreboot 1.0 tree.
|
||||||
|
|
||||||
%
|
%
|
||||||
% 6 LinuxBIOS configuration overview
|
% 6 coreboot configuration overview
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{LinuxBIOS configuration overview}
|
\section{coreboot configuration overview}
|
||||||
To support a large variety of existing hardware LinuxBIOS allows for a
|
To support a large variety of existing hardware coreboot allows for a
|
||||||
lot of configuration options that can be tweaked in several ways:
|
lot of configuration options that can be tweaked in several ways:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item
|
\item
|
||||||
Firmware image specific configuration options can be set in the image
|
Firmware image specific configuration options can be set in the image
|
||||||
configuration file which is usually found in
|
configuration file which is usually found in
|
||||||
\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$/}. Such
|
\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$/}. Such
|
||||||
options are the default amount of output verbosity during bootup, image
|
options are the default amount of output verbosity during bootup, image
|
||||||
size, use of fallback mechanisms, firmware image size and payloads
|
size, use of fallback mechanisms, firmware image size and payloads
|
||||||
(Linux Kernel, Bootloader...) The default configuration file name is
|
(Linux Kernel, Bootloader...) The default configuration file name is
|
||||||
\texttt{Config.lb}, but LinuxBIOS allows multiple configurations to
|
\texttt{Config.lb}, but coreboot allows multiple configurations to
|
||||||
reside in that directory.
|
reside in that directory.
|
||||||
|
|
||||||
\item Mainboard specific configuration options can be set in the
|
\item Mainboard specific configuration options can be set in the
|
||||||
mainboard configuration file placed in
|
mainboard configuration file placed in
|
||||||
\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$}. The
|
\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$}. The
|
||||||
mainboard configuration file is always called \texttt{Config.lb}. It
|
mainboard configuration file is always called \texttt{Config.lb}. It
|
||||||
contains information on the onboard components of the mainboard like
|
contains information on the onboard components of the mainboard like
|
||||||
CPU type, northbridge, southbridge, hypertransport configuration and
|
CPU type, northbridge, southbridge, hypertransport configuration and
|
||||||
SuperIO configuration. This configuration file also allows to include
|
SuperIO configuration. This configuration file also allows to include
|
||||||
addon code to hook into the LinuxBIOS initialization mechanism at
|
addon code to hook into the coreboot initialization mechanism at
|
||||||
basically any point.
|
basically any point.
|
||||||
|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
This document describes different approaches of changing and configuring the
|
This document describes different approaches of changing and configuring the
|
||||||
LinuxBIOS source tree when building for AMD64.
|
coreboot source tree when building for AMD64.
|
||||||
|
|
||||||
%
|
%
|
||||||
% 7 Building LinuxBIOS
|
% 7 Building coreboot
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{Building LinuxBIOS}
|
\section{Building coreboot}
|
||||||
One of the design goals for building LinuxBIOS was to keep object files
|
One of the design goals for building coreboot was to keep object files
|
||||||
out of the source tree in a separate place. This is mandatory for
|
out of the source tree in a separate place. This is mandatory for
|
||||||
building parallel LinuxBIOS images for several distinct mainboards
|
building parallel coreboot images for several distinct mainboards
|
||||||
and/or platforms. Therefore building LinuxBIOS consists of two steps:
|
and/or platforms. Therefore building coreboot consists of two steps:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item
|
\item
|
||||||
creating a build tree which holds all files automatically created by the
|
creating a build tree which holds all files automatically created by the
|
||||||
configuration utility and the object files
|
configuration utility and the object files
|
||||||
\item
|
\item
|
||||||
compiling the LinuxBIOS code and creating a flashable firmware image.
|
compiling the coreboot code and creating a flashable firmware image.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
The first of these two steps is accomplished by the \texttt{buildtarget}
|
The first of these two steps is accomplished by the \texttt{buildtarget}
|
||||||
script found in \texttt{freebios2/targets/}. To build LinuxBIOS for
|
script found in \texttt{coreboot-v2/targets/}. To build coreboot for
|
||||||
instance for the AMD Solo Athlon64 mainboard enter:
|
instance for the AMD Solo Athlon64 mainboard enter:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
% cd freebios2/targets
|
% cd coreboot-v2/targets
|
||||||
% ./buildtarget amd/solo
|
% ./buildtarget amd/solo
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
|
@ -225,23 +218,23 @@ This will create a directory containing a Makefile and other software
|
||||||
components needed for this build. The directory name is defined in the
|
components needed for this build. The directory name is defined in the
|
||||||
firmware image specific configuration file. In the case of AMD's Solo
|
firmware image specific configuration file. In the case of AMD's Solo
|
||||||
mainboard the default directory resides in
|
mainboard the default directory resides in
|
||||||
\texttt{freebios2/targets/amd/solo/solo}. To build the LinuxBIOS image, do
|
\texttt{coreboot-v2/targets/amd/solo/solo}. To build the coreboot image, do
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
% cd amd/solo/solo
|
% cd amd/solo/solo
|
||||||
% make
|
% make
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
The LinuxBIOS image filename is specified in the firmware image specific
|
The coreboot image filename is specified in the firmware image specific
|
||||||
configuration file. The default filename for AMD's Solo mainboard is
|
configuration file. The default filename for AMD's Solo mainboard is
|
||||||
\texttt{solo.rom}.
|
\texttt{solo.rom}.
|
||||||
|
|
||||||
%
|
%
|
||||||
% 8 Programming LinuxBIOS to flash memory
|
% 8 Programming coreboot to flash memory
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{Programming LinuxBIOS to flash memory}
|
\section{Programming coreboot to flash memory}
|
||||||
The image resulting from a LinuxBIOS build can be directly programmed to
|
The image resulting from a coreboot build can be directly programmed to
|
||||||
a flash device, either using a hardware flash programmer or by using the
|
a flash device, either using a hardware flash programmer or by using the
|
||||||
Linux flash driver devbios or mtd. This document assumes that you use a
|
Linux flash driver devbios or mtd. This document assumes that you use a
|
||||||
hardware flash programmer. If you are interested in doing in-system
|
hardware flash programmer. If you are interested in doing in-system
|
||||||
|
@ -255,15 +248,15 @@ software flash programming, find detailed information:
|
||||||
\newpage
|
\newpage
|
||||||
|
|
||||||
%
|
%
|
||||||
% 9 LinuxBIOS configuration
|
% 9 coreboot configuration
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{LinuxBIOS configuration}
|
\section{coreboot configuration}
|
||||||
The following chapters will cope with configuring LinuxBIOS. All
|
The following chapters will cope with configuring coreboot. All
|
||||||
configuration files share some basic rules
|
configuration files share some basic rules
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item
|
\item
|
||||||
The default configuration file name in LinuxBIOS is \texttt{Config.lb}.
|
The default configuration file name in coreboot is \texttt{Config.lb}.
|
||||||
\item
|
\item
|
||||||
All variables used in a configuration file have to be declared in this
|
All variables used in a configuration file have to be declared in this
|
||||||
file with \texttt{uses VARNAME} before usage.
|
file with \texttt{uses VARNAME} before usage.
|
||||||
|
@ -271,8 +264,8 @@ file with \texttt{uses VARNAME} before usage.
|
||||||
Comments can be added on a new line by using the comment identifier
|
Comments can be added on a new line by using the comment identifier
|
||||||
\texttt{\#} at the beginning of the line.
|
\texttt{\#} at the beginning of the line.
|
||||||
\item
|
\item
|
||||||
LinuxBIOS distinguishes between statements and options. Statements cause
|
coreboot distinguishes between statements and options. Statements cause
|
||||||
the LinuxBIOS configuration mechanism to act, whereas options set
|
the coreboot configuration mechanism to act, whereas options set
|
||||||
variables that are used by the build scripts or source code.
|
variables that are used by the build scripts or source code.
|
||||||
\item
|
\item
|
||||||
Default configuration values can be set in the mainboard configuration
|
Default configuration values can be set in the mainboard configuration
|
||||||
|
@ -280,7 +273,7 @@ files (keyword default)
|
||||||
\item
|
\item
|
||||||
Option overrides to the default configuration can only be specified in
|
Option overrides to the default configuration can only be specified in
|
||||||
the build target configuration file
|
the build target configuration file
|
||||||
\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$/Config.lb}
|
\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$/Config.lb}
|
||||||
(keyword option)
|
(keyword option)
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
@ -297,8 +290,8 @@ used. Example:
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
\textbf{NOTE:} Only configuration variables known to the configuration
|
\textbf{NOTE:} Only configuration variables known to the configuration
|
||||||
system can be used in configuration files. LinuxBIOS checks
|
system can be used in configuration files. coreboot checks
|
||||||
\texttt{freebios2/src/config/Options.lb} to see whether a configuration
|
\texttt{coreboot-v2/src/config/Options.lb} to see whether a configuration
|
||||||
variable is known.
|
variable is known.
|
||||||
|
|
||||||
\item \begin{verbatim}default\end{verbatim}
|
\item \begin{verbatim}default\end{verbatim}
|
||||||
|
@ -338,7 +331,7 @@ quotation marks:
|
||||||
The \texttt{option} statement basically behaves identically to the
|
The \texttt{option} statement basically behaves identically to the
|
||||||
\texttt{default} statement. But unlike default it can only be used in
|
\texttt{default} statement. But unlike default it can only be used in
|
||||||
build target configuration files
|
build target configuration files
|
||||||
(\texttt{freebios2/targets/$<$vendor$>$/$<$mainboard$>$}). The option
|
(\texttt{coreboot-v2/targets/$<$vendor$>$/$<$mainboard$>$}). The option
|
||||||
statement allows either to set new options or to override default values
|
statement allows either to set new options or to override default values
|
||||||
set with the default statement in a mainboard configuration file.
|
set with the default statement in a mainboard configuration file.
|
||||||
Syntax and application are the same as with default.
|
Syntax and application are the same as with default.
|
||||||
|
@ -346,12 +339,12 @@ Syntax and application are the same as with default.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Firmware image specific configuration}
|
\subsection{Firmware image specific configuration}
|
||||||
LinuxBIOS allows to create different firmware images for the same
|
coreboot allows to create different firmware images for the same
|
||||||
hardware. Such images can differ in the amount of output they produce,
|
hardware. Such images can differ in the amount of output they produce,
|
||||||
the payload, the number of subimages they consist of etc.
|
the payload, the number of subimages they consist of etc.
|
||||||
|
|
||||||
The firmware image specific configuration file can be found in \\
|
The firmware image specific configuration file can be found in \\
|
||||||
\texttt{freebios2/targets/$<$vendor$>$/<mainboard$>$}.
|
\texttt{coreboot-v2/targets/$<$vendor$>$/<mainboard$>$}.
|
||||||
|
|
||||||
\subsubsection{Firmware image specific keywords}
|
\subsubsection{Firmware image specific keywords}
|
||||||
In addition to the above described keywords the following statements are
|
In addition to the above described keywords the following statements are
|
||||||
|
@ -361,13 +354,13 @@ available in firmware image specific configuration files:
|
||||||
\item \begin{verbatim}romimage\end{verbatim}
|
\item \begin{verbatim}romimage\end{verbatim}
|
||||||
|
|
||||||
The \texttt{romimage} definition describes a single rom build within the
|
The \texttt{romimage} definition describes a single rom build within the
|
||||||
final LinuxBIOS image. Normally there are two romimage definitions per
|
final coreboot image. Normally there are two romimage definitions per
|
||||||
LinuxBIOS build: \texttt{normal} and \texttt{fallback}.
|
coreboot build: \texttt{normal} and \texttt{fallback}.
|
||||||
|
|
||||||
Each \texttt{romimage} section needs to specify a mainboard directory and a
|
Each \texttt{romimage} section needs to specify a mainboard directory and a
|
||||||
payload. The mainboard directory contains the mainboard specific
|
payload. The mainboard directory contains the mainboard specific
|
||||||
configuration file and source code. It is specified relatively to
|
configuration file and source code. It is specified relatively to
|
||||||
\texttt{freebios2/src/mainboard}. The payload definition is an absolute
|
\texttt{coreboot-v2/src/mainboard}. The payload definition is an absolute
|
||||||
path to a static elf binary (i.e Linux kernel or etherboot)
|
path to a static elf binary (i.e Linux kernel or etherboot)
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -384,8 +377,8 @@ end
|
||||||
\item \begin{verbatim}buildrom\end{verbatim}
|
\item \begin{verbatim}buildrom\end{verbatim}
|
||||||
|
|
||||||
The \texttt{buildrom} statement is used to determine which of the
|
The \texttt{buildrom} statement is used to determine which of the
|
||||||
LinuxBIOS image builds (created using \texttt{romimage}) are packed
|
coreboot image builds (created using \texttt{romimage}) are packed
|
||||||
together to the final LinuxBIOS image. It also specifies the order of
|
together to the final coreboot image. It also specifies the order of
|
||||||
the images and the final image size:
|
the images and the final image size:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -407,7 +400,7 @@ option on how to set them.
|
||||||
\item \begin{verbatim}CC\end{verbatim}
|
\item \begin{verbatim}CC\end{verbatim}
|
||||||
|
|
||||||
Target C Compiler. Default is \texttt{\$(CROSS\_COMPILE)gcc}. Set to
|
Target C Compiler. Default is \texttt{\$(CROSS\_COMPILE)gcc}. Set to
|
||||||
\texttt{gcc -m32} for compiling AMD64 LinuxBIOS images on an AMD64
|
\texttt{gcc -m32} for compiling AMD64 coreboot images on an AMD64
|
||||||
machine.
|
machine.
|
||||||
|
|
||||||
\item \begin{verbatim}CONFIG_CHIP_CONFIGURE \end{verbatim}
|
\item \begin{verbatim}CONFIG_CHIP_CONFIGURE \end{verbatim}
|
||||||
|
@ -444,7 +437,7 @@ This does not include the fallback payload.
|
||||||
|
|
||||||
Export CMOS option table. Default is \texttt{0}. Set to \texttt{1} if
|
Export CMOS option table. Default is \texttt{0}. Set to \texttt{1} if
|
||||||
your mainboard has CMOS memory and you want to use it to store
|
your mainboard has CMOS memory and you want to use it to store
|
||||||
LinuxBIOS parameters (Loglevel, serial line speed, ...)
|
coreboot parameters (Loglevel, serial line speed, ...)
|
||||||
|
|
||||||
\item \begin{verbatim}CONFIG_ROM_PAYLOAD\end{verbatim}
|
\item \begin{verbatim}CONFIG_ROM_PAYLOAD\end{verbatim}
|
||||||
|
|
||||||
|
@ -473,8 +466,8 @@ Default image size. Defaults to \texttt{65535} bytes.
|
||||||
|
|
||||||
\item \begin{verbatim}COREBOOT_EXTRA_VERSION\end{verbatim}
|
\item \begin{verbatim}COREBOOT_EXTRA_VERSION\end{verbatim}
|
||||||
|
|
||||||
LinuxBIOS extra version. This option has an empty string as default. Set
|
coreboot extra version. This option has an empty string as default. Set
|
||||||
to any string to add an extra version string to your LinuxBIOS build.
|
to any string to add an extra version string to your coreboot build.
|
||||||
|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
@ -521,7 +514,7 @@ one-node system, write:
|
||||||
\item \begin{verbatim}driver\end{verbatim}
|
\item \begin{verbatim}driver\end{verbatim}
|
||||||
|
|
||||||
The \texttt{driver} keyword adds an object file to the driver section of a
|
The \texttt{driver} keyword adds an object file to the driver section of a
|
||||||
LinuxBIOS image. This means it can be used by the PCI device
|
coreboot image. This means it can be used by the PCI device
|
||||||
initialization code. Example:
|
initialization code. Example:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -530,7 +523,7 @@ initialization code. Example:
|
||||||
|
|
||||||
\item \begin{verbatim}object\end{verbatim}
|
\item \begin{verbatim}object\end{verbatim}
|
||||||
|
|
||||||
The \texttt{object} keyword adds an object file to the LinuxBIOS image.
|
The \texttt{object} keyword adds an object file to the coreboot image.
|
||||||
Per default the object file will be compiled from a \texttt{.c} file
|
Per default the object file will be compiled from a \texttt{.c} file
|
||||||
with the same name. Symbols defined in such an object file can be used
|
with the same name. Symbols defined in such an object file can be used
|
||||||
in other object files and drivers. Example:
|
in other object files and drivers. Example:
|
||||||
|
@ -543,7 +536,7 @@ in other object files and drivers. Example:
|
||||||
|
|
||||||
This keyword can be used to extend the existing file creation rules
|
This keyword can be used to extend the existing file creation rules
|
||||||
during the build process. This is useful if external utilities have to
|
during the build process. This is useful if external utilities have to
|
||||||
be used for the build. LinuxBIOS on AMD64 uses romcc for it's early
|
be used for the build. coreboot on AMD64 uses romcc for it's early
|
||||||
startup code placed in auto.c.
|
startup code placed in auto.c.
|
||||||
|
|
||||||
To tell the configuration mechanism how to build \texttt{romcc} files,
|
To tell the configuration mechanism how to build \texttt{romcc} files,
|
||||||
|
@ -569,7 +562,7 @@ are satisfied (using the \texttt{action} keyword).
|
||||||
\item \begin{verbatim}mainboardinit\end{verbatim}
|
\item \begin{verbatim}mainboardinit\end{verbatim}
|
||||||
|
|
||||||
With the mainboardinit keyword it's possible to include assembler code
|
With the mainboardinit keyword it's possible to include assembler code
|
||||||
directly into the LinuxBIOS image. This is used for early infrastructure
|
directly into the coreboot image. This is used for early infrastructure
|
||||||
initialization, i.e. to switch to protected mode. Example:
|
initialization, i.e. to switch to protected mode. Example:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -578,12 +571,12 @@ initialization, i.e. to switch to protected mode. Example:
|
||||||
|
|
||||||
\item \begin{verbatim}ldscript\end{verbatim}
|
\item \begin{verbatim}ldscript\end{verbatim}
|
||||||
|
|
||||||
The GNU linker ld is used to link object files together to a LinuxBIOS
|
The GNU linker ld is used to link object files together to a coreboot
|
||||||
ROM image.
|
ROM image.
|
||||||
|
|
||||||
Since it is a lot more comfortable and flexible to use the GNU linker
|
Since it is a lot more comfortable and flexible to use the GNU linker
|
||||||
with linker scripts (ldscripts) than to create complex command line
|
with linker scripts (ldscripts) than to create complex command line
|
||||||
calls, LinuxBIOS features including linker scripts to control image
|
calls, coreboot features including linker scripts to control image
|
||||||
creation. Example:
|
creation. Example:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -593,12 +586,12 @@ creation. Example:
|
||||||
|
|
||||||
\item \begin{verbatim}dir\end{verbatim}
|
\item \begin{verbatim}dir\end{verbatim}
|
||||||
|
|
||||||
LinuxBIOS reuses as much code between the different ports as possible.
|
coreboot reuses as much code between the different ports as possible.
|
||||||
To achieve this, commonly used code can be stored in a separate
|
To achieve this, commonly used code can be stored in a separate
|
||||||
directory. For a new mainboard, it is enough to know that the code in
|
directory. For a new mainboard, it is enough to know that the code in
|
||||||
that directory can be used as is.
|
that directory can be used as is.
|
||||||
|
|
||||||
LinuxBIOS will also read a \texttt{Config.lb} file stored in that
|
coreboot will also read a \texttt{Config.lb} file stored in that
|
||||||
directory. This happens with:
|
directory. This happens with:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -630,7 +623,7 @@ Example:
|
||||||
The \texttt{northbridge} keyword describes a system northbridge. Some
|
The \texttt{northbridge} keyword describes a system northbridge. Some
|
||||||
systems, like AMD64, can have more than one northbridge, i.e. one per
|
systems, like AMD64, can have more than one northbridge, i.e. one per
|
||||||
CPU node. Each northbridge is described by the path to the northbridge
|
CPU node. Each northbridge is described by the path to the northbridge
|
||||||
code in LinuxBIOS (relative to \texttt{freebios2/src/northbridge}), i.e.
|
code in coreboot (relative to \texttt{coreboot-v2/src/northbridge}), i.e.
|
||||||
\texttt{amd/amdk8} and a unique name (i.e \texttt{mc0}) \\
|
\texttt{amd/amdk8} and a unique name (i.e \texttt{mc0}) \\
|
||||||
Example:
|
Example:
|
||||||
|
|
||||||
|
@ -642,7 +635,7 @@ Example:
|
||||||
|
|
||||||
\item \begin{verbatim}southbridge\end{verbatim}
|
\item \begin{verbatim}southbridge\end{verbatim}
|
||||||
|
|
||||||
To simplify the handling of bus bridges in a LinuxBIOS system, all
|
To simplify the handling of bus bridges in a coreboot system, all
|
||||||
bridges available in a system that are not northbridges (i.e AGP, IO,
|
bridges available in a system that are not northbridges (i.e AGP, IO,
|
||||||
PCIX) are seen as southbridges.
|
PCIX) are seen as southbridges.
|
||||||
|
|
||||||
|
@ -672,7 +665,7 @@ The \texttt{pci} keyword can only occur within a \texttt{northbridge} or
|
||||||
that are provided by the bridge. Generally all bridge sections have a
|
that are provided by the bridge. Generally all bridge sections have a
|
||||||
couple of \texttt{pci} keywords.
|
couple of \texttt{pci} keywords.
|
||||||
|
|
||||||
The first occurrence of the \texttt{pci} keyword tells LinuxBIOS where
|
The first occurrence of the \texttt{pci} keyword tells coreboot where
|
||||||
the bridge devices start, relative to the PCI configuration space used
|
the bridge devices start, relative to the PCI configuration space used
|
||||||
by the bridge. The following occurences of the \texttt{pci} keyword
|
by the bridge. The following occurences of the \texttt{pci} keyword
|
||||||
describe the provided devices.
|
describe the provided devices.
|
||||||
|
@ -716,7 +709,7 @@ end
|
||||||
\item \begin{verbatim}superio\end{verbatim}
|
\item \begin{verbatim}superio\end{verbatim}
|
||||||
|
|
||||||
SuperIO devices are basically handled like brigdes. They are taking
|
SuperIO devices are basically handled like brigdes. They are taking
|
||||||
their driver code from \texttt{freebios2/src/superio/}. They don't
|
their driver code from \texttt{coreboot-v2/src/superio/}. They don't
|
||||||
provide a PCI compatible configuration interface, but instead are ISA
|
provide a PCI compatible configuration interface, but instead are ISA
|
||||||
PnP devices. Normally they are connected to a southbridge. If this is
|
PnP devices. Normally they are connected to a southbridge. If this is
|
||||||
the case, the \texttt{superio} section will be a subsection of the
|
the case, the \texttt{superio} section will be a subsection of the
|
||||||
|
@ -796,23 +789,23 @@ mandatory if you want to boot a 64bit Linux kernel on an AMD64 system.
|
||||||
|
|
||||||
\item \begin{verbatim}STACK_SIZE\end{verbatim}
|
\item \begin{verbatim}STACK_SIZE\end{verbatim}
|
||||||
|
|
||||||
LinuxBIOS stack size. The size of the function call stack defaults to
|
coreboot stack size. The size of the function call stack defaults to
|
||||||
\texttt{0x2000} (8k).
|
\texttt{0x2000} (8k).
|
||||||
|
|
||||||
\item \begin{verbatim}HEAP_SIZE\end{verbatim}
|
\item \begin{verbatim}HEAP_SIZE\end{verbatim}
|
||||||
|
|
||||||
LinuxBIOS heap size. The heap is used when LinuxBIOS allocates memory
|
coreboot heap size. The heap is used when coreboot allocates memory
|
||||||
with malloc(). The default heap size is \texttt{0x2000}, but AMD64 boards
|
with malloc(). The default heap size is \texttt{0x2000}, but AMD64 boards
|
||||||
generally set it to \texttt{0x4000} (16k)
|
generally set it to \texttt{0x4000} (16k)
|
||||||
|
|
||||||
\item \begin{verbatim}XIP_ROM_BASE\end{verbatim}
|
\item \begin{verbatim}XIP_ROM_BASE\end{verbatim}
|
||||||
|
|
||||||
Start address of area to cache during LinuxBIOS execution directly from
|
Start address of area to cache during coreboot execution directly from
|
||||||
ROM.
|
ROM.
|
||||||
|
|
||||||
\item \begin{verbatim}XIP_ROM_SIZE\end{verbatim}
|
\item \begin{verbatim}XIP_ROM_SIZE\end{verbatim}
|
||||||
|
|
||||||
Size of area to cache during LinuxBIOS execution directly from ROM
|
Size of area to cache during coreboot execution directly from ROM
|
||||||
|
|
||||||
\item \begin{verbatim}CONFIG_COMPRESS\end{verbatim}
|
\item \begin{verbatim}CONFIG_COMPRESS\end{verbatim}
|
||||||
|
|
||||||
|
@ -831,19 +824,19 @@ decompression is needed).
|
||||||
|
|
||||||
\section{Tweaking the source code}
|
\section{Tweaking the source code}
|
||||||
Besides configuring the existing code it is sometimes necessary or
|
Besides configuring the existing code it is sometimes necessary or
|
||||||
desirable to tweak certain parts of LinuxBIOS by direct changes to the
|
desirable to tweak certain parts of coreboot by direct changes to the
|
||||||
code. This chapter covers some possible enhancements and changes that
|
code. This chapter covers some possible enhancements and changes that
|
||||||
are needed when porting LinuxBIOS to a new mainboard or just come
|
are needed when porting coreboot to a new mainboard or just come
|
||||||
handy now and then.
|
handy now and then.
|
||||||
|
|
||||||
\subsection{Hypertransport configuration}
|
\subsection{Hypertransport configuration}
|
||||||
Before LinuxBIOS is able to activate all CPUs and detect bridges
|
Before coreboot is able to activate all CPUs and detect bridges
|
||||||
attached to these CPUs (and thus, see all devices attached to the
|
attached to these CPUs (and thus, see all devices attached to the
|
||||||
system) it has to initialize the coherent hypertransport devices.
|
system) it has to initialize the coherent hypertransport devices.
|
||||||
|
|
||||||
The current algorithms to do coherent hypertransport initialization are
|
The current algorithms to do coherent hypertransport initialization are
|
||||||
not fully, automatically evaluating the hypertransport chain graph.
|
not fully, automatically evaluating the hypertransport chain graph.
|
||||||
Therefore the code needs to be adapted when porting LinuxBIOS to a new
|
Therefore the code needs to be adapted when porting coreboot to a new
|
||||||
AMD64 mainboard. An example arrangement of hypertransport devices
|
AMD64 mainboard. An example arrangement of hypertransport devices
|
||||||
looks like this:
|
looks like this:
|
||||||
|
|
||||||
|
@ -867,7 +860,7 @@ two steps.
|
||||||
\item Setting outgoing connections
|
\item Setting outgoing connections
|
||||||
The algorithm needs to know which outgoing port of a CPU node is
|
The algorithm needs to know which outgoing port of a CPU node is
|
||||||
connected to the directly succeeding node. This is done in
|
connected to the directly succeeding node. This is done in
|
||||||
\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/auto.c}
|
\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/auto.c}
|
||||||
with a number of preprocessor defines (one define for two-node systems,
|
with a number of preprocessor defines (one define for two-node systems,
|
||||||
three defines for four-node systems).
|
three defines for four-node systems).
|
||||||
|
|
||||||
|
@ -895,7 +888,7 @@ These three message types are routed using different hypertransport
|
||||||
ports. The routing information is written to the AMD K8 routing table.
|
ports. The routing information is written to the AMD K8 routing table.
|
||||||
In an Nnode system this routing table consists of 3*N*N entries , one
|
In an Nnode system this routing table consists of 3*N*N entries , one
|
||||||
for each message type and for each possible CPU --> CPU communication. For
|
for each message type and for each possible CPU --> CPU communication. For
|
||||||
simplicity LinuxBIOS keeps the 3 routing entries for each CPU --> CPU
|
simplicity coreboot keeps the 3 routing entries for each CPU --> CPU
|
||||||
communication in one machine word. The routing table of each node looks
|
communication in one machine word. The routing table of each node looks
|
||||||
like this:
|
like this:
|
||||||
|
|
||||||
|
@ -996,7 +989,7 @@ static unsigned int generate_row
|
||||||
|
|
||||||
\subsection{DRAM configuration}
|
\subsection{DRAM configuration}
|
||||||
Setting up the RAM controller(s) is probably the most complex part of
|
Setting up the RAM controller(s) is probably the most complex part of
|
||||||
LinuxBIOS. Basically LinuxBIOS serially initializes all RAM controllers
|
coreboot. Basically coreboot serially initializes all RAM controllers
|
||||||
in the system, using SPDROM (serial presence detect) data to set
|
in the system, using SPDROM (serial presence detect) data to set
|
||||||
timings, size and other properties. The SPD data is usually read
|
timings, size and other properties. The SPD data is usually read
|
||||||
utilizing the I2C SMBUS interface of the southbridge.
|
utilizing the I2C SMBUS interface of the southbridge.
|
||||||
|
@ -1015,7 +1008,7 @@ struct mem_controller {
|
||||||
|
|
||||||
Available mainboard implementations and CPUs create the need to add
|
Available mainboard implementations and CPUs create the need to add
|
||||||
special setup code to RAM initialization in a number of places.
|
special setup code to RAM initialization in a number of places.
|
||||||
LinuxBIOS provides hooks to easily add code in these places without
|
coreboot provides hooks to easily add code in these places without
|
||||||
having to change the generic code. Whether these hooks have to be used
|
having to change the generic code. Whether these hooks have to be used
|
||||||
depends on the mainboard design. In many cases the functions executed
|
depends on the mainboard design. In many cases the functions executed
|
||||||
by the hooks just carry out trivial default settings or they are even
|
by the hooks just carry out trivial default settings or they are even
|
||||||
|
@ -1024,7 +1017,7 @@ empty.
|
||||||
Some mainboard/CPU combinations need to trigger an additional memory
|
Some mainboard/CPU combinations need to trigger an additional memory
|
||||||
controller reset before the memory can be initialized properly. This is,
|
controller reset before the memory can be initialized properly. This is,
|
||||||
for example, used to get memory working on preC stepping AMD64
|
for example, used to get memory working on preC stepping AMD64
|
||||||
processors. LinuxBIOS provides two hooks for triggering onboard memory
|
processors. coreboot provides two hooks for triggering onboard memory
|
||||||
reset logic:
|
reset logic:
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
@ -1046,10 +1039,10 @@ static inline void activate_spd_rom (const struct mem_controller *ctrl)
|
||||||
|
|
||||||
The way SMBUS hub information is coded into the \texttt{mem\_controller}
|
The way SMBUS hub information is coded into the \texttt{mem\_controller}
|
||||||
structure is mainboard implementation specific and not
|
structure is mainboard implementation specific and not
|
||||||
described here. See \texttt{freebios2/src/mainboard/amd/quartet/auto.c}
|
described here. See \texttt{coreboot-v2/src/mainboard/amd/quartet/auto.c}
|
||||||
for an example.
|
for an example.
|
||||||
|
|
||||||
LinuxBIOS folks have agreed on SPD data being the central information
|
coreboot folks have agreed on SPD data being the central information
|
||||||
source for RAM specific information. But not all mainboards/RAM
|
source for RAM specific information. But not all mainboards/RAM
|
||||||
modules feature a physical SPD ROM. To still allow an easy to use SPD
|
modules feature a physical SPD ROM. To still allow an easy to use SPD
|
||||||
driven setup, there is a hook that abstracts reading the SPD ROM
|
driven setup, there is a hook that abstracts reading the SPD ROM
|
||||||
|
@ -1086,9 +1079,9 @@ default HAVE_PIRQ_TABLE=1
|
||||||
default IRQ_SLOT_COUNT=7
|
default IRQ_SLOT_COUNT=7
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
This will make LinuxBIOS look for the file \\
|
This will make coreboot look for the file \\
|
||||||
\texttt{freebios2/src/mainboard/<vendor>/<mainboard>/irq\_tables.c} which
|
\texttt{coreboot-v2/src/mainboard/<vendor>/<mainboard>/irq\_tables.c} which
|
||||||
contains the source code definition of the IRQ table. LinuxBIOS corrects
|
contains the source code definition of the IRQ table. coreboot corrects
|
||||||
small inconsistencies in the IRQ table during startup (checksum and
|
small inconsistencies in the IRQ table during startup (checksum and
|
||||||
number of entries), but it is not yet writing IRQ tables in a completely
|
number of entries), but it is not yet writing IRQ tables in a completely
|
||||||
dynamic way.
|
dynamic way.
|
||||||
|
@ -1104,11 +1097,11 @@ controller instead (vendor id=\texttt{0x1022}, device id=\texttt{0x7443})
|
||||||
|
|
||||||
\subsection {MP Tables}
|
\subsection {MP Tables}
|
||||||
|
|
||||||
LinuxBIOS contains code to create MP tables conforming the
|
coreboot contains code to create MP tables conforming the
|
||||||
Multiprocessor Specification V1.4. To include an MP Table in a LinuxBIOS
|
Multiprocessor Specification V1.4. To include an MP Table in a coreboot
|
||||||
image, the following configuration variables have to be set (in the
|
image, the following configuration variables have to be set (in the
|
||||||
mainboard specific configuration file
|
mainboard specific configuration file
|
||||||
\texttt{freebios2/src/mainboard/<vendor><mainboard>/Config.lb}):
|
\texttt{coreboot-v2/src/mainboard/<vendor><mainboard>/Config.lb}):
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
default CONFIG_SMP=1
|
default CONFIG_SMP=1
|
||||||
|
@ -1116,8 +1109,8 @@ default CONFIG_MAX_CPUS=1 # 2,4,..
|
||||||
default HAVE_MP_TABLE=1
|
default HAVE_MP_TABLE=1
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
LinuxBIOS will then look for a function for setting up the MP table in
|
coreboot will then look for a function for setting up the MP table in
|
||||||
the file \texttt{freebios2/src/mainboard<vendor>/<mainboard>/mptable.c}:
|
the file \texttt{coreboot-v2/src/mainboard<vendor>/<mainboard>/mptable.c}:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
void *smp_write_config_table(void *v, unsigned long * processor_map)
|
void *smp_write_config_table(void *v, unsigned long * processor_map)
|
||||||
|
@ -1130,7 +1123,7 @@ revisions.
|
||||||
|
|
||||||
\subsection {ACPI Tables}
|
\subsection {ACPI Tables}
|
||||||
|
|
||||||
There is initial ACPI support in LinuxBIOS now. Currently the only gain with
|
There is initial ACPI support in coreboot now. Currently the only gain with
|
||||||
this is the ability to use HPET timers in Linux. To achieve this, there is a
|
this is the ability to use HPET timers in Linux. To achieve this, there is a
|
||||||
framework that can generate the following tables:
|
framework that can generate the following tables:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
@ -1140,7 +1133,7 @@ framework that can generate the following tables:
|
||||||
\item HPET
|
\item HPET
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
To enable ACPI in your LinuxBIOS build, add the following lines to your
|
To enable ACPI in your coreboot build, add the following lines to your
|
||||||
configuration files:
|
configuration files:
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
uses HAVE_ACPI_TABLES
|
uses HAVE_ACPI_TABLES
|
||||||
|
@ -1155,16 +1148,16 @@ It's likely that more ACPI support will follow, when there is need for certain
|
||||||
features.
|
features.
|
||||||
|
|
||||||
\subsection{POST}
|
\subsection{POST}
|
||||||
LinuxBIOS has three different methods of handling POST codes. They can
|
coreboot has three different methods of handling POST codes. They can
|
||||||
be triggered using configuration file options.
|
be triggered using configuration file options.
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item
|
\item
|
||||||
\emph{Ignore POST completely}. No early code debugging is possible with
|
\emph{Ignore POST completely}. No early code debugging is possible with
|
||||||
this setting. Set the configuration variable \texttt{NO\_POST} to
|
this setting. Set the configuration variable \texttt{NO\_POST} to
|
||||||
\texttt{1} to switch off all POST handling in LinuxBIOS.
|
\texttt{1} to switch off all POST handling in coreboot.
|
||||||
\item
|
\item
|
||||||
\emph{Normal IO port 80 POST}. This is the default behavior of
|
\emph{Normal IO port 80 POST}. This is the default behavior of
|
||||||
LinuxBIOS. No configuration variables have to be set. To be able to see
|
coreboot. No configuration variables have to be set. To be able to see
|
||||||
port 80 POST output, you need a POST expansion card for ISA or PCI. Port
|
port 80 POST output, you need a POST expansion card for ISA or PCI. Port
|
||||||
80 POST allows simple debugging without any other output method
|
80 POST allows simple debugging without any other output method
|
||||||
available (serial interface or VGA display)
|
available (serial interface or VGA display)
|
||||||
|
@ -1178,7 +1171,7 @@ configuration variable \texttt{CONFIG\_SERIAL\_POST} to the value 1.
|
||||||
|
|
||||||
|
|
||||||
\subsection{HDT Debugging}
|
\subsection{HDT Debugging}
|
||||||
If you are debugging your LinuxBIOS code with a Hardware Debug Tool
|
If you are debugging your coreboot code with a Hardware Debug Tool
|
||||||
(HDT), you can find the source code line for a given physical EIP
|
(HDT), you can find the source code line for a given physical EIP
|
||||||
address as follows: Look the address up in the file linuxbios.map. Then
|
address as follows: Look the address up in the file linuxbios.map. Then
|
||||||
search the label Lxx in the file auto.inc created by romcc. The original
|
search the label Lxx in the file auto.inc created by romcc. The original
|
||||||
|
@ -1186,7 +1179,7 @@ source code file and line number is mentioned in auto.inc.
|
||||||
|
|
||||||
|
|
||||||
\subsection{Device Drivers}
|
\subsection{Device Drivers}
|
||||||
With only a few data structures LinuxBIOS features a simple but flexible
|
With only a few data structures coreboot features a simple but flexible
|
||||||
device driver interface. This interface is not intended for autonomously
|
device driver interface. This interface is not intended for autonomously
|
||||||
driving the devices but to initialize all system components so that they
|
driving the devices but to initialize all system components so that they
|
||||||
can be used by the booted operating system.
|
can be used by the booted operating system.
|
||||||
|
@ -1220,9 +1213,9 @@ initialize and operate the device:
|
||||||
|
|
||||||
By separating the two structures above, M:N relations between compatible
|
By separating the two structures above, M:N relations between compatible
|
||||||
devices and drivers can be described. The driver source code containing
|
devices and drivers can be described. The driver source code containing
|
||||||
above data structures and code have to be added to a LinuxBIOS image
|
above data structures and code have to be added to a coreboot image
|
||||||
using the driver keyword in the mainboard specific configuration file \\
|
using the driver keyword in the mainboard specific configuration file \\
|
||||||
\texttt{freebios2/src/mainboard/<vendor>/<mainboard>/Config.lb}:
|
\texttt{coreboot-v2/src/mainboard/<vendor>/<mainboard>/Config.lb}:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
driver lsi_scsi.o
|
driver lsi_scsi.o
|
||||||
|
@ -1230,20 +1223,20 @@ using the driver keyword in the mainboard specific configuration file \\
|
||||||
|
|
||||||
\subsection{Bus Bridges}
|
\subsection{Bus Bridges}
|
||||||
|
|
||||||
Currently all bridges supported in the LinuxBIOS2 tree are transparent
|
Currently all bridges supported in the coreboot-v2 tree are transparent
|
||||||
bridges. This means, once the bridge is initialized, it's remote devices
|
bridges. This means, once the bridge is initialized, it's remote devices
|
||||||
are visible on one of the PCI buses without special probing. LinuxBIOS
|
are visible on one of the PCI buses without special probing. coreboot
|
||||||
supports also bridges that are nontransparent. The driver support code
|
supports also bridges that are nontransparent. The driver support code
|
||||||
can provide a \texttt{scan\_bus} function to scan devices behind the bridge.
|
can provide a \texttt{scan\_bus} function to scan devices behind the bridge.
|
||||||
|
|
||||||
\subsection{CPU Reset}
|
\subsection{CPU Reset}
|
||||||
When changing speed and width of hypertransport chain connections
|
When changing speed and width of hypertransport chain connections
|
||||||
LinuxBIOS has to either assert an LDTSTOP or a reset to make the changes
|
coreboot has to either assert an LDTSTOP or a reset to make the changes
|
||||||
become active. Additionally Linux can do a firmware reset, if LinuxBIOS
|
become active. Additionally Linux can do a firmware reset, if coreboot
|
||||||
provides the needed infrastructure. To use this capability, define the
|
provides the needed infrastructure. To use this capability, define the
|
||||||
option \texttt{HAVE\_HARD\_RESET} and add an object file specifying the
|
option \texttt{HAVE\_HARD\_RESET} and add an object file specifying the
|
||||||
reset code in your mainboard specific configuration file
|
reset code in your mainboard specific configuration file
|
||||||
\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/Config.lb}:
|
\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/Config.lb}:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
default HAVE_HARD_RESET=1
|
default HAVE_HARD_RESET=1
|
||||||
|
@ -1258,41 +1251,41 @@ of the system reset:
|
||||||
void hard_reset(void);
|
void hard_reset(void);
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
See \texttt{freebios2/src/mainboard/arima/hdama/reset.c} for an example
|
See \texttt{coreboot-v2/src/mainboard/arima/hdama/reset.c} for an example
|
||||||
implementation.
|
implementation.
|
||||||
|
|
||||||
\newpage
|
\newpage
|
||||||
|
|
||||||
%
|
%
|
||||||
% 11. LinuxBIOS Internals
|
% 11. coreboot Internals
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{LinuxBIOS Internals}
|
\section{coreboot Internals}
|
||||||
This chapter covers some of the internal structures and algorithms of
|
This chapter covers some of the internal structures and algorithms of
|
||||||
LinuxBIOS that have not been mentioned so far.
|
coreboot that have not been mentioned so far.
|
||||||
|
|
||||||
\subsection{Code Flow}
|
\subsection{Code Flow}
|
||||||
|
|
||||||
\begin{figure}[htb]
|
\begin{figure}[htb]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.7]{codeflow.pdf}
|
\includegraphics[scale=0.7]{codeflow.pdf}
|
||||||
\caption{LinuxBIOS rough Code Flow}
|
\caption{coreboot rough Code Flow}
|
||||||
\label{fix:codeflow}
|
\label{fix:codeflow}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
\newpage
|
\newpage
|
||||||
|
|
||||||
\subsection{Fallback mechanism}
|
\subsection{Fallback mechanism}
|
||||||
LinuxBIOS provides a mechanism to pack two different LinuxBIOS builds
|
coreboot provides a mechanism to pack two different coreboot builds
|
||||||
within one LinuxBIOS ROM image. Using the system CMOS memory LinuxBIOS
|
within one coreboot ROM image. Using the system CMOS memory coreboot
|
||||||
determines whether the last boot with a default image succeeded and
|
determines whether the last boot with a default image succeeded and
|
||||||
boots a failsafe image on failure. This allows insystem testing without
|
boots a failsafe image on failure. This allows insystem testing without
|
||||||
the risk to render the system unusable. See
|
the risk to render the system unusable. See
|
||||||
\texttt{freebios2/src/mainboard/arima/hdama/failover.c} for example
|
\texttt{coreboot-v2/src/mainboard/arima/hdama/failover.c} for example
|
||||||
code. The fallback mechanism can be used with the \texttt{cmos\_util}.
|
code. The fallback mechanism can be used with the \texttt{cmos\_util}.
|
||||||
|
|
||||||
\subsection{(Un) Supported Standards}
|
\subsection{(Un) Supported Standards}
|
||||||
LinuxBIOS supports the following standards
|
coreboot supports the following standards
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Multiprocessing Specification (MPSPEC) 1.4
|
\item Multiprocessing Specification (MPSPEC) 1.4
|
||||||
\item IRQ Tables (PIRQ)
|
\item IRQ Tables (PIRQ)
|
||||||
|
@ -1305,18 +1298,18 @@ probably not be supported in future revisions:
|
||||||
\item APM
|
\item APM
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{LinuxBIOS table}
|
\subsection{coreboot table}
|
||||||
LinuxBIOS stores information about the system in a data structure called
|
coreboot stores information about the system in a data structure called
|
||||||
the LinuxBIOS table. This table can be read under Linux using the tool
|
the coreboot table. This table can be read under Linux using the tool
|
||||||
lxbios from the Lawrence Livermore National Laboratory.
|
nvramtool from the Lawrence Livermore National Laboratory.
|
||||||
|
|
||||||
Get more information about lxbios and the utility itself at
|
Get more information about lxbios and the utility itself at
|
||||||
\url{http://www.llnl.gov/linux/lxbios/lxbios.html}
|
\url{http://www.llnl.gov/linux/lxbios/lxbios.html}
|
||||||
|
|
||||||
\subsection{ROMCC limitations}
|
\subsection{ROMCC limitations}
|
||||||
ROMCC, part of the LinuxBIOS project, is a C compiler that translates to
|
ROMCC, part of the coreboot project, is a C compiler that translates to
|
||||||
completely rommable code. This means the resulting code does not need
|
completely rommable code. This means the resulting code does not need
|
||||||
any memory to work. This is one of the major improvements in LinuxBIOS
|
any memory to work. This is one of the major improvements in coreboot
|
||||||
V2, since it allows almost all code to be written in C. DRAM
|
V2, since it allows almost all code to be written in C. DRAM
|
||||||
initialization can be factored and reused more easily among mainboards
|
initialization can be factored and reused more easily among mainboards
|
||||||
and platforms.
|
and platforms.
|
||||||
|
@ -1331,12 +1324,12 @@ time. If you run out of registers during compilation, try to refactor
|
||||||
your code.
|
your code.
|
||||||
|
|
||||||
\subsection{CMOS handling}
|
\subsection{CMOS handling}
|
||||||
LinuxBIOS can use the mainboard's CMOS memory to store information
|
coreboot can use the mainboard's CMOS memory to store information
|
||||||
defined in a data structure called the CMOS table . This information
|
defined in a data structure called the CMOS table . This information
|
||||||
contains serial line speed, fallback boot control, output verbosity,
|
contains serial line speed, fallback boot control, output verbosity,
|
||||||
default boot device, ECC control, and more. It can be easily enhanced by
|
default boot device, ECC control, and more. It can be easily enhanced by
|
||||||
enhancing the CMOS table. This table, if present, is found at
|
enhancing the CMOS table. This table, if present, is found at
|
||||||
\texttt{freebios2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/cmos.layout}.
|
\texttt{coreboot-v2/src/mainboard/$<$vendor$>$/$<$mainboard$>$/cmos.layout}.
|
||||||
It describes the available options, their possible values and their
|
It describes the available options, their possible values and their
|
||||||
position within the CMOS memory. The layout file looks as follows:
|
position within the CMOS memory. The layout file looks as follows:
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -1358,16 +1351,16 @@ position within the CMOS memory. The layout file looks as follows:
|
||||||
\end{verbatim}
|
\end{verbatim}
|
||||||
|
|
||||||
To change CMOS values from a running Linux system, use the
|
To change CMOS values from a running Linux system, use the
|
||||||
\texttt{cmos\_util}, provided by Linux Networks as part of the LinuxBIOS
|
\texttt{cmos\_util}, provided by Linux Networks as part of the coreboot
|
||||||
utilities suite. Get it at
|
utilities suite. Get it at
|
||||||
\textit{ftp://ftp.lnxi.com/pub/linuxbios/utilities/}
|
\textit{ftp://ftp.lnxi.com/pub/linuxbios/utilities/}
|
||||||
|
|
||||||
\subsection {Booting Payloads}
|
\subsection {Booting Payloads}
|
||||||
LinuxBIOS can load a payload binary from a Flash device or IDE. This
|
coreboot can load a payload binary from a Flash device or IDE. This
|
||||||
payload can be a boot loader, like FILO or Etherboot, a kernel image, or
|
payload can be a boot loader, like FILO or Etherboot, a kernel image, or
|
||||||
any other static ELF binary.
|
any other static ELF binary.
|
||||||
|
|
||||||
To create a Linux kernel image, that is bootable in LinuxBIOS, you have
|
To create a Linux kernel image, that is bootable in coreboot, you have
|
||||||
to use mkelfImage. The command line I used, looks like follows:
|
to use mkelfImage. The command line I used, looks like follows:
|
||||||
|
|
||||||
\begin{verbatim}
|
\begin{verbatim}
|
||||||
|
@ -1436,9 +1429,9 @@ controller firmware and similar. Without this initialization, an
|
||||||
operating system can not take advantage of the hardware, so there needs
|
operating system can not take advantage of the hardware, so there needs
|
||||||
to be a way to address this issue. There are several alternatives:
|
to be a way to address this issue. There are several alternatives:
|
||||||
|
|
||||||
\subsection{Native LinuxBIOS Support}
|
\subsection{Native coreboot Support}
|
||||||
|
|
||||||
For some devices (ie Trident Cyberblade 3d) there is native LinuxBIOS
|
For some devices (ie Trident Cyberblade 3d) there is native coreboot
|
||||||
support This means there is a small driver bound to the PCI id of the
|
support This means there is a small driver bound to the PCI id of the
|
||||||
device that is called after PCI device ressources are allotted.
|
device that is called after PCI device ressources are allotted.
|
||||||
|
|
||||||
|
@ -1458,7 +1451,7 @@ CONs:
|
||||||
|
|
||||||
\subsection{Using Native Linux Support}
|
\subsection{Using Native Linux Support}
|
||||||
|
|
||||||
A simple way of getting a whole lot of drivers available for LinuxBIOS
|
A simple way of getting a whole lot of drivers available for coreboot
|
||||||
is to reuse Linux drivers by putting a Linux kernel to flash. This
|
is to reuse Linux drivers by putting a Linux kernel to flash. This
|
||||||
works, because no drivers are needed to get the Linux kernel (as opposed
|
works, because no drivers are needed to get the Linux kernel (as opposed
|
||||||
to store the kernel on a harddisk connected to isa/scsi/raid storage)
|
to store the kernel on a harddisk connected to isa/scsi/raid storage)
|
||||||
|
@ -1510,7 +1503,7 @@ bytecode that runs with minimal footprint on all architectures that have
|
||||||
an Open Firmware implementation.
|
an Open Firmware implementation.
|
||||||
|
|
||||||
There is a free Open Firmware implementation available, called OpenBIOS,
|
There is a free Open Firmware implementation available, called OpenBIOS,
|
||||||
that runs on top of LinuxBIOS. See www.openbios.org
|
that runs on top of coreboot. See www.openbios.org
|
||||||
|
|
||||||
PROs:
|
PROs:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
|
@ -1529,7 +1522,7 @@ CONs:
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{Image types}
|
\section{Image types}
|
||||||
There used to be one image type for LinuxBIOS, as described above. Since this paper was written (2004) there have been many changes. First, the name
|
There used to be one image type for coreboot, as described above. Since this paper was written (2004) there have been many changes. First, the name
|
||||||
was changed to coreboot, for many reasons. Second, Ying-Hai Liu, then of AMD, now of Sun, added Cache As Ram support (CAR) for many AMD CPUs, which both simplified and complicated things. Simplification came with the removal of romcc; complication came with the addition of new ways to build.
|
was changed to coreboot, for many reasons. Second, Ying-Hai Liu, then of AMD, now of Sun, added Cache As Ram support (CAR) for many AMD CPUs, which both simplified and complicated things. Simplification came with the removal of romcc; complication came with the addition of new ways to build.
|
||||||
|
|
||||||
There are two big additions to the build process and, furthermore, more than two new CONFIG variables to control them.
|
There are two big additions to the build process and, furthermore, more than two new CONFIG variables to control them.
|
||||||
|
@ -1702,7 +1695,7 @@ No significant change from romcc code, except that the CAR code has to set up a
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item payload
|
\item payload
|
||||||
|
|
||||||
LinuxBIOS only cares about low level machine initialization, but also has
|
coreboot only cares about low level machine initialization, but also has
|
||||||
very simple mechanisms to boot a file either from FLASHROM or IDE. That
|
very simple mechanisms to boot a file either from FLASHROM or IDE. That
|
||||||
file, possibly a Linux Kernel, a boot loader or Etherboot, are called
|
file, possibly a Linux Kernel, a boot loader or Etherboot, are called
|
||||||
payload, since it is the first software executed that does not cope with
|
payload, since it is the first software executed that does not cope with
|
||||||
|
@ -1721,14 +1714,11 @@ ROMs they can be electronically erased and reprogrammed.
|
||||||
%
|
%
|
||||||
|
|
||||||
\section{Bibliography}
|
\section{Bibliography}
|
||||||
\subsection{Additional Papers on LinuxBIOS}
|
\subsection{Additional Papers on coreboot}
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item { \small
|
|
||||||
\textit{\url{http://www.linuxnetworx.com/products/linuxbios_white_paper.pdf}}
|
|
||||||
}
|
|
||||||
\item
|
\item
|
||||||
\textit{\url{http://www.linuxbios.org/papers/}}
|
\textit{\url{http://www.coreboot.org/Documentation}}
|
||||||
\item
|
\item
|
||||||
\textit{\url{http://www.lysator.liu.se/upplysning/fa/linuxbios.pdf}}
|
\textit{\url{http://www.lysator.liu.se/upplysning/fa/linuxbios.pdf}}
|
||||||
\item
|
\item
|
||||||
|
@ -1739,7 +1729,7 @@ ROMs they can be electronically erased and reprogrammed.
|
||||||
|
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Etherboot: \textit{\url{http://www.etherboot.org/}}
|
\item Etherboot: \textit{\url{http://www.etherboot.org/}}
|
||||||
\item Filo: \textit{\url{http://te.to/~ts1/filo/}}
|
\item Filo: \textit{\url{http://www.coreboot.org/FILO}}
|
||||||
\item OpenBIOS: \textit{\url{http://www.openbios.org/}}
|
\item OpenBIOS: \textit{\url{http://www.openbios.org/}}
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
|
|
|
@ -10,11 +10,11 @@ FIGS=codeflow.pdf hypertransport.pdf
|
||||||
all: LinuxBIOS-AMD64.pdf
|
all: LinuxBIOS-AMD64.pdf
|
||||||
|
|
||||||
|
|
||||||
codeflow.pdf: codeflow.eps
|
codeflow.pdf: codeflow.svg
|
||||||
epstopdf $< -o=$@
|
svg2pdf $< $@
|
||||||
|
|
||||||
hypertransport.pdf: hypertransport.eps
|
hypertransport.pdf: hypertransport.svg
|
||||||
epstopdf $< -o=$@
|
svg2pdf $< $@
|
||||||
|
|
||||||
LinuxBIOS-AMD64.toc: $(FIGS) LinuxBIOS-AMD64.tex
|
LinuxBIOS-AMD64.toc: $(FIGS) LinuxBIOS-AMD64.tex
|
||||||
# 2 times to make sure we have a current toc.
|
# 2 times to make sure we have a current toc.
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,234 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
width="256px" height="640px" viewBox="0 0 256 640" enable-background="new 0 0 256 640" xml:space="preserve">
|
||||||
|
<font horiz-adv-x="1000">
|
||||||
|
<font-face font-family="MyriadPro-Regular" units-per-em="1000" underline-position="-100" underline-thickness="50"/>
|
||||||
|
<missing-glyph horiz-adv-x="500" d="M0,0l500,0l0,700l-500,0M250,395l-170,255l340,0M280,350l170,255l0,-510M80,50l170,255l170,-255M50,605l170,-255l-170,-255z"/>
|
||||||
|
<glyph unicode="A" horiz-adv-x="612" d="M424,212l72,-212l93,0l-230,674l-104,0l-230,-674l90,0l70,212M203,280l66,195C283,516 293,558 303,597l2,0C315,558 325,518 340,474l67,-194z"/>
|
||||||
|
<glyph unicode="B" horiz-adv-x="542" d="M76,2C105,-2 151,-6 211,-6C321,-6 397,14 443,57C478,89 501,134 501,192C501,292 426,345 362,360l0,3C432,388 476,445 476,511C476,564 454,604 419,630C378,664 322,679 235,679C175,679 114,673 76,664M163,606C177,609 200,612 240,612C328,612 387,580 387,502C387,437 333,388 242,388l-79,0M163,323l72,0C330,323 409,284 409,193C409,95 326,62 236,62C205,62 181,63 163,66z"/>
|
||||||
|
<glyph unicode="C" horiz-adv-x="580" d="M529,91C494,74 440,63 386,63C223,63 128,168 128,334C128,511 233,612 391,612C447,612 494,600 526,584l22,71C525,667 471,685 388,685C179,685 36,543 36,331C36,109 178,-11 368,-11C450,-11 515,5 546,21z"/>
|
||||||
|
<glyph unicode="D" horiz-adv-x="666" d="M76,2C120,-3 171,-6 234,-6C365,-6 469,28 533,91C595,153 630,243 630,353C630,462 595,540 534,595C475,649 386,679 261,679C192,679 129,673 76,664M163,601C186,606 220,610 265,610C449,610 539,509 538,350C538,168 438,64 251,64C217,64 185,65 163,68z"/>
|
||||||
|
<glyph unicode="E" horiz-adv-x="492" d="M424,388l-261,0l0,213l277,0l0,73l-365,0l0,-674l380,0l0,73l-292,0l0,243l261,0z"/>
|
||||||
|
<glyph unicode="F" horiz-adv-x="487" d="M75,0l88,0l0,305l254,0l0,72l-254,0l0,224l275,0l0,73l-363,0z"/>
|
||||||
|
<glyph unicode="H" horiz-adv-x="652" d="M75,674l0,-674l88,0l0,316l326,0l0,-316l88,0l0,674l-88,0l0,-282l-326,0l0,282z"/>
|
||||||
|
<glyph unicode="I" horiz-adv-x="239" d="M75,674l0,-674l88,0l0,674z"/>
|
||||||
|
<glyph unicode="L" horiz-adv-x="472" d="M75,0l376,0l0,73l-288,0l0,601l-88,0z"/>
|
||||||
|
<glyph unicode="M" horiz-adv-x="804" d="M660,0l86,0l-42,674l-111,0l-120,-326C443,263 419,189 401,121l-2,0C381,191 359,265 331,348l-115,326l-111,0l-47,-674l83,0l18,289C165,391 170,503 172,587l2,0C193,507 219,421 251,325l110,-321l66,0l119,327C580,424 607,509 631,587l2,0C633,504 639,390 644,296z"/>
|
||||||
|
<glyph unicode="N" horiz-adv-x="658" d="M158,0l0,288C158,400 157,481 152,566l3,1C188,494 233,417 280,342l214,-342l88,0l0,674l-82,0l0,-282C500,287 502,205 510,115l-3,-1C476,183 436,254 387,333l-215,341l-96,0l0,-674z"/>
|
||||||
|
<glyph unicode="O" horiz-adv-x="689" d="M348,686C168,686 36,546 36,332C36,128 160,-11 339,-11C511,-11 652,113 652,344C652,545 533,686 348,686M345,615C490,615 560,475 560,340C560,187 482,60 344,60C206,60 128,189 128,334C128,481 200,615 345,615z"/>
|
||||||
|
<glyph unicode="P" horiz-adv-x="532" d="M76,0l87,0l0,270C183,265 207,264 233,264C318,264 392,289 439,338C473,373 491,421 491,482C491,542 468,591 432,623C392,659 329,679 243,679C173,679 118,673 76,666M163,603C178,607 207,610 245,610C340,610 404,567 404,477C404,386 340,334 235,334C206,334 182,336 163,341z"/>
|
||||||
|
<glyph unicode="Q" horiz-adv-x="689" d="M657,-26C600,-16 527,0 460,17l0,4C572,61 652,171 652,345C652,544 533,686 349,686C167,686 36,547 36,331C36,113 172,-5 333,-11C346,-11 359,-16 374,-21C452,-48 541,-75 632,-99M344,60C206,60 128,189 128,333C128,479 200,615 347,615C490,615 560,476 560,340C560,187 482,60 344,60z"/>
|
||||||
|
<glyph unicode="R" horiz-adv-x="538" d="M76,0l87,0l0,292l82,0C324,289 361,254 381,161C399,77 414,20 425,0l90,0C501,26 485,91 463,185C447,255 416,303 365,321l0,3C435,348 491,407 491,495C491,548 471,594 438,624C397,661 336,679 243,679C184,679 120,673 76,665M163,604C178,608 207,611 249,611C341,611 404,573 404,486C404,409 345,358 252,358l-89,0z"/>
|
||||||
|
<glyph unicode="S" horiz-adv-x="493" d="M42,33C78,9 149,-11 214,-11C373,-11 449,80 449,184C449,283 392,338 278,382C185,418 144,449 144,512C144,558 179,613 271,613C332,613 377,594 398,581l24,71C393,669 342,685 274,685C143,685 56,607 56,502C56,408 124,350 234,310C325,276 361,239 361,177C361,109 309,62 220,62C160,62 104,81 65,106z"/>
|
||||||
|
<glyph unicode="T" horiz-adv-x="497" d="M204,0l88,0l0,600l206,0l0,74l-499,0l0,-74l205,0z"/>
|
||||||
|
<glyph unicode="U" horiz-adv-x="647" d="M75,674l0,-397C75,67 179,-11 317,-11C463,-11 572,73 572,280l0,394l-88,0l0,-400C484,126 419,60 320,60C230,60 163,124 163,274l0,400z"/>
|
||||||
|
<glyph unicode="a" horiz-adv-x="482" d="M413,297C413,393 377,494 229,494C168,494 109,477 69,452l20,-59C123,416 170,429 216,429C315,430 326,357 326,318l0,-10C139,309 35,245 35,128C35,58 85,-11 183,-11C252,-11 304,23 331,61l3,0l7,-61l79,0C415,33 413,74 413,116M328,163C328,155 327,145 324,135C310,94 269,54 205,54C161,54 123,80 123,138C123,232 232,249 328,247z"/>
|
||||||
|
<glyph unicode="b" horiz-adv-x="569" d="M73,125C73,82 71,33 69,0l75,0l5,79l2,0C188,16 244,-11 314,-11C422,-11 532,75 532,248C532,394 448,494 327,494C249,494 193,460 162,406l-2,0l0,304l-87,0M160,280C160,294 162,306 165,317C183,383 239,425 298,425C393,425 443,342 443,245C443,134 389,59 296,59C232,59 180,101 164,162C161,172 160,183 160,194z"/>
|
||||||
|
<glyph unicode="c" horiz-adv-x="448" d="M403,83C378,72 345,60 295,60C199,60 127,129 127,241C127,341 187,424 298,424C346,424 379,412 400,401l20,67C396,481 350,494 298,494C140,494 38,385 38,236C38,88 133,-11 279,-11C344,-11 395,6 418,17z"/>
|
||||||
|
<glyph unicode="," horiz-adv-x="207" d="M78,-117C106,-70 150,41 174,126l-98,-10C65,43 38,-64 16,-124z"/>
|
||||||
|
<glyph unicode="d" horiz-adv-x="564" d="M403,710l0,-289l-2,0C379,459 330,494 255,494C138,494 37,396 38,235C38,88 129,-11 246,-11C325,-11 383,30 409,84l3,0l4,-84l78,0C492,33 490,82 490,125l0,585M403,203C403,189 402,177 399,165C383,100 329,60 270,60C176,60 127,141 127,239C127,345 181,425 272,425C338,425 386,379 399,324C402,313 403,298 403,287z"/>
|
||||||
|
<glyph unicode="e" horiz-adv-x="501" d="M462,226C464,236 465,249 465,267C465,356 424,494 265,494C124,494 38,380 38,234C38,88 127,-11 276,-11C353,-11 407,6 438,20l-16,63C390,69 351,58 288,58C199,58 124,107 122,226M123,289C130,350 168,431 258,431C357,431 381,344 380,289z"/>
|
||||||
|
<glyph unicode="h" horiz-adv-x="555" d="M73,0l88,0l0,292C161,308 162,321 167,334C184,381 228,421 285,421C368,421 397,356 397,278l0,-278l88,0l0,288C485,454 381,494 316,494C283,494 252,485 226,470C199,455 177,432 163,407l-2,0l0,303l-88,0z"/>
|
||||||
|
<glyph unicode="-" horiz-adv-x="307" d="M30,302l0,-64l247,0l0,64z"/>
|
||||||
|
<glyph unicode="i" horiz-adv-x="234" d="M161,0l0,484l-88,0l0,-484M117,675C84,675 62,650 62,620C62,590 83,566 115,566C150,566 171,590 171,620C171,651 149,675 117,675z"/>
|
||||||
|
<glyph unicode="k" horiz-adv-x="469" d="M160,710l-87,0l0,-710l87,0l0,182l45,50l166,-232l108,0l-213,285l186,199l-105,0l-143,-167C190,300 174,279 162,262l-2,0z"/>
|
||||||
|
<glyph unicode="l" horiz-adv-x="236" d="M73,0l88,0l0,710l-88,0z"/>
|
||||||
|
<glyph unicode="m" horiz-adv-x="834" d="M73,0l86,0l0,291C159,306 161,322 166,334C180,378 221,422 275,422C342,422 376,367 376,290l0,-290l86,0l0,299C462,315 465,330 469,343C485,385 523,422 574,422C644,422 679,367 679,273l0,-273l86,0l0,284C765,452 670,494 605,494C559,494 528,482 499,460C479,445 459,425 444,397l-2,0C421,454 371,494 306,494C225,494 180,451 153,405l-3,0l-4,79l-77,0C71,444 73,404 73,353z"/>
|
||||||
|
<glyph unicode="n" horiz-adv-x="555" d="M73,0l88,0l0,291C161,306 163,321 167,332C183,381 228,422 285,422C368,422 397,357 397,279l0,-279l88,0l0,288C485,454 381,494 314,494C234,494 178,449 154,404l-2,0l-5,80l-78,0C72,444 73,404 73,353z"/>
|
||||||
|
<glyph unicode="o" horiz-adv-x="549" d="M278,494C145,494 38,399 38,238C38,85 140,-11 270,-11C386,-11 511,67 511,246C511,393 417,494 278,494M276,428C380,428 421,325 421,243C421,134 358,55 274,55C188,55 128,135 128,241C128,332 173,428 276,428z"/>
|
||||||
|
<glyph unicode="p" horiz-adv-x="569" d="M73,-198l87,0l0,263l2,0C191,17 247,-11 311,-11C425,-11 532,75 532,249C532,395 444,494 326,494C247,494 189,460 154,401l-2,0l-5,83l-78,0C71,438 73,388 73,326M160,281C160,292 163,305 166,316C182,382 239,424 299,424C392,424 443,341 443,245C443,134 389,58 296,58C233,58 180,100 164,161C161,172 160,184 160,197z"/>
|
||||||
|
<glyph unicode="(" horiz-adv-x="284" d="M195,694C132,610 65,481 64,285C64,90 132,-38 195,-121l68,0C193,-21 138,106 138,284C138,466 190,595 263,694z"/>
|
||||||
|
<glyph unicode=")" horiz-adv-x="284" d="M88,-121C151,-37 218,91 219,287C219,483 151,612 88,694l-68,0C91,594 145,467 145,287C145,107 90,-22 20,-121z"/>
|
||||||
|
<glyph unicode="." horiz-adv-x="207" d="M110,-11C147,-11 171,16 171,52C171,89 147,115 112,115C77,115 52,88 52,52C52,16 76,-11 110,-11z"/>
|
||||||
|
<glyph unicode="?" horiz-adv-x="406" d="M220,192l-2,25C215,268 231,313 275,365C323,422 361,471 361,539C361,615 309,686 194,686C141,686 85,670 51,646l24,-63C100,602 140,614 176,614C239,613 271,579 271,528C271,483 246,444 201,391C151,331 133,271 139,218l2,-26M178,-11C215,-11 238,16 238,51C238,88 215,114 179,114C145,114 120,88 120,51C120,16 144,-11 178,-11z"/>
|
||||||
|
<glyph unicode="r" horiz-adv-x="327" d="M73,0l88,0l0,258C161,272 162,287 164,299C176,365 220,411 282,411C294,411 303,411 312,409l0,83C304,493 297,494 288,494C229,494 175,453 153,388l-3,0l-4,96l-77,0C72,439 73,390 73,333z"/>
|
||||||
|
<glyph unicode="s" horiz-adv-x="396" d="M40,23C74,3 123,-11 176,-11C289,-11 356,49 356,135C356,207 312,249 229,280C166,305 138,323 138,363C138,399 166,429 218,429C263,429 298,412 317,400l21,64C312,481 269,494 220,494C117,494 53,430 53,352C53,294 94,247 182,215C246,191 271,169 271,127C271,86 241,55 178,55C134,55 88,73 61,89z"/>
|
||||||
|
<glyph unicode="/" horiz-adv-x="343" d="M66,-39l280,725l-69,0l-278,-725z"/>
|
||||||
|
<glyph unicode=" " horiz-adv-x="212"/>
|
||||||
|
<glyph unicode="t" horiz-adv-x="331" d="M93,574l0,-90l-75,0l0,-67l75,0l0,-264C93,96 103,53 127,26C148,3 181,-11 222,-11C256,-11 283,-5 300,1l-4,67C283,64 269,62 245,62C196,62 179,96 179,156l0,261l126,0l0,67l-126,0l0,116z"/>
|
||||||
|
<glyph unicode="2" horiz-adv-x="513" d="M460,0l0,73l-291,0l0,2l51,48C357,255 444,352 444,472C444,565 385,661 245,661C171,661 106,632 62,595l28,-62C120,558 169,588 228,588C325,588 356,527 356,461C356,363 280,279 114,121l-69,-67l0,-54z"/>
|
||||||
|
<glyph unicode="u" horiz-adv-x="551" d="M478,484l-88,0l0,-296C390,171 387,155 382,143C366,103 325,62 266,62C187,62 158,125 158,217l0,267l-88,0l0,-283C70,32 161,-11 237,-11C323,-11 375,40 397,79l2,0l5,-79l78,0C479,38 478,82 478,133z"/>
|
||||||
|
<glyph unicode="v" horiz-adv-x="481" d="M13,484l184,-484l84,0l190,484l-92,0l-94,-271C269,168 255,128 244,88l-3,0C231,128 218,168 202,213l-95,271z"/>
|
||||||
|
<glyph unicode="x" horiz-adv-x="463" d="M16,484l164,-237l-172,-247l97,0l70,109C194,138 210,164 226,193l2,0C245,164 261,137 280,109l72,-109l99,0l-169,250l165,234l-96,0l-67,-103C267,355 251,330 235,302l-2,0C217,329 202,353 183,380l-69,104z"/>
|
||||||
|
<glyph unicode="y" horiz-adv-x="471" d="M9,484l178,-446C192,27 194,20 194,15C194,10 191,3 187,-6C166,-51 137,-85 113,-104C87,-126 58,-140 36,-147l22,-73C80,-216 122,-201 166,-164C226,-111 269,-27 332,139l132,345l-93,0l-96,-284C263,165 253,128 244,99l-2,0C234,128 222,166 210,198l-105,286z"/>
|
||||||
|
<glyph unicode="z" horiz-adv-x="428" d="M18,0l392,0l0,70l-282,0l0,2C150,96 169,121 190,148l216,281l0,55l-368,0l0,-70l262,0l0,-2C278,386 258,363 236,336l-218,-285z"/>
|
||||||
|
</font>
|
||||||
|
|
||||||
|
<g>
|
||||||
|
<rect y="1.152" fill="#AAAAAA" stroke="#000000" width="256" height="36.887"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 23.7046)" font-family="'MyriadPro-Regular'" font-size="14">Enter protected mode</text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="45.642" fill="#AAAAAA" stroke="#000000" width="256" height="43.62"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 71.5605)" font-family="'MyriadPro-Regular'" font-size="14">non-coherent HT enumeration</text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="98.359" fill="#AAAAAA" stroke="#000000" width="256" height="60.15"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 132.5435)" font-family="'MyriadPro-Regular'" font-size="14">coherent HT initialization</text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="165.983" fill="#AAAAAA" stroke="#000000" width="256" height="68.421"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 204.3022)" font-family="'MyriadPro-Regular'" font-size="14">Fallback / Normal?</text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="243.893" fill="#AAAAAA" stroke="#000000" width="256" height="69.173"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 282.5879)" font-family="'MyriadPro-Regular'" font-size="14">RAM initialization</text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="410.747" fill="#AAAAAA" stroke="#000000" width="256" height="52.632"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 432.7725)"><tspan x="0" y="0" font-family="'MyriadPro-Regular'" font-size="14">Create external tables (coreboot table,</tspan><tspan x="0" y="16.8" font-family="'MyriadPro-Regular'" font-size="14">ACPI, MP, PIRQ, DMI)</tspan></text>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="323.526" fill="#AAAAAA" stroke="#000000" width="256" height="77.443"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 339.3154)"><tspan x="0" y="0" font-family="'MyriadPro-Regular'" font-size="14">Resource Allocation (PCI, PCIe, I2C, SIO, </tspan><tspan x="0" y="16.8" font-family="'MyriadPro-Regular'" font-size="14">CPU, mainboard...)</tspan></text>
|
||||||
|
<rect x="27.744" y="362.248" fill="#BCBCBC" width="228.256" height="38.722"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<rect y="473.781" fill="#AAAAAA" stroke="#000000" width="256" height="80.076"/>
|
||||||
|
<text transform="matrix(1 0 0 1 27.7441 497.4658)" font-family="'MyriadPro-Regular'" font-size="14">ELF / Payload Loader</text>
|
||||||
|
<rect x="27.744" y="507.993" fill="#BCBCBC" width="228.256" height="45.864"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,31.246 130.359,46.62 132.854,44.7
|
||||||
|
132.027,51.206 131.201,57.711 124.701,56.845 118.201,55.98 120.608,54.127 110.178,33.439 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,57.636 132.228,59.101 133.828,45.178 133.062,44.181 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,57.643 132.28,59.108 118.41,57.093 117.644,56.096 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,81.246 130.359,96.62 132.854,94.7
|
||||||
|
132.027,101.206 131.201,107.711 124.701,106.845 118.201,105.98 120.608,104.127 110.178,83.439 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,107.636 132.228,109.101 133.828,95.178 133.062,94.181 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,107.643 132.28,109.108 118.41,107.093 117.644,106.096 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,151.586 130.359,166.961 132.854,165.041
|
||||||
|
132.027,171.546 131.201,178.052 124.701,177.186 118.201,176.321 120.608,174.468 110.178,153.78 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,177.977 132.228,179.442 133.828,165.519 133.062,164.522 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,177.983 132.28,179.449 118.41,177.434 117.644,176.437 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,227.013 130.359,242.387 132.854,240.467
|
||||||
|
132.027,246.973 131.201,253.478 124.701,252.612 118.201,251.747 120.608,249.894 110.178,229.207 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,253.403 132.228,254.868 133.828,240.945 133.062,239.948 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,253.41 132.28,254.875 118.41,252.86 117.644,251.863 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,303.013 130.359,318.388 132.854,316.468
|
||||||
|
132.027,322.973 131.201,329.479 124.701,328.612 118.201,327.747 120.607,325.895 110.178,305.207 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,329.404 132.228,330.868 133.829,316.945 133.062,315.948 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,329.41 132.28,330.876 118.41,328.86 117.643,327.864 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,395.872 130.359,411.247 132.854,409.327
|
||||||
|
132.027,415.833 131.201,422.338 124.701,421.473 118.201,420.606 120.608,418.754 110.178,398.066 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,422.264 132.228,423.728 133.828,409.805 133.062,408.808 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,422.27 132.28,423.735 118.41,421.72 117.644,420.724 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon fill="#FFFFFF" stroke="#231F20" stroke-width="0.3876" points="113.028,452.152 130.359,467.528 132.854,465.608
|
||||||
|
132.027,472.113 131.201,478.619 124.701,477.753 118.201,476.888 120.607,475.035 110.178,454.347 "/>
|
||||||
|
</g>
|
||||||
|
<polygon fill="#231F20" points="131.101,478.545 132.228,480.009 133.829,466.085 133.062,465.089 "/>
|
||||||
|
<polygon fill="#231F20" points="131.152,478.551 132.28,480.017 118.41,478.001 117.643,477.004 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<text transform="matrix(1 0 0 1 59.3232 385.7627)" font-family="'MyriadPro-Regular'" font-size="14">Drivers</text>
|
||||||
|
<text transform="matrix(1 0 0 1 55.564 535.3789)" font-family="'MyriadPro-Regular'" font-size="14">Linux, FILO, SeaBIOS, ...</text>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 18 KiB |
|
@ -1,527 +0,0 @@
|
||||||
%!PS-Adobe-3.0 EPSF-3.0
|
|
||||||
%%BoundingBox: 0 0 174 228
|
|
||||||
%%Pages: 0
|
|
||||||
%%Creator: Sun Microsystems, Inc.
|
|
||||||
%%Title: none
|
|
||||||
%%CreationDate: none
|
|
||||||
%%LanguageLevel: 2
|
|
||||||
%%EndComments
|
|
||||||
%%BeginProlog
|
|
||||||
%%BeginResource: SDRes
|
|
||||||
/b4_inc_state save def
|
|
||||||
/dict_count countdictstack def
|
|
||||||
/op_count count 1 sub def
|
|
||||||
userdict begin
|
|
||||||
0 setgray 0 setlinecap 1 setlinewidth 0 setlinejoin 10 setmiterlimit[] 0 setdash newpath
|
|
||||||
/languagelevel where {pop languagelevel 1 ne {false setstrokeadjust false setoverprint} if} if
|
|
||||||
/bdef {bind def} bind def
|
|
||||||
/c {setrgbcolor} bdef
|
|
||||||
/l {neg lineto} bdef
|
|
||||||
/rl {neg rlineto} bdef
|
|
||||||
/lc {setlinecap} bdef
|
|
||||||
/lj {setlinejoin} bdef
|
|
||||||
/lw {setlinewidth} bdef
|
|
||||||
/ml {setmiterlimit} bdef
|
|
||||||
/ld {setdash} bdef
|
|
||||||
/m {neg moveto} bdef
|
|
||||||
/ct {6 2 roll neg 6 2 roll neg 6 2 roll neg curveto} bdef
|
|
||||||
/r {rotate} bdef
|
|
||||||
/t {neg translate} bdef
|
|
||||||
/s {scale} bdef
|
|
||||||
/sw {show} bdef
|
|
||||||
/gs {gsave} bdef
|
|
||||||
/gr {grestore} bdef
|
|
||||||
/f {findfont dup length dict begin
|
|
||||||
{1 index /FID ne {def} {pop pop} ifelse} forall /Encoding ISOLatin1Encoding def
|
|
||||||
currentdict end /NFont exch definefont pop /NFont findfont} bdef
|
|
||||||
/p {closepath} bdef
|
|
||||||
/sf {scalefont setfont} bdef
|
|
||||||
/ef {eofill}bdef
|
|
||||||
/pc {closepath stroke}bdef
|
|
||||||
/ps {stroke}bdef
|
|
||||||
/pum {matrix currentmatrix}bdef
|
|
||||||
/pom {setmatrix}bdef
|
|
||||||
/bs {/aString exch def /nXOfs exch def /nWidth exch def currentpoint nXOfs 0 rmoveto pum nWidth aString stringwidth pop div 1 scale aString show pom moveto} bdef
|
|
||||||
%%EndResource
|
|
||||||
%%EndProlog
|
|
||||||
%%BeginSetup
|
|
||||||
%%EndSetup
|
|
||||||
%%Page: 1 1
|
|
||||||
%%BeginPageSetup
|
|
||||||
%%EndPageSetup
|
|
||||||
pum
|
|
||||||
0.02838 0.02838 s
|
|
||||||
0 -8033 t
|
|
||||||
/tm matrix currentmatrix def
|
|
||||||
tm setmatrix
|
|
||||||
-2275 -2118 t
|
|
||||||
1 1 s
|
|
||||||
0.753 0.753 0.753 c 3288 7132 m 2275 7132 l 2275 5104 l 4301 5104 l
|
|
||||||
4301 7132 l 3288 7132 l p ef
|
|
||||||
0 lw 1 lj 0.003 0.003 0.003 c 3288 7132 m 2275 7132 l 2275 5104 l 4301 5104 l
|
|
||||||
4301 7132 l 3288 7132 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
2645 6299 t
|
|
||||||
327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct
|
|
||||||
243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct
|
|
||||||
14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l
|
|
||||||
286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct
|
|
||||||
76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct
|
|
||||||
p ef
|
|
||||||
450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct
|
|
||||||
630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l
|
|
||||||
391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l
|
|
||||||
500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p
|
|
||||||
450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct
|
|
||||||
470 -173 463 -174 450 -175 ct p ef
|
|
||||||
958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l
|
|
||||||
926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct
|
|
||||||
797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct
|
|
||||||
792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l
|
|
||||||
690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef
|
|
||||||
1139 -357 m 1110 -357 1088 -348 1068 -330 ct 1037 -300 1017 -239 1017 -177 ct
|
|
||||||
1017 -120 1035 -58 1060 -28 ct 1079 -5 1106 7 1137 7 ct 1164 7 1186 -1 1206 -20 ct
|
|
||||||
1236 -49 1256 -110 1256 -174 ct 1256 -283 l 1208 -357 l p
|
|
||||||
1137 -343 m 1182 -343 1206 -284 1206 -173 ct 1206 -62 1182 -6 1137 -6 ct 1091 -6 1068 -62 1068 -172 ct
|
|
||||||
1068 -285 l 1092 -343 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
0.753 0.753 0.753 c 7182 7132 m 6169 7132 l 6169 5104 l 8195 5104 l
|
|
||||||
8195 7132 l 7182 7132 l p ef
|
|
||||||
0.003 0.003 0.003 c 7182 7132 m 6169 7132 l 6169 5104 l 8195 5104 l 8195 7132 l
|
|
||||||
7182 7132 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
6535 6299 t
|
|
||||||
327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct
|
|
||||||
243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct
|
|
||||||
14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l
|
|
||||||
286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct
|
|
||||||
76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct
|
|
||||||
p ef
|
|
||||||
450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct
|
|
||||||
630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l
|
|
||||||
391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l
|
|
||||||
500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p
|
|
||||||
450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct
|
|
||||||
470 -173 463 -174 450 -175 ct p ef
|
|
||||||
958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l
|
|
||||||
926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct
|
|
||||||
797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct
|
|
||||||
792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l
|
|
||||||
690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef
|
|
||||||
1158 -357 m 1063 -309 l 1063 -302 l 1070 -304 1075 -306 1078 -307 ct 1087 -311 1096 -313 1101 -313 ct
|
|
||||||
1112 -313 1117 -305 1117 -288 ct 1117 -49 l 1117 -31 1113 -19 1104 -14 ct 1097 -10 1089 -8 1067 -7 ct
|
|
||||||
1067 0 l 1213 0 l 1213 -7 l 1171 -8 1163 -13 1163 -39 ct 1163 -356 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
0.753 0.753 0.753 c 3288 4146 m 2275 4146 l 2275 2118 l 4301 2118 l
|
|
||||||
4301 4146 l 3288 4146 l p ef
|
|
||||||
0.003 0.003 0.003 c 3288 4146 m 2275 4146 l 2275 2118 l 4301 2118 l 4301 4146 l
|
|
||||||
3288 4146 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
2645 3309 t
|
|
||||||
327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct
|
|
||||||
243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct
|
|
||||||
14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l
|
|
||||||
286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct
|
|
||||||
76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct
|
|
||||||
p ef
|
|
||||||
450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct
|
|
||||||
630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l
|
|
||||||
391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l
|
|
||||||
500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p
|
|
||||||
450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct
|
|
||||||
470 -173 463 -174 450 -175 ct p ef
|
|
||||||
958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l
|
|
||||||
926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct
|
|
||||||
797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct
|
|
||||||
792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l
|
|
||||||
690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef
|
|
||||||
1256 -72 m 1249 -75 l 1229 -44 1222 -40 1199 -40 ct 1072 -40 l 1161 -133 l
|
|
||||||
1208 -182 1229 -222 1229 -263 ct 1229 -316 1186 -357 1131 -357 ct 1102 -357 1074 -345 1055 -324 ct
|
|
||||||
1038 -306 1030 -289 1021 -252 ct 1032 -249 l 1053 -301 1072 -318 1109 -318 ct
|
|
||||||
1153 -318 1183 -288 1183 -243 ct 1183 -202 1159 -153 1115 -106 ct 1020 -6 l
|
|
||||||
1020 0 l 1227 0 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
0.753 0.753 0.753 c 7182 4146 m 6169 4146 l 6169 2118 l 8195 2118 l
|
|
||||||
8195 4146 l 7182 4146 l p ef
|
|
||||||
0.003 0.003 0.003 c 7182 4146 m 6169 4146 l 6169 2118 l 8195 2118 l 8195 4146 l
|
|
||||||
7182 4146 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
6535 3309 t
|
|
||||||
327 -238 m 323 -357 l 312 -357 l 308 -346 300 -340 289 -340 ct 285 -340 277 -341 269 -344 ct
|
|
||||||
243 -353 216 -357 192 -357 ct 148 -357 104 -341 71 -312 ct 34 -279 14 -230 14 -171 ct
|
|
||||||
14 -122 30 -77 57 -47 ct 89 -12 138 7 190 7 ct 250 7 302 -16 334 -59 ct 325 -69 l
|
|
||||||
286 -31 251 -15 207 -15 ct 174 -15 144 -26 121 -46 ct 92 -72 76 -120 76 -178 ct
|
|
||||||
76 -274 125 -336 202 -336 ct 232 -336 259 -325 280 -304 ct 297 -287 305 -272 315 -238 ct
|
|
||||||
p ef
|
|
||||||
450 -153 m 464 -152 473 -152 487 -152 ct 528 -152 557 -157 579 -170 ct 611 -187 630 -219 630 -254 ct
|
|
||||||
630 -276 623 -296 609 -312 ct 587 -335 541 -350 492 -350 ct 352 -350 l 352 -340 l
|
|
||||||
391 -335 396 -330 396 -292 ct 396 -63 l 396 -19 392 -13 352 -10 ct 352 0 l
|
|
||||||
500 0 l 500 -10 l 458 -11 450 -19 450 -57 ct p
|
|
||||||
450 -312 m 450 -326 454 -330 468 -330 ct 540 -330 573 -305 573 -251 ct 573 -199 541 -173 481 -173 ct
|
|
||||||
470 -173 463 -174 450 -175 ct p ef
|
|
||||||
958 -272 m 958 -326 964 -334 1007 -340 ct 1007 -350 l 885 -350 l 885 -340 l
|
|
||||||
926 -336 934 -325 934 -272 ct 934 -129 l 934 -93 931 -73 922 -57 ct 908 -32 874 -15 834 -15 ct
|
|
||||||
797 -15 771 -28 757 -53 ct 747 -70 743 -89 743 -123 ct 743 -292 l 743 -330 749 -336 792 -340 ct
|
|
||||||
792 -350 l 642 -350 l 642 -340 l 684 -336 690 -331 690 -292 ct 690 -127 l
|
|
||||||
690 -35 732 7 822 7 ct 880 7 920 -11 940 -47 ct 953 -69 958 -93 958 -134 ct p ef
|
|
||||||
1085 -174 m 1117 -174 1129 -173 1142 -168 ct 1174 -157 1195 -126 1195 -90 ct
|
|
||||||
1195 -46 1165 -11 1126 -11 ct 1111 -11 1101 -15 1081 -28 ct 1065 -37 1056 -41 1047 -41 ct
|
|
||||||
1035 -41 1027 -33 1027 -22 ct 1027 -4 1050 7 1087 7 ct 1128 7 1170 -6 1194 -28 ct
|
|
||||||
1219 -49 1233 -80 1233 -115 ct 1233 -142 1225 -167 1209 -184 ct 1199 -195 1189 -202 1165 -212 ct
|
|
||||||
1202 -236 1215 -256 1215 -285 ct 1215 -327 1181 -357 1133 -357 ct 1106 -357 1083 -348 1064 -331 ct
|
|
||||||
1048 -317 1040 -303 1028 -271 ct 1036 -269 l 1058 -308 1082 -325 1115 -325 ct
|
|
||||||
1149 -325 1173 -302 1173 -269 ct 1173 -250 1165 -231 1152 -217 ct 1136 -202 1121 -194 1085 -181 ct
|
|
||||||
p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
0.753 0.753 0.753 c 7182 10118 m 6169 10118 l 6169 8090 l 8195 8090 l
|
|
||||||
8195 10118 l 7182 10118 l p ef
|
|
||||||
0.003 0.003 0.003 c 7182 10118 m 6169 10118 l 6169 8090 l 8195 8090 l 8195 10118 l
|
|
||||||
7182 10118 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
6852 8945 t
|
|
||||||
236 -357 m 225 -357 l 223 -345 217 -339 208 -339 ct 203 -339 194 -341 185 -345 ct
|
|
||||||
165 -353 146 -357 129 -357 ct 106 -357 83 -348 65 -333 ct 47 -316 37 -294 37 -267 ct
|
|
||||||
37 -224 60 -195 120 -163 ct 158 -143 185 -122 198 -102 ct 203 -95 206 -84 206 -71 ct
|
|
||||||
206 -35 179 -11 141 -11 ct 94 -11 60 -40 34 -105 ct 22 -105 l 38 6 l 49 6 l
|
|
||||||
50 -3 56 -10 64 -10 ct 70 -10 79 -8 89 -4 ct 109 3 130 7 151 7 ct 212 7 259 -34 259 -88 ct
|
|
||||||
259 -132 230 -166 160 -204 ct 105 -234 83 -258 83 -286 ct 83 -315 105 -335 138 -335 ct
|
|
||||||
161 -335 184 -325 202 -306 ct 219 -289 226 -276 234 -244 ct 248 -244 l p ef
|
|
||||||
300 -350 m 300 -340 l 344 -337 350 -331 350 -292 ct 350 -57 l 350 -18 343 -11 300 -10 ct
|
|
||||||
300 0 l 476 0 l 517 0 555 -11 575 -29 ct 594 -46 604 -69 604 -95 ct 604 -118 595 -139 578 -155 ct
|
|
||||||
562 -169 548 -175 514 -184 ct 541 -190 552 -196 565 -207 ct 578 -219 586 -238 586 -260 ct
|
|
||||||
586 -319 539 -350 448 -350 ct p
|
|
||||||
404 -172 m 456 -172 480 -169 499 -161 ct 529 -149 543 -128 543 -94 ct 543 -66 532 -45 511 -33 ct
|
|
||||||
494 -23 472 -19 438 -19 ct 412 -19 404 -24 404 -41 ct p
|
|
||||||
404 -193 m 404 -314 l 404 -325 408 -330 416 -330 ct 439 -330 l 500 -330 532 -305 532 -258 ct
|
|
||||||
532 -216 504 -193 454 -193 ct p ef
|
|
||||||
pom
|
|
||||||
pum
|
|
||||||
6455 9607 t
|
|
||||||
156 -357 m 116 -332 101 -318 81 -294 ct 43 -248 25 -195 25 -133 ct 25 -66 44 -14 91 39 ct
|
|
||||||
113 65 126 76 154 93 ct 160 85 l 118 51 103 33 89 -6 ct 76 -41 70 -82 70 -134 ct
|
|
||||||
70 -190 77 -233 92 -266 ct 106 -299 122 -318 160 -349 ct p ef
|
|
||||||
338 -196 m 390 -224 409 -246 409 -282 ct 409 -325 371 -357 318 -357 ct 260 -357 217 -322 217 -274 ct
|
|
||||||
217 -239 227 -224 283 -175 ct 226 -132 214 -115 214 -79 ct 214 -28 256 7 316 7 ct
|
|
||||||
379 7 420 -27 420 -82 ct 420 -122 l 402 -148 l p
|
|
||||||
328 -141 m 367 -114 380 -95 380 -65 ct 380 -31 356 -7 322 -7 ct 281 -7 254 -38 254 -84 ct
|
|
||||||
254 -117 266 -140 297 -165 ct p
|
|
||||||
323 -205 m 275 -236 256 -260 256 -290 ct 256 -321 280 -342 314 -342 ct 350 -342 372 -319 372 -283 ct
|
|
||||||
372 -252 357 -229 327 -208 ct 325 -207 l 325 -207 l p ef
|
|
||||||
603 -357 m 508 -309 l 508 -302 l 515 -304 520 -306 523 -307 ct 532 -311 541 -313 546 -313 ct
|
|
||||||
557 -313 562 -305 562 -288 ct 562 -49 l 562 -31 558 -19 549 -14 ct 542 -10 534 -8 512 -7 ct
|
|
||||||
512 0 l 658 0 l 658 -7 l 616 -8 608 -13 608 -39 ct 608 -356 l p ef
|
|
||||||
867 -357 m 772 -309 l 772 -302 l 779 -304 784 -306 787 -307 ct 796 -311 805 -313 810 -313 ct
|
|
||||||
821 -313 826 -305 826 -288 ct 826 -49 l 826 -31 822 -19 813 -14 ct 806 -10 798 -8 776 -7 ct
|
|
||||||
776 0 l 922 0 l 922 -7 l 880 -8 872 -13 872 -39 ct 872 -356 l p ef
|
|
||||||
1132 -357 m 1037 -309 l 1037 -302 l 1044 -304 1049 -306 1052 -307 ct 1061 -311 1070 -313 1075 -313 ct
|
|
||||||
1086 -313 1091 -305 1091 -288 ct 1091 -49 l 1091 -31 1087 -19 1078 -14 ct 1071 -10 1063 -8 1041 -7 ct
|
|
||||||
1041 0 l 1187 0 l 1187 -7 l 1145 -8 1137 -13 1137 -39 ct 1137 -356 l p ef
|
|
||||||
1264 93 m 1303 68 1319 54 1338 30 ct 1376 -15 1394 -68 1394 -130 ct 1394 -198 1375 -249 1328 -303 ct
|
|
||||||
1306 -329 1293 -340 1265 -357 ct 1259 -349 l 1301 -315 1315 -297 1330 -257 ct
|
|
||||||
1343 -222 1349 -181 1349 -129 ct 1349 -74 1342 -30 1328 2 ct 1313 35 1297 54 1259 85 ct
|
|
||||||
p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
0.753 0.753 0.753 c 3288 10118 m 2275 10118 l 2275 8090 l 4301 8090 l
|
|
||||||
4301 10118 l 3288 10118 l p ef
|
|
||||||
0.003 0.003 0.003 c 3288 10118 m 2275 10118 l 2275 8090 l 4301 8090 l 4301 10118 l
|
|
||||||
3288 10118 l pc
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
2593 8945 t
|
|
||||||
106 -153 m 120 -152 129 -152 143 -152 ct 184 -152 213 -157 235 -170 ct 267 -187 286 -219 286 -254 ct
|
|
||||||
286 -276 279 -296 265 -312 ct 243 -335 197 -350 148 -350 ct 8 -350 l 8 -340 l
|
|
||||||
47 -335 52 -330 52 -292 ct 52 -63 l 52 -19 48 -13 8 -10 ct 8 0 l 156 0 l 156 -10 l
|
|
||||||
114 -11 106 -19 106 -57 ct p
|
|
||||||
106 -312 m 106 -326 110 -330 124 -330 ct 196 -330 229 -305 229 -251 ct 229 -199 197 -173 137 -173 ct
|
|
||||||
126 -173 119 -174 106 -175 ct p ef
|
|
||||||
618 -238 m 614 -357 l 603 -357 l 599 -346 591 -340 580 -340 ct 576 -340 568 -341 560 -344 ct
|
|
||||||
534 -353 507 -357 483 -357 ct 439 -357 395 -341 362 -312 ct 325 -279 305 -230 305 -171 ct
|
|
||||||
305 -122 321 -77 348 -47 ct 380 -12 429 7 481 7 ct 541 7 593 -16 625 -59 ct 616 -69 l
|
|
||||||
577 -31 542 -15 498 -15 ct 465 -15 435 -26 412 -46 ct 383 -72 367 -120 367 -178 ct
|
|
||||||
367 -274 416 -336 493 -336 ct 523 -336 550 -325 571 -304 ct 588 -287 596 -272 606 -238 ct
|
|
||||||
p ef
|
|
||||||
695 -57 m 695 -17 688 -11 644 -10 ct 644 0 l 801 0 l 801 -10 l 758 -11 749 -19 749 -57 ct
|
|
||||||
749 -292 l 749 -331 757 -338 801 -340 ct 801 -350 l 644 -350 l 644 -340 l
|
|
||||||
689 -337 695 -331 695 -292 ct p ef
|
|
||||||
840 -135 m 840 -102 l 970 -102 l 970 -135 l p ef
|
|
||||||
1373 -350 m 1247 -350 l 1247 -340 l 1275 -339 1284 -335 1284 -323 ct 1284 -315 1278 -305 1263 -286 ct
|
|
||||||
1203 -213 l 1181 -244 l 1148 -289 1136 -312 1136 -324 ct 1136 -334 1144 -339 1161 -339 ct
|
|
||||||
1176 -340 l 1176 -350 l 1016 -350 l 1016 -340 l 1051 -338 1060 -330 1112 -257 ct
|
|
||||||
1170 -172 l 1087 -70 l 1039 -14 1037 -12 1010 -10 ct 1010 0 l 1133 0 l
|
|
||||||
1133 -10 l 1102 -12 1093 -16 1093 -28 ct 1093 -36 1101 -49 1120 -74 ct 1183 -152 l
|
|
||||||
1234 -78 l 1251 -52 1261 -34 1261 -26 ct 1261 -16 1252 -11 1234 -11 ct 1232 -11 1226 -10 1220 -10 ct
|
|
||||||
1220 0 l 1377 0 l 1377 -10 l 1349 -13 1341 -18 1318 -49 ct 1217 -194 l
|
|
||||||
1294 -290 l 1328 -331 1339 -338 1373 -340 ct p ef
|
|
||||||
pom
|
|
||||||
pum
|
|
||||||
2566 9607 t
|
|
||||||
156 -357 m 116 -332 101 -318 81 -294 ct 43 -248 25 -195 25 -133 ct 25 -66 44 -14 91 39 ct
|
|
||||||
113 65 126 76 154 93 ct 160 85 l 118 51 103 33 89 -6 ct 76 -41 70 -82 70 -134 ct
|
|
||||||
70 -190 77 -233 92 -266 ct 106 -299 122 -318 160 -349 ct p ef
|
|
||||||
338 -196 m 390 -224 409 -246 409 -282 ct 409 -325 371 -357 318 -357 ct 260 -357 217 -322 217 -274 ct
|
|
||||||
217 -239 227 -224 283 -175 ct 226 -132 214 -115 214 -79 ct 214 -28 256 7 316 7 ct
|
|
||||||
379 7 420 -27 420 -82 ct 420 -122 l 402 -148 l p
|
|
||||||
328 -141 m 367 -114 380 -95 380 -65 ct 380 -31 356 -7 322 -7 ct 281 -7 254 -38 254 -84 ct
|
|
||||||
254 -117 266 -140 297 -165 ct p
|
|
||||||
323 -205 m 275 -236 256 -260 256 -290 ct 256 -321 280 -342 314 -342 ct 350 -342 372 -319 372 -283 ct
|
|
||||||
372 -252 357 -229 327 -208 ct 325 -207 l 325 -207 l p ef
|
|
||||||
603 -357 m 508 -309 l 508 -302 l 515 -304 520 -306 523 -307 ct 532 -311 541 -313 546 -313 ct
|
|
||||||
557 -313 562 -305 562 -288 ct 562 -49 l 562 -31 558 -19 549 -14 ct 542 -10 534 -8 512 -7 ct
|
|
||||||
512 0 l 658 0 l 658 -7 l 616 -8 608 -13 608 -39 ct 608 -356 l p ef
|
|
||||||
794 -174 m 826 -174 838 -173 851 -168 ct 883 -157 904 -126 904 -90 ct 904 -46 874 -11 835 -11 ct
|
|
||||||
820 -11 810 -15 790 -28 ct 774 -37 765 -41 756 -41 ct 744 -41 736 -33 736 -22 ct
|
|
||||||
736 -4 759 7 796 7 ct 837 7 879 -6 903 -28 ct 928 -49 942 -80 942 -115 ct 942 -142 934 -167 918 -184 ct
|
|
||||||
908 -195 898 -202 874 -212 ct 911 -236 924 -256 924 -285 ct 924 -327 890 -357 842 -357 ct
|
|
||||||
815 -357 792 -348 773 -331 ct 757 -317 749 -303 737 -271 ct 745 -269 l 767 -308 791 -325 824 -325 ct
|
|
||||||
858 -325 882 -302 882 -269 ct 882 -250 874 -231 861 -217 ct 845 -202 830 -194 794 -181 ct
|
|
||||||
p ef
|
|
||||||
1132 -357 m 1037 -309 l 1037 -302 l 1044 -304 1049 -306 1052 -307 ct 1061 -311 1070 -313 1075 -313 ct
|
|
||||||
1086 -313 1091 -305 1091 -288 ct 1091 -49 l 1091 -31 1087 -19 1078 -14 ct 1071 -10 1063 -8 1041 -7 ct
|
|
||||||
1041 0 l 1187 0 l 1187 -7 l 1145 -8 1137 -13 1137 -39 ct 1137 -356 l p ef
|
|
||||||
1264 93 m 1303 68 1319 54 1338 30 ct 1376 -15 1394 -68 1394 -130 ct 1394 -198 1375 -249 1328 -303 ct
|
|
||||||
1306 -329 1293 -340 1265 -357 ct 1259 -349 l 1301 -315 1315 -297 1330 -257 ct
|
|
||||||
1343 -222 1349 -181 1349 -129 ct 1349 -74 1342 -30 1328 2 ct 1313 35 1297 54 1259 85 ct
|
|
||||||
p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
3288 7132 m 3288 8090 l ps
|
|
||||||
4301 9104 m 6169 9104 l ps
|
|
||||||
4301 6118 m 6169 6118 l ps
|
|
||||||
3288 5104 m 3288 4146 l ps
|
|
||||||
7182 5104 m 7182 4146 l ps
|
|
||||||
6169 3132 m 4301 3132 l ps
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
3360 7489 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct
|
|
||||||
621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l
|
|
||||||
690 -190 l p
|
|
||||||
652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct
|
|
||||||
615 -152 l 628 -183 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
5424 6484 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct
|
|
||||||
621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l
|
|
||||||
690 -190 l p
|
|
||||||
652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct
|
|
||||||
615 -152 l 628 -183 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
7302 4446 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct
|
|
||||||
621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l
|
|
||||||
690 -190 l p
|
|
||||||
652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct
|
|
||||||
615 -152 l 628 -183 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
3413 4473 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
653 -190 m 638 -190 626 -185 615 -175 ct 599 -160 588 -127 588 -94 ct 588 -64 598 -31 611 -15 ct
|
|
||||||
621 -2 636 3 652 3 ct 666 3 679 0 689 -10 ct 705 -26 716 -58 716 -93 ct 716 -150 l
|
|
||||||
690 -190 l p
|
|
||||||
652 -183 m 676 -183 689 -151 689 -92 ct 689 -33 676 -3 652 -3 ct 628 -3 615 -33 615 -92 ct
|
|
||||||
615 -152 l 628 -183 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
4418 3467 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct
|
|
||||||
639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct
|
|
||||||
615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
2513 5002 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
715 -38 m 712 -40 l 701 -23 698 -21 685 -21 ct 618 -21 l 665 -71 l 690 -97 701 -118 701 -140 ct
|
|
||||||
701 -168 678 -190 649 -190 ct 633 -190 619 -184 608 -173 ct 599 -163 595 -154 590 -134 ct
|
|
||||||
596 -133 l 607 -160 618 -169 637 -169 ct 661 -169 677 -153 677 -130 ct 677 -108 664 -81 640 -56 ct
|
|
||||||
590 -3 l 590 0 l 700 0 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
5397 3044 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct
|
|
||||||
639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct
|
|
||||||
615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
6376 5028 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct
|
|
||||||
639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct
|
|
||||||
615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
gs
|
|
||||||
pum
|
|
||||||
4524 6060 t
|
|
||||||
161 -49 m 156 -38 152 -31 148 -27 ct 138 -16 123 -11 99 -11 ct 80 -11 l 60 -11 56 -12 56 -22 ct
|
|
||||||
56 -155 l 56 -175 60 -179 82 -181 ct 82 -186 l 3 -186 l 3 -181 l 24 -179 27 -175 27 -155 ct
|
|
||||||
27 -30 l 27 -11 23 -6 3 -5 ct 3 0 l 155 0 l 168 -49 l p ef
|
|
||||||
214 -30 m 214 -10 210 -6 189 -5 ct 189 0 l 269 0 l 302 0 331 -9 349 -25 ct
|
|
||||||
367 -41 378 -66 378 -94 ct 378 -119 369 -141 354 -157 ct 335 -176 304 -186 265 -186 ct
|
|
||||||
189 -186 l 189 -181 l 211 -179 214 -176 214 -155 ct p
|
|
||||||
243 -165 m 243 -174 246 -176 257 -176 ct 282 -176 300 -171 313 -162 ct 335 -146 347 -122 347 -92 ct
|
|
||||||
347 -58 335 -35 313 -22 ct 298 -13 282 -10 257 -10 ct 246 -10 243 -12 243 -22 ct
|
|
||||||
p ef
|
|
||||||
468 -174 m 468 -33 l 468 -9 465 -6 442 -5 ct 442 0 l 524 0 l 524 -5 l
|
|
||||||
501 -6 497 -10 497 -30 ct 497 -174 l 512 -174 l 544 -174 550 -169 557 -138 ct
|
|
||||||
564 -138 l 562 -186 l 403 -186 l 401 -138 l 408 -138 l 415 -169 421 -174 453 -174 ct
|
|
||||||
p ef
|
|
||||||
664 -190 m 613 -164 l 613 -161 l 616 -162 619 -163 620 -164 ct 625 -166 630 -167 633 -167 ct
|
|
||||||
639 -167 642 -163 642 -153 ct 642 -26 l 642 -16 639 -10 635 -7 ct 631 -5 627 -4 615 -4 ct
|
|
||||||
615 0 l 693 0 l 693 -4 l 670 -4 666 -7 666 -20 ct 666 -190 l p ef
|
|
||||||
pom
|
|
||||||
gr
|
|
||||||
1.000 0.003 0.003 c 4303 6248 m 4229 6248 4169 6187 4169 6113 ct 4169 6039 4229 5978 4303 5978 ct
|
|
||||||
4377 5978 4437 6039 4437 6113 ct 4437 6187 4377 6248 4303 6248 ct 4303 6248 l
|
|
||||||
p ef
|
|
||||||
0.003 0.003 0.003 c 4303 6248 m 4229 6248 4169 6187 4169 6113 ct 4169 6039 4229 5978 4303 5978 ct
|
|
||||||
4377 5978 4437 6039 4437 6113 ct 4437 6187 4377 6248 4303 6248 ct 4303 6248 l
|
|
||||||
pc
|
|
||||||
1.000 0.003 0.003 c 7216 5229 m 7142 5229 7082 5169 7082 5095 ct 7082 5021 7142 4961 7216 4961 ct
|
|
||||||
7290 4961 7350 5021 7350 5095 ct 7350 5169 7290 5229 7216 5229 ct 7216 5229 l
|
|
||||||
p ef
|
|
||||||
0.003 0.003 0.003 c 7216 5229 m 7142 5229 7082 5169 7082 5095 ct 7082 5021 7142 4961 7216 4961 ct
|
|
||||||
7290 4961 7350 5021 7350 5095 ct 7350 5169 7290 5229 7216 5229 ct 7216 5229 l
|
|
||||||
pc
|
|
||||||
1.000 0.003 0.003 c 6179 3279 m 6105 3279 6045 3219 6045 3145 ct 6045 3071 6105 3011 6179 3011 ct
|
|
||||||
6253 3011 6313 3071 6313 3145 ct 6313 3219 6253 3279 6179 3279 ct 6179 3279 l
|
|
||||||
p ef
|
|
||||||
0.003 0.003 0.003 c 6179 3279 m 6105 3279 6045 3219 6045 3145 ct 6045 3071 6105 3011 6179 3011 ct
|
|
||||||
6253 3011 6313 3071 6313 3145 ct 6313 3219 6253 3279 6179 3279 ct 6179 3279 l
|
|
||||||
pc
|
|
||||||
tm setmatrix
|
|
||||||
0 0 t
|
|
||||||
1 1 s
|
|
||||||
0 8033 t
|
|
||||||
pom
|
|
||||||
count op_count sub {pop} repeat countdictstack dict_count sub {end} repeat b4_inc_state restore
|
|
||||||
%%PageTrailer
|
|
||||||
%%Trailer
|
|
||||||
%%EOF
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
width="256px" height="512px" viewBox="0 0 256 512" enable-background="new 0 0 256 512" xml:space="preserve">
|
||||||
|
<font horiz-adv-x="2048">
|
||||||
|
<font-face font-family="ArialMT" units-per-em="2048" underline-position="-217" underline-thickness="150"/>
|
||||||
|
<missing-glyph horiz-adv-x="1536" d="M256,0l0,1280l1024,0l0,-1280M288,32l960,0l0,1216l-960,0z"/>
|
||||||
|
<glyph unicode=" " horiz-adv-x="569"/>
|
||||||
|
<glyph unicode="(" horiz-adv-x="682" d="M479,-431C380,-306 296,-159 227,9C158,177 124,351 124,531C124,690 150,842 201,987C261,1156 354,1324 479,1491l129,0C527,1352 474,1253 448,1194C407,1102 375,1006 352,906C323,781 309,656 309,530C309,209 409,-111 608,-431z"/>
|
||||||
|
<glyph unicode=")" horiz-adv-x="682" d="M253,-431l-129,0C323,-111 423,209 423,530C423,655 409,780 380,903C357,1003 326,1099 285,1191C259,1251 205,1351 124,1491l129,0C378,1324 471,1156 531,987C582,842 608,690 608,531C608,351 574,177 505,9C436,-159 352,-306 253,-431z"/>
|
||||||
|
<glyph unicode="-" horiz-adv-x="682" d="M65,440l0,181l553,0l0,-181z"/>
|
||||||
|
<glyph unicode="0" horiz-adv-x="1139" d="M85,723C85,896 103,1036 139,1142C174,1247 227,1329 298,1386C368,1443 456,1472 563,1472C642,1472 711,1456 770,1425C829,1393 878,1347 917,1288C956,1228 986,1155 1008,1070C1030,984 1041,868 1041,723C1041,551 1023,412 988,307C953,201 900,119 830,62C759,4 670,-25 563,-25C422,-25 311,26 230,127C133,249 85,448 85,723M270,723C270,482 298,322 355,243C411,163 480,123 563,123C646,123 715,163 772,243C828,323 856,483 856,723C856,964 828,1125 772,1204C715,1283 645,1323 561,1323C478,1323 412,1288 363,1218C301,1129 270,964 270,723z"/>
|
||||||
|
<glyph unicode="1" horiz-adv-x="1139" d="M763,0l-180,0l0,1147C540,1106 483,1064 413,1023C342,982 279,951 223,930l0,174C324,1151 412,1209 487,1276C562,1343 616,1409 647,1472l116,0z"/>
|
||||||
|
<glyph unicode="2" horiz-adv-x="1139" d="M1031,173l0,-173l-969,0C61,43 68,85 83,125C108,191 147,256 202,320C256,384 334,458 437,542C596,673 704,776 760,853C816,929 844,1001 844,1069C844,1140 819,1201 768,1250C717,1299 650,1323 568,1323C481,1323 412,1297 360,1245C308,1193 282,1121 281,1029l-185,19C109,1186 156,1291 239,1364C322,1436 433,1472 572,1472C713,1472 824,1433 906,1355C988,1277 1029,1180 1029,1065C1029,1006 1017,949 993,892C969,835 929,776 874,713C818,650 725,564 596,455C488,364 419,303 388,271C357,238 332,206 312,173z"/>
|
||||||
|
<glyph unicode="3" horiz-adv-x="1139" d="M86,387l180,24C287,309 322,236 372,191C421,146 482,123 553,123C638,123 709,152 768,211C826,270 855,342 855,429C855,512 828,580 774,634C720,687 651,714 568,714C534,714 492,707 441,694l20,158C473,851 483,850 490,850C567,850 636,870 697,910C758,950 789,1012 789,1095C789,1161 767,1216 722,1259C677,1302 620,1324 549,1324C479,1324 421,1302 374,1258C327,1214 297,1148 284,1060l-180,32C126,1213 176,1306 254,1373C332,1439 429,1472 545,1472C625,1472 699,1455 766,1421C833,1386 885,1339 921,1280C956,1221 974,1158 974,1091C974,1028 957,970 923,918C889,866 839,825 772,794C859,774 926,733 974,670C1022,607 1046,528 1046,433C1046,305 999,197 906,108C813,19 695,-26 552,-26C423,-26 317,12 232,89C147,166 98,265 86,387z"/>
|
||||||
|
<glyph unicode="8" horiz-adv-x="1139" d="M362,795C287,822 232,861 196,912C160,963 142,1023 142,1094C142,1201 180,1290 257,1363C334,1436 436,1472 563,1472C691,1472 794,1435 872,1361C950,1286 989,1196 989,1089C989,1021 971,962 936,912C900,861 846,822 773,795C863,766 932,718 979,653C1026,588 1049,510 1049,419C1049,294 1005,188 916,103C827,18 711,-25 566,-25C421,-25 305,18 216,104C127,189 83,296 83,424C83,519 107,599 156,664C204,728 273,772 362,795M326,1100C326,1031 348,974 393,930C438,886 496,864 567,864C636,864 693,886 738,930C782,973 804,1027 804,1090C804,1156 781,1212 736,1257C690,1302 633,1324 565,1324C496,1324 439,1302 394,1258C349,1214 326,1161 326,1100M268,423C268,372 280,322 305,274C329,226 365,189 413,163C461,136 513,123 568,123C654,123 725,151 781,206C837,261 865,332 865,417C865,504 836,575 779,632C721,689 649,717 562,717C477,717 407,689 352,633C296,577 268,507 268,423z"/>
|
||||||
|
<glyph unicode="B" horiz-adv-x="1366" d="M150,0l0,1466l550,0C812,1466 902,1451 970,1422C1037,1392 1090,1346 1129,1285C1167,1223 1186,1158 1186,1091C1186,1028 1169,969 1135,914C1101,859 1050,814 981,780C1070,754 1138,710 1186,647C1233,584 1257,510 1257,425C1257,356 1243,293 1214,234C1185,175 1149,129 1106,97C1063,65 1010,41 946,25C881,8 802,0 709,0M344,850l317,0C747,850 809,856 846,867C895,882 933,906 958,940C983,974 995,1017 995,1068C995,1117 983,1160 960,1197C937,1234 903,1259 860,1273C817,1286 742,1293 637,1293l-293,0M344,173l365,0C772,173 816,175 841,180C886,188 923,201 953,220C983,239 1008,266 1027,302C1046,337 1056,378 1056,425C1056,480 1042,527 1014,568C986,608 947,636 898,653C848,669 776,677 683,677l-339,0z"/>
|
||||||
|
<glyph unicode="C" horiz-adv-x="1479" d="M1204,514l194,-49C1357,306 1284,184 1179,101C1073,17 944,-25 791,-25C633,-25 505,7 406,72C307,136 231,229 180,351C128,473 102,604 102,744C102,897 131,1030 190,1144C248,1257 331,1344 439,1403C546,1462 665,1491 794,1491C941,1491 1064,1454 1164,1379C1264,1304 1334,1199 1373,1064l-191,-45C1148,1126 1099,1203 1034,1252C969,1301 888,1325 790,1325C677,1325 583,1298 508,1244C432,1190 379,1118 348,1027C317,936 302,842 302,745C302,620 320,512 357,419C393,326 449,256 526,210C603,164 686,141 775,141C884,141 976,172 1051,235C1126,298 1177,391 1204,514z"/>
|
||||||
|
<glyph unicode="D" horiz-adv-x="1479" d="M158,0l0,1466l505,0C777,1466 864,1459 924,1445C1008,1426 1080,1391 1139,1340C1216,1275 1274,1191 1313,1090C1351,988 1370,872 1370,741C1370,630 1357,531 1331,445C1305,359 1272,288 1231,232C1190,175 1146,131 1098,99C1049,66 991,42 923,25C854,8 776,0 687,0M352,173l313,0C762,173 838,182 893,200C948,218 991,243 1024,276C1070,322 1106,384 1132,462C1157,539 1170,633 1170,744C1170,897 1145,1015 1095,1098C1044,1180 983,1235 911,1263C859,1283 775,1293 660,1293l-308,0z"/>
|
||||||
|
<glyph unicode="I" horiz-adv-x="569" d="M191,0l0,1466l194,0l0,-1466z"/>
|
||||||
|
<glyph unicode="L" horiz-adv-x="1139" d="M150,0l0,1466l194,0l0,-1293l722,0l0,-173z"/>
|
||||||
|
<glyph unicode="P" horiz-adv-x="1366" d="M158,0l0,1466l553,0C808,1466 883,1461 934,1452C1006,1440 1066,1417 1115,1384C1164,1350 1203,1303 1233,1242C1262,1181 1277,1115 1277,1042C1277,917 1237,812 1158,726C1079,639 935,596 728,596l-376,0l0,-596M352,769l379,0C856,769 945,792 998,839C1051,886 1077,951 1077,1036C1077,1097 1062,1150 1031,1194C1000,1237 959,1266 908,1280C875,1289 815,1293 727,1293l-375,0z"/>
|
||||||
|
<glyph unicode="S" horiz-adv-x="1366" d="M92,471l183,16C284,414 304,354 336,307C367,260 416,222 483,193C550,164 625,149 708,149C782,149 847,160 904,182C961,204 1003,234 1031,273C1058,311 1072,353 1072,398C1072,444 1059,484 1032,519C1005,553 961,582 900,605C861,620 774,644 639,677C504,709 410,739 356,768C286,805 234,850 200,905C165,959 148,1020 148,1087C148,1161 169,1230 211,1295C253,1359 314,1408 395,1441C476,1474 565,1491 664,1491C773,1491 869,1474 952,1439C1035,1404 1098,1352 1143,1284C1188,1216 1212,1139 1215,1053l-186,-14C1019,1132 985,1202 928,1249C870,1296 785,1320 672,1320C555,1320 469,1299 416,1256C362,1213 335,1161 335,1100C335,1047 354,1004 392,970C429,936 527,901 685,866C842,830 950,799 1009,772C1094,733 1157,683 1198,623C1239,562 1259,493 1259,414C1259,336 1237,263 1192,194C1147,125 1083,71 1000,33C916,-6 822,-25 717,-25C584,-25 473,-6 384,33C294,72 224,130 173,208C122,285 95,373 92,471z"/>
|
||||||
|
<glyph unicode="T" horiz-adv-x="1251" d="M531,0l0,1293l-483,0l0,173l1162,0l0,-173l-485,0l0,-1293z"/>
|
||||||
|
<glyph unicode="U" horiz-adv-x="1479" d="M1120,1466l194,0l0,-847C1314,472 1297,355 1264,268C1231,181 1171,111 1084,57C997,2 882,-25 741,-25C604,-25 491,-1 404,46C317,93 254,162 217,252C180,341 161,464 161,619l0,847l194,0l0,-846C355,493 367,399 391,339C414,278 455,232 513,199C570,166 641,150 724,150C867,150 968,182 1029,247C1090,312 1120,436 1120,620z"/>
|
||||||
|
<glyph unicode="X" horiz-adv-x="1366" d="M9,0l567,764l-500,702l231,0l266,-376C628,1012 668,952 691,910C724,963 762,1019 807,1077l295,389l211,0l-515,-691l555,-775l-240,0l-369,523C723,553 702,586 680,621C647,568 624,531 610,511l-368,-511z"/>
|
||||||
|
</font>
|
||||||
|
|
||||||
|
<rect x="7.465" y="10.627" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
|
||||||
|
<rect x="150.491" y="10.923" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.178"/>
|
||||||
|
<rect x="8.479" y="129.379" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
|
||||||
|
<rect x="150.491" y="129.674" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.178"/>
|
||||||
|
<rect x="8.479" y="241.805" fill="#A0A0A0" stroke="#000000" width="80.473" height="80.473"/>
|
||||||
|
<rect x="150.491" y="242.1" fill="#A0A0A0" stroke="#000000" width="80.474" height="80.177"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="48.716" y1="91.101" x2="48.716" y2="129.379"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="88.953" y1="50.864" x2="150.491" y2="51.012"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="88.953" y1="169.763" x2="150.491" y2="169.763"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="190.729" y1="91.101" x2="190.729" y2="129.379"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="48.716" y1="209.852" x2="48.716" y2="241.805"/>
|
||||||
|
<line fill="none" stroke="#000000" x1="88.953" y1="282.189" x2="150.491" y2="282.189"/>
|
||||||
|
<text transform="matrix(1 0 0 1 23.6948 57.3003)" font-family="'ArialMT'" font-size="18">CPU2</text>
|
||||||
|
<text transform="matrix(1 0 0 1 22.3374 174.46)" font-family="'ArialMT'" font-size="18">CPU0</text>
|
||||||
|
<text transform="matrix(1 0 0 1 169.082 55.1167)" font-family="'ArialMT'" font-size="18">CPU3</text>
|
||||||
|
<text transform="matrix(1 0 0 1 169.082 175.8271)" font-family="'ArialMT'" font-size="18">CPU1</text>
|
||||||
|
<text transform="matrix(1 0 0 1 22.6807 277.1895)"><tspan x="0" y="0" font-family="'ArialMT'" font-size="18">PCI-X</tspan><tspan x="0" y="21.601" font-family="'ArialMT'" font-size="18">(8131)</tspan></text>
|
||||||
|
<text transform="matrix(1 0 0 1 169.082 275.1895)"><tspan x="0" y="0" font-family="'ArialMT'" font-size="18"> SB</tspan><tspan x="0" y="21.6" font-family="'ArialMT'" font-size="18">(8111)</tspan></text>
|
||||||
|
<text transform="matrix(1 0 0 1 93.0947 63.8721)" font-family="'ArialMT'" font-size="10">LDT1</text>
|
||||||
|
<text transform="matrix(1 0 0 1 124.5088 46.7715)" font-family="'ArialMT'" font-size="10">LDT1</text>
|
||||||
|
<text transform="matrix(1 0 0 1 196.6982 102.9844)" font-family="'ArialMT'" font-size="10">LDT0</text>
|
||||||
|
<text transform="matrix(1 0 0 1 161.1953 126.0615)" font-family="'ArialMT'" font-size="10">LDT1</text>
|
||||||
|
<text transform="matrix(1 0 0 1 22.3374 126.0615)" font-family="'ArialMT'" font-size="10">LDT2</text>
|
||||||
|
<text transform="matrix(1 0 0 1 55.2783 103.5767)" font-family="'ArialMT'" font-size="10">LDT0</text>
|
||||||
|
<text transform="matrix(1 0 0 1 52.9111 221.3276)" font-family="'ArialMT'" font-size="10">LDT0</text>
|
||||||
|
<text transform="matrix(1 0 0 1 93.0947 181.6719)" font-family="'ArialMT'" font-size="10">LDT1</text>
|
||||||
|
<text transform="matrix(1 0 0 1 124.5088 166.2979)" font-family="'ArialMT'" font-size="10">LDT0</text>
|
||||||
|
<ellipse fill="#FF0606" cx="150.491" cy="51.012" rx="4.438" ry="4.563"/>
|
||||||
|
<ellipse fill="#FF0606" cx="88.953" cy="169.763" rx="4.438" ry="4.563"/>
|
||||||
|
<ellipse fill="#FF0606" cx="190.729" cy="129.379" rx="4.438" ry="4.563"/>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 11 KiB |
Loading…
Reference in New Issue