selected processor does not support ARM mode `dmb' - Raspberry Pi Forums


hi,

lost following code

code: select all

gpio_clr:		@ void gpio_clr(uint8_t pin) mov	r1, #1                      @ r1 = 1 mov	r0, r1, asl r0            @ r0 = 1 << pin ldr r7, =gpio_base	         @ r7 = gpio_base; --> load gpio_base's address ldr r7, [r7] str r0, [r7,#0x28]             @ r7[#0x28] = r0  --> gpio_base + #0x28 = r0 dmb bx	lr                               @ return
compile without -march going fine. however, when executing binary following :

code: select all

gpio_init() mem_fd = 3 io_mem = 0xdfe000 io = 0xdfe000 gpio_fsel_out() gpio_clr() illegal instruction 
setting -march=armv6k, gives me following

code: select all

  -o "src/gpio.o" "../src/gpio.s" -march=armv6k ../src/gpio.s: assembler messages: ../src/gpio.s:87: error: selected processor not support arm mode `dmb' 
questions here:
default -march?
while 'as' completes without errors, why invalid binary?
when arm version 'dmb' supported?
is/are alternative instruction(s) 'dmb'.

thanks. arjan

dmb armv7 , above, iirc. might available on v6<something> it's not available on 1176jzf-s in pi. there's coprocessor alternative, can't remember @ moment it's detailed in 1176-jzf-s trm.

<edit> https://gitorious.org/lambdapi/lambdapi ... s.h#line44

simon


raspberrypi



Comments

Popular posts from this blog

CAN'T INSTALL MAMBELFISH 1.5 FROM DIRECTORY - Joomla! Forum - community, help and support

error: expected initializer before 'void'

CPU load monitoring using GPIO and leds - Raspberry Pi Forums