X-MimeOLE: Produced By Microsoft Exchange V6.5
Received: by onstor-exch02.onstor.net 
	id <01C7996D.5D64A644@onstor-exch02.onstor.net>; Fri, 18 May 2007 09:55:40 -0700
MIME-Version: 1.0
Content-Type: multipart/alternative;
	boundary="----_=_NextPart_001_01C7996D.5D64A644"
Content-class: urn:content-classes:message
Subject: RE: Cougar memory
Date: Fri, 18 May 2007 09:55:40 -0700
Message-ID: <BB375AF679D4A34E9CA8DFA650E2B04E03C0C5C8@onstor-exch02.onstor.net>
In-Reply-To: <BB375AF679D4A34E9CA8DFA650E2B04E02FB254D@onstor-exch02.onstor.net>
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
Thread-Topic: Cougar memory
Thread-Index: AceXTCUHh0M0H9YDS4GgvP8uu+752ABsSeegAASqM7AAFaMo4AAAqJAnAABVIlA=
References: <BB375AF679D4A34E9CA8DFA650E2B04E03B6ED53@onstor-exch02.onstor.net> <BB375AF679D4A34E9CA8DFA650E2B04E03C0C444@onstor-exch02.onstor.net> <BB375AF679D4A34E9CA8DFA650E2B04E02FB254C@onstor-exch02.onstor.net> <BB375AF679D4A34E9CA8DFA650E2B04E03C0C544@onstor-exch02.onstor.net> <BB375AF679D4A34E9CA8DFA650E2B04E02FB254D@onstor-exch02.onstor.net>
From: "Maxim Kozlovsky" <maxim.kozlovsky@onstor.com>
To: "Bill Nadzam" <bill.nadzam@onstor.com>,
	"Brian Stark" <brian.stark@onstor.com>
Cc: "dl-Cougar" <dl-Cougar@onstor.com>

This is a multi-part message in MIME format.

------_=_NextPart_001_01C7996D.5D64A644
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

In 64bit mode every piece of physical memory can be addressed through
the e(X)tended (K)ernel (S)egment, or XKSEG. It provides both cached and
uncached mappings. Unless there are special requirements on the location
of the mappings in the virtual memory, it is better to use XKSEG
mappings.=20

=20

For example, the shared memory region has to be mapped at the same
location on txrx and fp, so we use TLB mappings.

=20

If you need to access some random piece of memory uncached and it does
not matter where it is - use XKSEG mapping.

=20

The macros to convert the physical address to xkseg address and back are
in Includes/sys/sb1250/sbmips.h, they have "XK" as part of the name.

=20

________________________________

From: Bill Nadzam=20
Sent: Friday, May 18, 2007 9:25 AM
To: Maxim Kozlovsky; Brian Stark
Cc: dl-Cougar
Subject: RE: Cougar memory

=20

Well Max.

the question I had was about the way the FC accesses memory today.

We are required to use a special address space for un-cached reads.

If you feel there is a better way than Brian suggests, thats fine with
me.

I have not a problem and will do whatever you suggest.

As long as it works, I am fine with this.

=20

=20

________________________________

From: Maxim Kozlovsky
Sent: Fri 5/18/2007 9:07 AM
To: Bill Nadzam; Brian Stark
Cc: dl-Cougar
Subject: RE: Cougar memory

Why spend TLB entries? Just use the XKSEG mappings.

=20

________________________________

From: Bill Nadzam=20
Sent: Thursday, May 17, 2007 10:47 PM
To: Brian Stark
Cc: dl-Cougar
Subject: RE: Cougar memory

=20

This is great news!

Thanks.

=20

________________________________

From: Brian Stark
Sent: Thu 5/17/2007 8:38 PM
To: Bill Nadzam
Subject: RE: Cougar memory

Bill,

=20

This will be the same on Cougar and won't be an issue for the SiBytes.
For reading memory that was written by the QLogic, the SiByte will use
TLB entries that point to uncached memory space. =20

=20

=20

Brian

=20

	=20

=09
________________________________


	From: Bill Nadzam=20
	Sent: Tuesday, May 15, 2007 4:53 PM
	To: Brian Stark
	Subject: Cougar memory

	In the Cheetah and Bobcat we had to use special addressing for
uncached memory space.

	This would be done whenever we read memory that was written by
the QLogic part.

	=20

	Is this a problem for the Cougar?


------_=_NextPart_001_01C7996D.5D64A644
Content-Type: text/html;
	charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:st1=3D"urn:schemas-microsoft-com:office:smarttags" =
xmlns=3D"http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dus-ascii">
<meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><o:SmartTagType
 namespaceuri=3D"urn:schemas-microsoft-com:office:smarttags" =
name=3D"PersonName"/>
<!--[if !mso]>
<style>
st1\:*{behavior:url(#default#ieooui) }
</style>
<![endif]-->
<style>
<!--
font-face=0A=
	{font-family:Tahoma;}

 /* Font Definitions */
 @font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:"Times New Roman";}
a:link, span.MsoHyperlink
	{color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{color:purple;
	text-decoration:underline;}
span.emailstyle17
	{font-family:Arial;
	color:navy;}
span.EmailStyle18
	{mso-style-type:personal-reply;
	font-family:Arial;
	color:navy;}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
	{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext=3D"edit">
  <o:idmap v:ext=3D"edit" data=3D"1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=3DEN-US link=3Dblue vlink=3Dpurple>

<div class=3DSection1>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>In 64bit mode every piece of =
physical
memory can be addressed through the e(X)tended (K)ernel (S)egment, or =
XKSEG. It
provides both cached and uncached mappings. Unless there are special
requirements on the location of the mappings in the virtual memory, it =
is
better to use XKSEG mappings. <o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>For example, the shared memory =
region has
to be mapped at the same location on txrx and fp, so we use TLB =
mappings.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>If you need to access some random =
piece of
memory uncached and it does not matter where it is &#8211; use XKSEG =
mapping.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>The macros to convert the physical =
address
to xkseg address and back are in Includes/sys/sb1250/sbmips.h, they have =
&#8220;XK&#8221;
as part of the name.<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'><o:p>&nbsp;</o:p></span></font></p>

<div>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabindex=3D-1>

</span></font></div>

<p class=3DMsoNormal><b><font size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font =
size=3D2
face=3DTahoma><span style=3D'font-size:10.0pt;font-family:Tahoma'> =
<st1:PersonName
w:st=3D"on">Bill Nadzam</st1:PersonName> <br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Friday, May 18, =
2007 9:25 AM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> Maxim Kozlovsky; =
Brian Stark<br>
<b><span style=3D'font-weight:bold'>Cc:</span></b> dl-Cougar<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> RE: Cougar =
memory</span></font><o:p></o:p></p>

</div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div id=3DidOWAReplyText83851>

<div>

<p class=3DMsoNormal><font size=3D2 color=3Dblack face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:black'>Well =
Max.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>the question I had was about the way the FC accesses =
memory
today.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>We are required to use a special address space for =
un-cached
reads.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>If you feel there is a better way than Brian =
suggests, thats
fine with me.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>I have not a problem and will do whatever you =
suggest.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>As long as it works, I am fine with =
this.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'><o:p>&nbsp;</o:p></span></font></p>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabIndex=3D-1>

</span></font></div>

<p class=3DMsoNormal style=3D'margin-bottom:12.0pt'><b><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma;font-weight:bold'>From:</spa=
n></font></b><font
size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;font-family:Tahoma'> Maxim
Kozlovsky<br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Fri 5/18/2007 9:07 =
AM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> <st1:PersonName =
w:st=3D"on">Bill
 Nadzam</st1:PersonName>; Brian Stark<br>
<b><span style=3D'font-weight:bold'>Cc:</span></b> dl-Cougar<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> RE: Cougar =
memory</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 color=3Dnavy face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:navy'>Why spend TLB entries? Just use the =
XKSEG
mappings.</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<div>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabIndex=3D-1>

</span></font></div>

<p class=3DMsoNormal><b><font size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;
font-family:Tahoma;font-weight:bold'>From:</span></font></b><font =
size=3D2
face=3DTahoma><span style=3D'font-size:10.0pt;font-family:Tahoma'> =
<st1:PersonName
w:st=3D"on">Bill Nadzam</st1:PersonName> <br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Thursday, May 17, =
2007 10:47
PM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> Brian Stark<br>
<b><span style=3D'font-weight:bold'>Cc:</span></b> dl-Cougar<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> RE: Cougar =
memory</span></font><o:p></o:p></p>

</div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<div id=3DidOWAReplyText99751>

<div>

<p class=3DMsoNormal><font size=3D2 color=3Dblack face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:black'>This is great =
news!</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Thanks.</span></font><o:p></o:p></p>

</div>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabIndex=3D-1>

</span></font></div>

<p class=3DMsoNormal style=3D'margin-bottom:12.0pt'><b><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma;font-weight:bold'>From:</spa=
n></font></b><font
size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;font-family:Tahoma'> Brian
Stark<br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Thu 5/17/2007 8:38 =
PM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> <st1:PersonName =
w:st=3D"on">Bill
 Nadzam</st1:PersonName><br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> RE: Cougar =
memory</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>Bill,</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>This will be the same on Cougar and =
won't
be an issue for the SiBytes.&nbsp; For reading memory that was written =
by the
QLogic, the SiByte will use&nbsp;TLB entries that point to uncached =
memory
space. &nbsp;</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<p class=3DMsoNormal><font size=3D2 color=3Dblue face=3DArial><span =
style=3D'font-size:
10.0pt;font-family:Arial;color:blue'>Brian</span></font><o:p></o:p></p>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<blockquote style=3D'border:none;border-left:solid blue =
1.5pt;padding:0in 0in 0in 4.0pt;
margin-left:3.75pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt'=
>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

<div class=3DMsoNormal align=3Dcenter style=3D'text-align:center'><font =
size=3D3
face=3D"Times New Roman"><span style=3D'font-size:12.0pt'>

<hr size=3D2 width=3D"100%" align=3Dcenter tabIndex=3D-1>

</span></font></div>

<p class=3DMsoNormal style=3D'margin-bottom:12.0pt'><b><font size=3D2 =
face=3DTahoma><span
style=3D'font-size:10.0pt;font-family:Tahoma;font-weight:bold'>From:</spa=
n></font></b><font
size=3D2 face=3DTahoma><span =
style=3D'font-size:10.0pt;font-family:Tahoma'> <st1:PersonName
w:st=3D"on">Bill Nadzam</st1:PersonName> <br>
<b><span style=3D'font-weight:bold'>Sent:</span></b> Tuesday, May 15, =
2007 4:53
PM<br>
<b><span style=3D'font-weight:bold'>To:</span></b> Brian Stark<br>
<b><span style=3D'font-weight:bold'>Subject:</span></b> Cougar =
memory</span></font><o:p></o:p></p>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>In the Cheetah and Bobcat we had to use special =
addressing
for uncached memory space.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>This would be done whenever we read memory that was =
written
by the QLogic part.</span></font><o:p></o:p></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D3 face=3D"Times New Roman"><span =
style=3D'font-size:
12.0pt'>&nbsp;<o:p></o:p></span></font></p>

</div>

<div>

<p class=3DMsoNormal><font size=3D2 face=3DArial><span =
style=3D'font-size:10.0pt;
font-family:Arial'>Is this a problem for the =
Cougar?</span></font><o:p></o:p></p>

</div>

</blockquote>

</div>

</div>

</div>

</body>

</html>

------_=_NextPart_001_01C7996D.5D64A644--
