On 9/20/07, <b class="gmail_sendername">Kamalesh Babulal</b> &lt;<a href="mailto:kamalesh@linux.vnet.ibm.com">kamalesh@linux.vnet.ibm.com</a>&gt; wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Alan Cox wrote:<br>&gt; On Thu, 20 Sep 2007 14:13:15 +0100<br>&gt; <a href="mailto:mel@skynet.ie">mel@skynet.ie</a> (Mel Gorman) wrote:<br>&gt;<br>&gt;<br>&gt;&gt; PPC64 building allmodconfig fails to compile drivers/ata/pata_scc.c . It
<br>&gt;&gt; doesn&#39;t show up on other arches because this driver is specific to the<br>&gt;&gt; architecture.<br>&gt;&gt;<br>&gt;&gt; drivers/ata/pata_scc.c: In function `scc_bmdma_status&#39;<br>&gt;&gt;<br>&gt;<br>&gt; Its not been updated to match the libata core changes. Try something like
<br>&gt; this. Whoever is maintaining it should also remove the prereset cable handling<br>&gt; code and use the proper cable detect method.<br>&gt;<br>&gt;<br>&gt; Signed-off-by: Alan Cox &lt;<a href="mailto:alan@redhat.com">
alan@redhat.com</a>&gt;<br>&gt;<br>&gt; diff -u --exclude-from /usr/src/exclude --new-file --recursive linux.vanilla-2.6.23rc6-mm1/drivers/ata/pata_scc.c linux-2.6.23rc6-mm1/drivers/ata/pata_scc.c<br>&gt; --- linux.vanilla-2.6.23rc6-mm1
/drivers/ata/pata_scc.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-09-18 15:32:51.000000000 +0100<br>&gt; +++ linux-2.6.23rc6-mm1/drivers/ata/pata_scc.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2007-09-20 14:23:32.879807760 +0100<br>&gt; @@ -731,7 +731,7 @@<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void __iomem *mmio = ap-&gt;
ioaddr.bmdma_addr;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; u8 host_stat = in_be32(mmio + SCC_DMA_STATUS);<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; u32 int_status = in_be32(mmio + SCC_DMA_INTST);<br>&gt; -&nbsp;&nbsp;&nbsp;&nbsp; struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap-&gt;active_tag);
<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; struct ata_queued_cmd *qc = ata_qc_from_tag(ap, ap-&gt;link.active_tag);<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; static int retry = 0;<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* return if IOS_SS is cleared */<br>&gt; @@ -860,10 +860,10 @@<br>&gt;&nbsp;&nbsp; *&nbsp;&nbsp; @deadline: deadline jiffies for the operation
<br>&gt;&nbsp;&nbsp; */<br>&gt;<br>&gt; -static int scc_pata_prereset(struct ata_port *ap, unsigned long deadline)<br>&gt; +static int scc_pata_prereset(struct ata_link *link, unsigned long deadline)<br>&gt;&nbsp;&nbsp;{<br>&gt; -&nbsp;&nbsp;&nbsp;&nbsp; ap-&gt;cbl = ATA_CBL_PATA80;
<br>&gt; -&nbsp;&nbsp;&nbsp;&nbsp; return ata_std_prereset(ap, deadline);<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; link-&gt;ap-&gt;cbl = ATA_CBL_PATA80;<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; return ata_std_prereset(link, deadline);<br>&gt;&nbsp;&nbsp;}<br>&gt;<br>&gt;&nbsp;&nbsp;/**<br>&gt; @@ -874,8 +874,9 @@<br>
&gt;&nbsp;&nbsp; *&nbsp;&nbsp; Note: Original code is ata_std_postreset().<br>&gt;&nbsp;&nbsp; */<br>&gt;<br>&gt; -static void scc_std_postreset (struct ata_port *ap, unsigned int *classes)<br>&gt; +static void scc_std_postreset (struct ata_link *link, unsigned int *classes)
<br>&gt;&nbsp;&nbsp;{<br>&gt;<br>&gt; -&nbsp;&nbsp;&nbsp;&nbsp; ap-&gt;cbl = ATA_CBL_PATA80;<br>&gt; -&nbsp;&nbsp;&nbsp;&nbsp; return ata_std_prereset(ap, deadline);<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; link-&gt;ap-&gt;cbl = ATA_CBL_PATA80;<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; return ata_std_prereset(link, deadline);
<br>&gt;&nbsp;&nbsp;}<br>&gt;<br>&gt;&nbsp;&nbsp;/**<br>&gt; @@ -874,8 +874,9 @@<br>&gt;&nbsp;&nbsp; *&nbsp;&nbsp; Note: Original code is ata_std_postreset().<br>&gt;&nbsp;&nbsp; */<br>&gt;<br>&gt; +&nbsp;&nbsp;&nbsp;&nbsp; struct ata_port *ap = link-&gt;ap;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DPRINTK(&quot;ENTER\n&quot;);
<br>&gt;<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* is double-select really necessary? */<br>&gt;<br>&gt;<br>Hi,<br><br>This patch solves the build failure, but with following warnings<br>&lt;snip&gt;</blockquote><div><br>sorry, have to fix the mail client, resending the build failure. 
<br></div><br></div>Hi,
<br>
<br>This patch solves the build failure, but with following warnings
<br>CC drivers/ata/pata_scc.o
<br>drivers/ata/pata_scc.c: In function 'scc_error_handler':
<br>drivers/ata/pata_scc.c:909: warning: passing argument 3 of 
'ata_bmdma_drive_eh' from incompatible pointer type
<br>
<br>and after that the build fails with
<br>
<br>CC [M] drivers/net/spider_net.o
<br>drivers/net/spider_net.c: In function 'spider_net_release_tx_chain':
<br>drivers/net/spider_net.c:818: error: 'dev' undeclared (first use in this 
function)
<br>drivers/net/spider_net.c:818: error: (Each undeclared identifier is 
reported only once
<br>drivers/net/spider_net.c:818: error: for each function it appears in.)
<br>drivers/net/spider_net.c: In function 'spider_net_xmit':
<br>drivers/net/spider_net.c:922: error: 'dev' undeclared (first use in this 
function)
<br>drivers/net/spider_net.c: In function 'spider_net_pass_skb_up':
<br>drivers/net/spider_net.c:1018: error: 'dev' undeclared (first use in 
this function)
<br>drivers/net/spider_net.c: In function 'spider_net_decode_one_descr':
<br>drivers/net/spider_net.c:1215: error: 'dev' undeclared (first use in 
this function)
<br>make[2]: *** [drivers/net/spider_net.o] Error 1
<br>make[1]: *** [drivers/net] Error 2
<br>make: *** [drivers] Error 2
<br>
<br>
<br><span class="moz-txt-tag">--&nbsp;<br></span>Thanks &amp; Regards,
<br>Kamalesh Babulal,
<br>Linux Technology Center,
<br>IBM, ISTL.
<br>
<br>