Hi Sebastien,

On 09/12/10 23:24, Sébastien MENNETRIER wrote:
I am reading 0x40000030 to see the value of GPACR.
In the file "arch/m68knommu/platform/523x/config.c", GPACR is defined :
         uint8_t *gpacr = (uint8_t *) (MCF_IPSBAR + MCF523x_GPACR);
         *gpacr = 0x0C;

And "MCF523x_GPACR" is defined in file "arch/m68k/include/asm/m523xsim.h" :
#define MCF523x_GPACR (0x30)

Hmmm, this is not in the original source (uClinux-dist-20101026).
Did the etpu patch add it in?  Did you add it in?

Double check your reading and writing of the SACU registers.
Put trace all around it, and print the address you are accessing
as well - just to be sure.

Regards
Greg




In the file "arch/m68k/include/asm/colfire.h", I see :
#if defined(CONFIG_M523x) || defined(CONFIG_M527x) ||
defined(CONFIG_M528x) || \
     defined(CONFIG_M520x)
#undef MCF_MBAR
#define MCF_MBAR MCF_IPSBAR

And MCF523x_ETPU is define :
#define MCF523x_ETPU 0x1D0000

So I think that "MCF_MBAR + MCF523x_ETPU" = "IPSBAR + 0x1D0000" =
0x401D0000.

And the structure is defined at this adresse.


2010/12/9 Jim Donelson <ucli...@jimdonelson.com
<mailto:ucli...@jimdonelson.com>>

    Well, I'm not sure why you are reading 0x40000030, when the registers
    start at 0x401D0000.
    "MCF_MBAR + MCF523x_ETPU sounds wrong as the registers are defined to
    start at IPSBAR + 0x1D0000, so 0x401D0000 sound correct to me for the
    first register.


    On Thu, Dec 9, 2010 at 7:03 AM, Sébastien MENNETRIER
    <smennetr...@epsi.fr <mailto:smennetr...@epsi.fr>> wrote:
     > Hello,
     > Thanks for your help Jim.
     > The structure seem have the good alignement.
     > The structure is declaring at the adress : 0x401D0000
     >       struct eTPU_struct *eTPU = (struct eTPU_struct *)0x401D0000;
     > And in the kernel code :
     > In file "./arch/m68k/include/asm/m523xsim.h" : #define MCF523x_ETPU
     >  0x1D0000
     > In the driver file "./drivers/misc/mcfetpu_serial.c", there are
    "MCF_MBAR +
     > MCF523x_ETPU" with MCF_MBAR = MCF_IPSBAR = 0x40000000
     > So it's the same adress.
     > I made a driver to see the GPACR and the PACR* :
     > uint8_t *gpacr = (uint8_t *) (0x40000030);
     > uint8_t *pacr0 = (uint8_t *) (0x40000024);
     > uint8_t *pacr1 = (uint8_t *) (0x40000025);
     > uint8_t *pacr2 = (uint8_t *) (0x40000026);
     > uint8_t *pacr3 = (uint8_t *) (0x40000027);
     > uint8_t *pacr4 = (uint8_t *) (0x40000028);
     > uint8_t *pacr5 = (uint8_t *) (0x4000002A);
     > uint8_t *pacr6 = (uint8_t *) (0x4000002B);
     > uint8_t *pacr7 = (uint8_t *) (0x4000002C);
     > uint8_t *pacr8 = (uint8_t *) (0x4000002E);
     > printk(KERN_DEBUG "GPACR : %#x", *gpacr);
     > printk(KERN_DEBUG "PACR0 : %#x", *pacr0);
     > printk(KERN_DEBUG "PACR1 : %#x", *pacr1);
     > printk(KERN_DEBUG "PACR2 : %#x", *pacr2);
     > printk(KERN_DEBUG "PACR3 : %#x", *pacr3);
     > printk(KERN_DEBUG "PACR4 : %#x", *pacr4);
     > printk(KERN_DEBUG "PACR5 : %#x", *pacr5);
     > printk(KERN_DEBUG "PACR6 : %#x", *pacr6);
     > printk(KERN_DEBUG "PACR7 : %#x", *pacr7);
     > printk(KERN_DEBUG "PACR8 : %#x", *pacr8);
     > But they are all equal at "0x00".
     > It's very strange, isn't it?
     > Are they an other security to protect the register?
     > MENNETRIER Sébastien
     > FRANCE
     >
     >
     > 2010/12/9 Jim Donelson <ucli...@jimdonelson.com
    <mailto:ucli...@jimdonelson.com>>
     >>
     >> Probably has to do with structure alignment. Not sure what the
    packing
     >> options/pragmas are for that situation.
     >>
     >> On Thu, Dec 9, 2010 at 4:54 AM, Sébastien MENNETRIER
    <smennetr...@epsi.fr <mailto:smennetr...@epsi.fr>>
     >> wrote:
     >>>
     >>> Hello,
     >>> I work on a MCF5235 coldfire and with "uClinux-dist-20101026".
    I try to
     >>> use the eTPU.
     >>> I have install the driver and dowload the application to use
    eTPU on
     >>> freescale website.
     >>> When I start the programme, there are an error : "Access Error
    Exception
     >>> 12: Error on data read".
     >>> So I modify the file :
     >>> "uClinux-dist/linux-2.6.x/arch/m68knommu/platform/523x/config.c".
     >>> I have modify "*gpacr" and all "*pacrx" to obtain the access to the
     >>> register.
     >>> uint8_t *gpacr = (uint8_t *) (MCF_IPSBAR + MCF523x_GPACR);
     >>> uint8_t *pacr1 = (uint8_t *) (MCF_IPSBAR + MCF523x_PACR1);
     >>> uint8_t *pacr4 = (uint8_t *) (MCF_IPSBAR + MCF523x_PACR4);
     >>> uint8_t *pacr7 = (uint8_t *) (MCF_IPSBAR + MCF523x_PACR7);
     >>> uint8_t *pacr8 = (uint8_t *) (MCF_IPSBAR + MCF523x_PACR8);
     >>>
     >>>
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     >>> // *gpacr = 0x04;
     >>> // *pacr1 = 0x40; /* EIM required for Chip Select access */
     >>> // *pacr4 = 0x40; /* I2C */
     >>> // *pacr7 = 0x44; /* INTC0 & 1 handy for debug */
     >>> // *pacr8 = 0x40; /* FEC MAC */
     >>>
     >>>
    //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     >>>                 *gpacr = 0x0C;
     >>> *pacr1 = 0x44; /* EIM required for Chip Select access */
     >>> *pacr4 = 0x44; /* I2C */
     >>> *pacr7 = 0x44; /* INTC0 & 1 handy for debug */
     >>> *pacr8 = 0x44; /* FEC MAC */
     >>>
     >>> But  this change did not solve the problem.
     >>> Can you help me please?
     >>>
     >>> MENNETRIER Sébastien
     >>> FRANCE
     >>> _______________________________________________
     >>> uClinux-dev mailing list
     >>> uClinux-dev@uclinux.org <mailto:uClinux-dev@uclinux.org>
     >>> http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
     >>> This message was resent by uclinux-dev@uclinux.org
    <mailto:uclinux-dev@uclinux.org>
     >>> To unsubscribe see:
     >>> http://mailman.uclinux.org/mailman/options/uclinux-dev
     >>
     >>
     >> _______________________________________________
     >> uClinux-dev mailing list
     >> uClinux-dev@uclinux.org <mailto:uClinux-dev@uclinux.org>
     >> http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
     >> This message was resent by uclinux-dev@uclinux.org
    <mailto:uclinux-dev@uclinux.org>
     >> To unsubscribe see:
     >> http://mailman.uclinux.org/mailman/options/uclinux-dev
     >
     >
     > _______________________________________________
     > uClinux-dev mailing list
     > uClinux-dev@uclinux.org <mailto:uClinux-dev@uclinux.org>
     > http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
     > This message was resent by uclinux-dev@uclinux.org
    <mailto:uclinux-dev@uclinux.org>
     > To unsubscribe see:
     > http://mailman.uclinux.org/mailman/options/uclinux-dev
     >
    _______________________________________________
    uClinux-dev mailing list
    uClinux-dev@uclinux.org <mailto:uClinux-dev@uclinux.org>
    http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
    This message was resent by uclinux-dev@uclinux.org
    <mailto:uclinux-dev@uclinux.org>
    To unsubscribe see:
    http://mailman.uclinux.org/mailman/options/uclinux-dev




_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


--
------------------------------------------------------------------------
Greg Ungerer  --  Principal Engineer        EMAIL:     g...@snapgear.com
SnapGear Group, McAfee                      PHONE:       +61 7 3435 2888
8 Gardner Close                             FAX:         +61 7 3217 5323
Milton, QLD, 4064, Australia                WEB: http://www.SnapGear.com
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to