MPC5121e, Linux, simple IO ports
Anatolij Gustschin
agust at denx.de
Sun Mar 31 20:51:51 EST 2013
Hello,
On Thu, 21 Mar 2013 09:54:46 +0100
CF Studelec <cfoissac at studelec-sa.com> wrote:
> Hello,
>
> This is a simple board base on mpc5121e MCU.
>
>
> Gpio is detected: kernel is compiled with its support - i got
> gpiochip_find_base: found new base @224 in dmesg - on kernel 3.0.4.
>
>
> But i'm unable to access it through /sys/class/gpio. I can successfully
> export a pin (ie, if i type cat 224 > export, gpio224 is created), but i
> can't successfully control it:
>
>
>
> echo "out" > /sys/class/gpio/gpio224/direction
>
> cat /sys/class/gpio/gpio224/value
>
> 0
>
> echo 1 > /sys/class/gpio/gpio224/value
>
> cat /sys/class/gpio/gpio224/value
>
> 0
>
> My need is a simple chipselect (well, 3 chipselect exactly ), for a
> custom design. Running linux is mandatory. I suspect the MPC5121e to be
> in the bad function mode, so:
>
> - does anyone knows how to change mode ? What register can i acces and
> how ? does it worths a try ?
For GPIO0 - GPIO7 pins you additionally need to configure the pin mux
for GPIO mode, see IO_CONTROL_GP register description in the manual.
> - does anyone successfully performed simple IO control ?
We use it all the time, i.e. as SD-Card detect and/or
write-protect GPIOs, as SPI Chips-Select GPIOs, etc. It works.
> Last thing, i have tryed to access internal registers through /dev/mem,
> but no success. There are very few ressources available for this
> microcontroler, but i'm stick to it. Perhaps anybody knows how to access
> (read) internal registers with /proc or sys-fs ?
Accessing registers using /dev/mem should work (tested using
devmem2.c tool with recent v3.9-rc4 kernel. Should work with
older kernels too).
Alternatively (as a quick test) you could configure the registers
under U-Boot using "mw" command, assuming you are using U-Boot as
a bootloader.
HTH,
Anatolij
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office at denx.de
More information about the Linuxppc-dev
mailing list