gpio,adc: use pread instead of lseek + read 11/199411/3
authorKonrad Kuchciak <k.kuchciak@samsung.com>
Mon, 11 Feb 2019 07:39:44 +0000 (08:39 +0100)
committerKonrad Kuchciak <k.kuchciak@samsung.com>
Tue, 12 Feb 2019 12:21:15 +0000 (13:21 +0100)
Change-Id: Ibfcffb46715e55d28a3c17749101158e4dbd48e2
Signed-off-by: Konrad Kuchciak <k.kuchciak@samsung.com>
src/interface/peripheral_interface_adc.c
src/interface/peripheral_interface_gpio.c

index 9282858..bce9a50 100644 (file)
@@ -22,8 +22,7 @@ int peripheral_interface_adc_read(peripheral_adc_h adc, uint32_t *value)
        uint32_t tmp_val;
        char adc_buf[ADC_BUFFER_MAX] = {0, };
 
-       lseek(adc->fd, 0, SEEK_SET);
-       ret = read(adc->fd, &adc_buf, ADC_BUFFER_MAX);
+       ret = pread(adc->fd, &adc_buf, ADC_BUFFER_MAX, 0);
        CHECK_ERROR(ret <= 0);
 
        ret = sscanf(adc_buf, "%d", &tmp_val);
index e7b618f..c1e966f 100644 (file)
@@ -158,13 +158,8 @@ int peripheral_interface_gpio_read(peripheral_gpio_h gpio, uint32_t *value)
        int ret;
        int length = 1;
        char gpio_buf[GPIO_BUFFER_MAX] = {0, };
-       static GMutex mutex;
-
-       g_mutex_lock(&mutex);
-       lseek(gpio->fd_value, 0, SEEK_SET);
-       ret = read(gpio->fd_value, &gpio_buf, length);
-       g_mutex_unlock(&mutex);
 
+       ret = pread(gpio->fd_value, &gpio_buf, length, 0);
        CHECK_ERROR(ret != length);
 
        if (gpio_buf[0] == '0') {