On 2/14/06, Eugene Surovegin <ebs at ebshome.net> wrote: > On Tue, Feb 14, 2006 at 08:48:56AM -0500, Ed Goforth wrote: > > I posted the original from home, and didn't have the contents of the > > config register. It is > > cfg 0x00103e00 > > Which I interpret as having bit 11 set: "1 Enable GPIO11 as GPIO11" > > from the manual. > > > > I originally tried to call ioremap64(PPC440GX_GPIO0_ADDR,) directly, but got > > "unresolved symbol ioremap64". From inspection of ioremap(), the > > fixup for 0x40000700 translates to 0x140000700, and I get the same > > values in my code as I see from a "/proc/ocotea/gpio". > > > > Is my approach valid? > > It seems to be.
At least I've got that. :) > > Try writing the same GPIO output register value as you read from it > (without clearing bit 11). Also, try changing some other GPIO bit > (e.g. one which is not connected in your design). Maybe board hangs > exactly because you set GPIO bit 11 low :). I have successfully written back the same values that were read from it. I will try your suggestion about fiddling with other GPIO bits that we aren't (supposed to be) using. > > Also, connect scope to that GPIO pin and see what is really going on. > > -- > Eugene > Thanks, Ed