-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Somebody in the thread at some point said:
| Andy Green wrote:
|> What happens if you paste (*(volatile unsigned *)buf) in place of the
|> ADDR usage? Is it OK?
|>
| also not work! :-)
| error message:
| "start_kboot.c:31: error: called object ‘1’ is not a function "

Ha yes you have to pass them into the asm block, I remember it now.  See
the following example block from the FIQ support:

        asm volatile (
        "mov       ip, sp\n\
        stmfd   sp!, {fp, ip, lr, pc}\n\
        sub     fp, ip, #4\n\
        mrs     %0, cpsr\n\
        msr     cpsr_c, %2      @ select FIQ mode\n\
        mov     r0, r0\n\
        ldmia   %1, {r8 - r14}\n\
        msr     cpsr_c, %0      @ return to SVC mode\n\
        mov     r0, r0\n\
        ldmfd   sp, {fp, sp, pc}"
        : "=&r" (tmp)
        : "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE));

At the bottom we use, eg, &regs->ARM_r8 from C, and we can use it as %1
in the assembly code.  You need to google about the exact syntax but
this is the method.

- -Andy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iEYEARECAAYFAkhsnvgACgkQOjLpvpq7dMrLIwCeJ4t82k+maUCLODx+K2fL56l5
ulsAoI1ZHy/ExBnLm41r1Su+5rwAK8YC
=5Zvf
-----END PGP SIGNATURE-----

Reply via email to