eren-terzioglu opened a new pull request, #16686:
URL: https://github.com/apache/nuttx/pull/16686

   ## Summary
   
   <!-- This field should contain a summary of the changes. It will be 
pre-filled with the commit's message and descriptions. Adjust it accordingly -->
   
   After common version update of Espressif devices, dedicated GPIO for Xtensa 
based espressif devices started to failed build. This MR fixes that 
   
   * arch/xtensa: Fix dedicated GPIO build error
   
   Fix dedicated GPIO build error for esp32[-s2|-s3]
   
   ## Impact
   <!-- Please fill the following sections with YES/NO and provide a brief 
explanation -->
   
   Impact on user: No, it is a bugfix
   <!-- Does it impact user's applications? How? -->
   
   Impact on build: No
   <!-- Does it impact on building NuttX? How? (please describe the required 
changes on the build system) -->
   
   Impact on hardware: No
   <!-- Does it impact a specific hardware supported by NuttX? -->
   
   Impact on documentation: No
   <!-- Does it impact the existing documentation? Please provide additional 
documentation to reflect that -->
   
   Impact on security: No
   <!-- Does it impact NuttX's security? -->
   
   Impact on compatibility: No
   <!-- Does it impact compatibility between previous and current versions? Is 
this a breaking change? -->
   
   ## Testing
   <!-- Please provide all the testing procedure. Consider that upstream 
reviewers should be able to reproduce the same testing performed internally -->
   
   ### Building
   <!-- Provide how to build the test for each SoC being tested -->
   
   ```
   make distclean && ./tools/configure.sh esp32s3-devkit:gpio && kconfig-tweak 
-d NDEBUG; kconfig-tweak -e CONFIG_ESPRESSIF_DEDICATED_GPIO &&  make 
olddefconfig && make -j && make download ESPTOOL_PORT=/dev/ttyUSB0 
ESPTOOL_BAUD=115200 ESPTOOL_BINDIR=../esp-bins
   ```
   
   ### Running
   <!-- Provide how to run the test for each SoC being tested -->
   
   [Same steps in PR](https://github.com/apache/nuttx/pull/16223)
   
   Sample app I used:
   
   ```
   #include <nuttx/config.h>
   #include <inttypes.h>
   #include <stdio.h>
   #include <fcntl.h>
   #include <unistd.h>
   #include <syslog.h>
   #include <sys/types.h>
   #include <sys/ioctl.h>
   #include <nuttx/ioexpander/gpio.h>
   #include <stdlib.h>
   #include <string.h>
   #include <errno.h>
   #include <debug.h>
   
   #define ESP_DEDIC_GPIO_PATH "/dev/gpio3"
   #define COUNT_LIMIT 5
   
   int main(int argc, char *argv[])
   {
     int fd;
     int count = 0;
     int rd_val = 0;
     int wr_mask = 0xffff;
     int wr_val = 1;
   
     fd = open(ESP_DEDIC_GPIO_PATH, O_RDWR);
     wr_arg.mask = 0xffff;
     wr_arg.value = 1;
     while (count < COUNT_LIMIT)
       {
         write(fd, &wr_val, wr_mask);
         read(fd, &rd_val, sizeof(uint32_t));
         printf("Read value: %d\n", rd_val);
     
         wr_val = !wr_val;
         count++;
         usleep(1000000);
       }
   
     close(fd);
     return OK;
   
   }
   ```
   
   ### Results
   <!-- Provide tests' results and runtime logs -->
   
   Output should look like this:
   
   ```
   esp_dedic_gpio_bundle_write: Writing 1 with mask: 65535
   esp_dedic_gpio_bundle_read: Reading int pin...
   Read value: 1
   esp_dedic_gpio_bundle_write: Writing 0 with mask: 65535
   esp_dedic_gpio_bundle_read: Reading int pin...
   Read value: 0
   esp_dedic_gpio_bundle_write: Writing 1 with mask: 65535
   esp_dedic_gpio_bundle_read: Reading int pin...
   Read value: 1
   esp_dedic_gpio_bundle_write: Writing 0 with mask: 65535
   esp_dedic_gpio_bundle_read: Reading int pin...
   Read value: 0
   esp_dedic_gpio_bundle_write: Writing 1 with mask: 65535
   esp_dedic_gpio_bundle_read: Reading int pin...
   Read value: 1
   nsh> 
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to