<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/arch/ia64/include/asm/machvec.h, branch v3.2.47</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge branch 'linus' into core/iommu</title>
<updated>2009-01-16T09:09:10+00:00</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2009-01-16T09:09:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=af2519fb2298cdf7540082c36f4d8c66bbff103f'/>
<id>af2519fb2298cdf7540082c36f4d8c66bbff103f</id>
<content type='text'>
Conflicts:
	arch/ia64/include/asm/dma-mapping.h
	arch/ia64/include/asm/machvec.h
	arch/ia64/include/asm/machvec_sn2.h
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	arch/ia64/include/asm/dma-mapping.h
	arch/ia64/include/asm/machvec.h
	arch/ia64/include/asm/machvec_sn2.h
</pre>
</div>
</content>
</entry>
<entry>
<title>[IA64] SN specific version of dma_get_required_mask()</title>
<updated>2009-01-15T18:42:16+00:00</updated>
<author>
<name>John Keller</name>
<email>jpk@sgi.com</email>
</author>
<published>2008-11-24T22:47:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=175add1981e53d22caba8f42d5f924a4de507b6c'/>
<id>175add1981e53d22caba8f42d5f924a4de507b6c</id>
<content type='text'>
Create a platform specific version of dma_get_required_mask()
for ia64 SN Altix. All SN Altix platforms support 64 bit DMA
addressing regardless of the size of system memory.
Create an ia64 machvec for dma_get_required_mask, with the
SN version unconditionally returning DMA_64BIT_MASK.

Signed-off-by: John Keller &lt;jpk@sgi.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Create a platform specific version of dma_get_required_mask()
for ia64 SN Altix. All SN Altix platforms support 64 bit DMA
addressing regardless of the size of system memory.
Create an ia64 machvec for dma_get_required_mask, with the
SN version unconditionally returning DMA_64BIT_MASK.

Signed-off-by: John Keller &lt;jpk@sgi.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>convert to use generic dma_map_ops struct, cleanup</title>
<updated>2009-01-07T12:48:21+00:00</updated>
<author>
<name>FUJITA Tomonori</name>
<email>fujita.tomonori@lab.ntt.co.jp</email>
</author>
<published>2009-01-06T17:13:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c299030765292434b73572f9bcfe84951ff06614'/>
<id>c299030765292434b73572f9bcfe84951ff06614</id>
<content type='text'>
Ingo Molnar &lt;mingo@elte.hu&gt; wrote:

&gt; looks good on x86 but on ia64 there's a problem with one of the
&gt; prototypes:
&gt;
&gt; In file included from tip/arch/ia64/include/asm/io.h:72,
&gt;                  from tip/arch/ia64/include/asm/smp.h:20,
&gt;                  from tip/include/linux/smp.h:33,
&gt;                  from tip/include/linux/sched.h:68,
&gt;                  from tip/arch/ia64/kernel/asm-offsets.c:9:
&gt; tip/arch/ia64/include/asm/machvec.h:101: warning: parameter has incomplete type
&gt; tip/arch/ia64/include/asm/machvec.h:103: warning: parameter has incomplete type
&gt;
&gt; that's about "enum dma_data_direction".
&gt;
&gt; I dont think enums can be forward declared like that.
&gt;
&gt; machvec.h is a fairly lowlevel include file - so including
&gt; linux/dma-mapping.h probably wont work. We could do a
&gt; linux/dma-mapping-types.h file that is more lowlevel, or we could move the
&gt; machvec_dma_sync_single() and machvec_dma_sync_sg() declarations to a more
&gt; highlevel file - like arch/ia64/include/asm/dma-mapping.h.
&gt;
&gt; To me the latter looks cleaner but no strong feelings.

Yeah, agreed.

They are generic IA64 DMA operations so I think that it makes sense to
move them to dma-mapping.h.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Ingo Molnar &lt;mingo@elte.hu&gt; wrote:

&gt; looks good on x86 but on ia64 there's a problem with one of the
&gt; prototypes:
&gt;
&gt; In file included from tip/arch/ia64/include/asm/io.h:72,
&gt;                  from tip/arch/ia64/include/asm/smp.h:20,
&gt;                  from tip/include/linux/smp.h:33,
&gt;                  from tip/include/linux/sched.h:68,
&gt;                  from tip/arch/ia64/kernel/asm-offsets.c:9:
&gt; tip/arch/ia64/include/asm/machvec.h:101: warning: parameter has incomplete type
&gt; tip/arch/ia64/include/asm/machvec.h:103: warning: parameter has incomplete type
&gt;
&gt; that's about "enum dma_data_direction".
&gt;
&gt; I dont think enums can be forward declared like that.
&gt;
&gt; machvec.h is a fairly lowlevel include file - so including
&gt; linux/dma-mapping.h probably wont work. We could do a
&gt; linux/dma-mapping-types.h file that is more lowlevel, or we could move the
&gt; machvec_dma_sync_single() and machvec_dma_sync_sg() declarations to a more
&gt; highlevel file - like arch/ia64/include/asm/dma-mapping.h.
&gt;
&gt; To me the latter looks cleaner but no strong feelings.

Yeah, agreed.

They are generic IA64 DMA operations so I think that it makes sense to
move them to dma-mapping.h.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>x86, ia64: convert to use generic dma_map_ops struct</title>
<updated>2009-01-06T13:06:57+00:00</updated>
<author>
<name>FUJITA Tomonori</name>
<email>fujita.tomonori@lab.ntt.co.jp</email>
</author>
<published>2009-01-05T14:59:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=160c1d8e40866edfeae7d68816b7005d70acf391'/>
<id>160c1d8e40866edfeae7d68816b7005d70acf391</id>
<content type='text'>
This converts X86 and IA64 to use include/linux/dma-mapping.h.

It's a bit large but pretty boring. The major change for X86 is
converting 'int dir' to 'enum dma_data_direction dir' in DMA mapping
operations. The major changes for IA64 is using map_page and
unmap_page instead of map_single and unmap_single.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This converts X86 and IA64 to use include/linux/dma-mapping.h.

It's a bit large but pretty boring. The major change for X86 is
converting 'int dir' to 'enum dma_data_direction dir' in DMA mapping
operations. The major changes for IA64 is using map_page and
unmap_page instead of map_single and unmap_single.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>add dma_get_ops to struct ia64_machine_vector</title>
<updated>2009-01-06T13:06:51+00:00</updated>
<author>
<name>FUJITA Tomonori</name>
<email>fujita.tomonori@lab.ntt.co.jp</email>
</author>
<published>2009-01-05T14:36:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c190ab0b2a5fb5cc97576c5f04f4419b6cf8dc8e'/>
<id>c190ab0b2a5fb5cc97576c5f04f4419b6cf8dc8e</id>
<content type='text'>
This adds dma_get_ops hook to struct ia64_machine_vector. We use
dma_get_ops() in arch/ia64/kernel/dma-mapping.c, which simply returns
the global dma_ops. This is for removing hwsw_dma_ops.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds dma_get_ops hook to struct ia64_machine_vector. We use
dma_get_ops() in arch/ia64/kernel/dma-mapping.c, which simply returns
the global dma_ops. This is for removing hwsw_dma_ops.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>remove dma operations in struct ia64_machine_vector</title>
<updated>2009-01-06T13:06:50+00:00</updated>
<author>
<name>FUJITA Tomonori</name>
<email>fujita.tomonori@lab.ntt.co.jp</email>
</author>
<published>2009-01-05T14:36:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fad6a029c4afa499dddd8e9ff70264bb977ea7bf'/>
<id>fad6a029c4afa499dddd8e9ff70264bb977ea7bf</id>
<content type='text'>
We don't need dma operation hooks in struct ia64_machine_vector
now. This also removes unused ia64_mv_dma_* typedefs.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We don't need dma operation hooks in struct ia64_machine_vector
now. This also removes unused ia64_mv_dma_* typedefs.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>set up dma_ops appropriately</title>
<updated>2009-01-06T13:06:50+00:00</updated>
<author>
<name>FUJITA Tomonori</name>
<email>fujita.tomonori@lab.ntt.co.jp</email>
</author>
<published>2009-01-05T14:36:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4d9b977ca674dd40cfc1409a75cb73fca2cee423'/>
<id>4d9b977ca674dd40cfc1409a75cb73fca2cee423</id>
<content type='text'>
This patch introduces a global pointer, dma_ops, which points to an
appropriate dma_mapping_ops that the kernel should use. This is a
common way to handle multiple dma_mapping_ops (X86, POWER, and SPARC).

dma_ops is set in platform_dma_init. We also set it by hand where
machvec_init is callev via subsys_initcall.

- IA64_DIG_VTD uses vtd_dma_ops.
- IA64_HP_ZX1 uses sba_dma_ops.
- IA64_HP_ZX1_SWIOTLB uses hwsw_dma_ops.
- IA64_SGI_SN2 uses sn_dma_ops.
- The rest use swiotlb_dma_ops.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch introduces a global pointer, dma_ops, which points to an
appropriate dma_mapping_ops that the kernel should use. This is a
common way to handle multiple dma_mapping_ops (X86, POWER, and SPARC).

dma_ops is set in platform_dma_init. We also set it by hand where
machvec_init is callev via subsys_initcall.

- IA64_DIG_VTD uses vtd_dma_ops.
- IA64_HP_ZX1 uses sba_dma_ops.
- IA64_HP_ZX1_SWIOTLB uses hwsw_dma_ops.
- IA64_SGI_SN2 uses sn_dma_ops.
- The rest use swiotlb_dma_ops.

Signed-off-by: FUJITA Tomonori &lt;fujita.tomonori@lab.ntt.co.jp&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[IA64] use common header for software IO/TLB</title>
<updated>2008-11-04T19:31:29+00:00</updated>
<author>
<name>Joerg Roedel</name>
<email>joerg.roedel@amd.com</email>
</author>
<published>2008-10-29T21:17:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9979aa7778e664bb31efb4281a9e118a9909c35c'/>
<id>9979aa7778e664bb31efb4281a9e118a9909c35c</id>
<content type='text'>
Remove the swiotlb prototypes from the architecture code and use the
common header file instead.

Signed-off-by: Joerg Roedel &lt;joerg.roedel@amd.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove the swiotlb prototypes from the architecture code and use the
common header file instead.

Signed-off-by: Joerg Roedel &lt;joerg.roedel@amd.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Pull vtd-iommu into release branch</title>
<updated>2008-10-17T20:52:22+00:00</updated>
<author>
<name>Tony Luck</name>
<email>tony.luck@intel.com</email>
</author>
<published>2008-10-17T20:52:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fe393164c529f72def1952fb66c11732d0984d78'/>
<id>fe393164c529f72def1952fb66c11732d0984d78</id>
<content type='text'>
Conflicts:
	arch/ia64/kernel/acpi.c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	arch/ia64/kernel/acpi.c
</pre>
</div>
</content>
</entry>
<entry>
<title>[IA64] Add Variable Page Size and IA64 Support in Intel IOMMU</title>
<updated>2008-10-17T19:14:13+00:00</updated>
<author>
<name>Fenghua Yu</name>
<email>fenghua.yu@intel.com</email>
</author>
<published>2008-10-17T19:14:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=62fdd7678a26efadd6ac5c2869543caff77d2df0'/>
<id>62fdd7678a26efadd6ac5c2869543caff77d2df0</id>
<content type='text'>
The patch contains Intel IOMMU IA64 specific code. It defines new
machvec dig_vtd, hooks for IOMMU, DMAR table detection, cache line flush
function, etc.

For a generic kernel with CONFIG_DMAR=y, if Intel IOMMU is detected,
dig_vtd is used for machinve vector. Otherwise, kernel falls back to
dig machine vector. Kernel parameter "machvec=dig" or "intel_iommu=off"
can be used to force kernel to boot dig machine vector.

Signed-off-by: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The patch contains Intel IOMMU IA64 specific code. It defines new
machvec dig_vtd, hooks for IOMMU, DMAR table detection, cache line flush
function, etc.

For a generic kernel with CONFIG_DMAR=y, if Intel IOMMU is detected,
dig_vtd is used for machinve vector. Otherwise, kernel falls back to
dig machine vector. Kernel parameter "machvec=dig" or "intel_iommu=off"
can be used to force kernel to boot dig machine vector.

Signed-off-by: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
