Skip to content

DHT22 on rockpro64 with armbian buster #3

@10RUPTiV

Description

@10RUPTiV

Hi,

We are trying to use it but having segmentation fault each time and we are having a bunch of warning while me "make" it!

g++ -fpermissive -Wno-write-strings -o dht22 .c
c_gpio.c: In function ‘int setup()’:
c_gpio.c:129:23: warning: cast from ‘volatile uint32_t
’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
if ((uint32_t)gpio_map < 0) {
^~~~~~~~
c_gpio.c:176:27: warning: invalid conversion from ‘void*’ to ‘uint8_t*’ {aka ‘unsigned char*’} [-fpermissive]
if ((gpio_mem = malloc(BLOCK_SIZE + (PAGE_SIZE-1))) == NULL)
~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
c_gpio.c:179:19: warning: cast from ‘uint8_t*’ {aka ‘unsigned char*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
if ((uint32_t)gpio_mem % PAGE_SIZE)
^~~~~~~~
c_gpio.c:180:44: warning: cast from ‘uint8_t*’ {aka ‘unsigned char*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
gpio_mem += PAGE_SIZE - ((uint32_t)gpio_mem % PAGE_SIZE);
^~~~~~~~
c_gpio.c:189:19: warning: cast from ‘volatile uint32_t*’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
if ((uint32_t)gpio_map < 0)
^~~~~~~~
c_gpio.c: In function ‘uint32_t sunxi_readl(volatile uint32_t*)’:
c_gpio.c:282:36: warning: cast from ‘volatile uint32_t*’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
uint32_t mmap_base = (uint32_t)addr & (~MAP_MASK);
^~~~
c_gpio.c:283:37: warning: cast from ‘volatile uint32_t*’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
uint32_t mmap_seek = ((uint32_t)addr - mmap_base) >> 2;
^~~~
c_gpio.c: In function ‘void sunxi_writel(volatile uint32_t*, uint32_t)’:
c_gpio.c:290:36: warning: cast from ‘volatile uint32_t*’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
uint32_t mmap_base = (uint32_t)addr & (~MAP_MASK);
^~~~
c_gpio.c:291:37: warning: cast from ‘volatile uint32_t*’ {aka ‘volatile unsigned int*’} to ‘uint32_t’ {aka ‘unsigned int’} loses precision [-fpermissive]
uint32_t mmap_seek =( (uint32_t)addr - mmap_base) >> 2;
^~~~
c_gpio.c: In function ‘int eventdetected(int)’:
c_gpio.c:219:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions