<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Benjamin Herrenschmidt wrote:
<blockquote cite="mid:1218267682.24157.366.camel@pasglop" type="cite">
<pre wrap="">On Thu, 2008-08-07 at 15:56 -0400, Steven A. Falco wrote:
</pre>
<blockquote type="cite">
<pre wrap="">I have added a compact flash to the external bus of a Sequoia
(PPC440EPx) evaluation board. It is wired to CS1, and U-boot is set to
configure CS1 to be at address 0xc1000000. U-boot can access the
device, and reports the correct partition table, etc. so I believe the
hardware is ok.
I've created a device-tree entry under the EBC0 section of the
sequoia.dts file:
pata@1,0 {
compatible = "harris,hydra_temp-pata", "ata-generic";
bank-width = <2>;
reg = <1 0 20 1 80 20>;
reg-shift = <4>;
pio-mode = <4>;
interrupts = <27 4>;
interrupt-parent = <&UIC0>;
};
};
This seems to be correct, because if I turn on debug in prom_parse, I
see a translation that looks reasonable:
</pre>
</blockquote>
<pre wrap=""><!---->
Did you check that the resulting physical address was indeed where you
device is supposed to be addressed ?
Ben
</pre>
</blockquote>
<br>
They were wrong - I misinterpreted the reg-shift to be like the
"stride" used by u-boot. But u-boot uses it as a multiplier, and
reg-shift is truly a shift. So, I changed the shift to "2", and now
the addresses are correct. I'm still having problems, but I'll start a
new thread, because the new problem concerns interrupts.<br>
<br>
Thanks,<br>
Steve<br>
<br>
</body>
</html>