diff --git a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/README.txt b/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/README.txt deleted file mode 100644 index fe9a22eacf3..00000000000 --- a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/README.txt +++ /dev/null @@ -1,391 +0,0 @@ -README -====== - -This README file discusses the port of NuttX to the RX65N RSK2MB board. This board features the RX65N (R5F565NEHDFC 176pin) - -Contents -======== - - - Board Features - - Status/Open Issues - - Serial Console - - LEDs - - Networking - - RTC - - USB Device - - RSPI - - RIIC - - DTC - - USB Host - - USB Host Hub - - Debugging - -Board Features -============== -- Mounted devices: RX65N (R5F565NEDDFC: No Encrypt Function, Code Flash 2MB, Pin Count 176-pin), - or RX65N (R5F565NEHDFC: Supported Encrypt Function, Code Flash 2MB, Pin Count 176-pin) -- Mounts TFT Display. Graphic LCD controller can be evaluated -- 1 channel Ethernet can be evaluated -- RX65N builds in Trusted Secure IP. AES encryption function and robust key management can be evaluated (*) -- Mounts SD slot. If an optional Wireless LAN expansion board package for RSK (RTK0ZZZZZZP00000BR#WS) is used, - Wireless LAN can evaluated -- 1 channel USB Function and 1 channel USB Host can be evaluated -- In addition, CAN, RSPI, QSPI, etc. can be evaluated - -See the RX65N RSK2MB website for further information about this board: - - - https://www.renesas.com/br/en/products/software-tools/boards-and-kits/starter-kits/renesas-starter-kitplus-for-rx65n-2mb.html - -Serial Console -============== -RX65N RSK2MB supports 12 serial ports (SCI0 - SCI12), however only 1 port can be tested(SCI8, which is the serial console). Only SCI8 port can be tested which is connected to USB Serial port. - -Serial ports SCI1, SCI2, SCI9-SCI12, cannot be tested because they are multiplexed to other Rx65N controller interfaces. - -Following SCI ports are configured w.r.t RX65N pin configuration -SCI1 Pin Configuration : ------------ -RX65N RSK2MB - Function ------------ - PF2 RXD1 - PF1 TXD1 ------------- - -SCI2 Pin Configuration : ------------ -RX65N RSK2MB - Function ------------ - P52 RXD2 - P50 TXD2 ------------- -SCI8 Pin Configuration : ------------ -RX65N RSK2MB - Function ------------ - PJ1 RXD8 - PJ2 TXD8 ------------- - -Serial Connection Configuration -------------------------------- -1. RSK2MB board needs to be connected to PC, using USB cable(One end of which is connected to PC, other end -connected to USB serial port on H/W board). -2. RSK USB Serial Driver needs to be downloaded on PC side. -3. Configure Teraterm to 115200 baud. - -LEDs -==== - - The RX65N RSK2MB board has 2 Power LED's(PowerLED5 LED_G, PowerLED3 LED_G) and 4 user LED's (LED_G, LED_O, LED_R, LED_R). - - If enabled 4 User LED's are simply turned on when the board boots - successfully, and is blinking on panic / assertion failed. - -Networking -========== - -Ethernet Connections --------------------- - - ------ --------- - RX65N - RSK2MB Ethernet - Pin Function - ------ --------- - PC4 ET0_TX_CLK - P76 ET0_RX_CLK - P80 ET0_TX_EN - PC6 ET0_ETXD3 - PC5 ET0_ETXD2 - P82 ET0_ETXD1 - P81 ET0_ETXD0 - PC3 ET0_TX_ER - PC2 ET0_RX_DV - PC0 ET0_ERXD3 - PC1 ET0_ERXD2 - P74 ET0_ERXD1 - P75 ET0_ERXD0 - P77 ET0_RX_ER - P83 ET0_CRS - PC7 ET0_COL - P72 ET0_MDC - P71 ET0_MDIO - P54 ET0_LINKSTA - ------ --------- - -USB Device ------------ - -For the RX65N RSK2MB board, to be used as USB Device, the following Jumper settings need to be done - -J7 Short Pin 2 & Pin 3 -J16 Short Pin 1 & Pin 2 - -NuttX Configurations --------------------- -The following configurations, need to be enabled for network. - -CONFIG_RX65N_EMAC=y : Enable the EMAC Peripheral for RX65N -CONFIG_RX65N_EMAC0=y : Enable the EMAC Peripheral for RX65N -CONFIG_RX65N_EMAC0_PHYSR=30 : Address of PHY status register -CONFIG_RX65N_EMAC0_PHYSR_100FD=0x18 : Needed for PHY CHIP -CONFIG_RX65N_EMAC0_PHYSR_100HD=0x08 : " " " " " " -CONFIG_RX65N_EMAC0_PHYSR_10FD=0x14 : " " " " " " -CONFIG_RX65N_EMAC0_PHYSR_10HD=0x04 : " " " " " " -CONFIG_RX65N_EMAC0_PHYSR_ALTCONFIG=y : " " " " " " -CONFIG_RX65N_EMAC0_PHYSR_ALTMODE=0x1c : " " " " " " -CONFIG_RX65N_EMAC0_RMII=y -CONFIG_RX65N_EMAC0_PHYADDR=0 : PHY is at address 1 - -CONFIG_SCHED_WORKQUEUE=y : Work queue support is needed -CONFIG_SCHED_HPWORK=y : High Priority Work queue support -CONFIG_SCHED_LPWORK=y : Low Priority Work queue support - -Using the network with NSH --------------------------- -The IP address is configured using DHCP, using the below mentioned configurations : - -CONFIG_NETUTILS_DHCPC=y -CONFIG_NETUTILS_DHCPD=y -CONFIG_NSH_DHCPC=y -CONFIG_NETINIT_DHCPC=y - -nsh> ifconfig - eth0 HWaddr 00:e0:de:ad:be:ef at UP - IPaddr:10.75.24.53 DRaddr:10.75.24.1 Mask:255.255.254.0 - -You can use ping to test for connectivity to the host (Careful, -Window firewalls usually block ping-related ICMP traffic). On the -target side, you can: - - nsh> ping 10.75.24.250 - PING 10.75.24.250 56 bytes of data - 56 bytes from 10.75.24.250: icmp_seq=1 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=2 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=3 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=4 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=5 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=6 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=7 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=8 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=9 time=0 ms - 56 bytes from 10.75.24.250: icmp_seq=10 time=0 ms - 10 packets transmitted, 10 received, 0% packet loss, time 10100 ms - -On the host side, you should also be able to ping the RX65N-RSK2MB: - - $ ping 10.75.24.53 - -Configure UDP blaster application as mentioned below : - -CONFIG_EXAMPLES_UDPBLASTER_HOSTIP=0x0a4b1801 (10.75.24.1) ------> Gateway IP -CONFIG_EXAMPLES_UDPBLASTER_NETMASK=0xfffffe00 (255.255.254.0) --------> Netmask -CONFIG_EXAMPLES_UDPBLASTER_TARGETIP=0x0a4b189b (10.75.24.155) ---------> Target IP - -RSPI ------------ - -For RX65N RSK2MB board, Following pin is configured for all channels in JA3. -Channel0: Pin number 7 and 8 in JA3 is used for MOSIA and MISOA respectively -Channel1: Pin number 35 and 36 in JA3 is used for MOSIB and MISOB respectively -Channel2: Pin number 18 and 19 in JA3 is used for MOSIC and MISOC respectively -and for enabling these pin need to select DSW-SEL0 by making off SW4-4 - -USB Host -============= -For the RX65N RSK2MB board, to be used as USB Device, the following Jumper settings need to be done - -J7 Short Pin 1 & Pin 2 -J16 Short Pin 2 & Pin 3 - -USB Device -============= -For the RX65N RSK2MB board, to be used as USB Device, the following Jumper settings need to be done - -J7 Short Pin 2 & Pin 3 -J16 Short Pin 1 & Pin 2 - -RTC -========== - -NuttX Configurations ---------------- -The configurations listed in Renesas_RX65N_NuttX_RTC_Design.doc need to be enabled. - -RTC Testing ------------------- -The test cases mentioned in Renesas_RX65N_RTC_Test_Cases.xls are to be executed -as part of RTC testing. - -The following configurations are to be enabled as part of testing RTC examples. -CONFIG_EXAMPLES_ALARM -CONFIG_EXAMPLES_PERIODIC -CONFIG_EXAMPLES_CARRY - -USB Device Configurations --------------------------- -The following configurations need to be enabled for USB Device - -CONFIG_USBDEV -CONFIG_CDCACM -CONFIG_STDIO_BUFFER_SIZE=64 -CONFIG_STDIO_LINEBUFFER - -USB Device Testing ------------------------- -The following testing is executed as part of USB Device testing on RX65N target for GRROSE board - -echo "This is a test for USB Device" > /dev/ttyACM0 - -xd 0 0x20000 > /dev/ttyACM0 - -The output of the commands mentioned above should be seen on the USB Device COM port on teraterm - -RSPI Configurations --------------------------- -The following configurations need to be enabled for RSPI - -CONFIG_SYSTEM_SPITOOL=y - -RSPI Testing ------------------------- -The following testing is executed as part of RSPI testing on RX65N target for RSK2MB board - -On RSK2MB board, all three channels 0, 1 and 2 has been brought out and tested. - -Following command can be used for testing RSPI communication to slave device. -spi exch -b 0 -x 4 aabbccdd -where b is bus number and x is Number of word to exchange. - -RIIC Configurations --------------------------- -The following configurations need to be enabled for RIIC. - -CONFIG_SYSTEM_I2CTOOL=y - -RIIC Testing ------------------------- -The following testing is executed as part of RIIC testing on RX65N target for RSK2MB board - -On RSK2MB board only channel 0 can be tested. - -Following command can be used for testing RIIC communication with slave device. -i2c set -b 0 -a 53 -r 0 10 -where b is bus number, a is the slave address, r is the register address and 10 is the value to be written. - -DTC Configurations --------------------------- -The following configurations need to be enabled for DTC. - -CONFIG_SYSTEM_SPITOOL=y - -DTC Testing ------------------------- - -DTC has been tested using RSPI driver. - -USB Host Configurations --------------------------- -The following configurations need to be enabled for USB Host Mode driver to -support USB HID Keyboard class and MSC Class. - -CONFIG_USBHOST=y -CONFIG_USBHOST_HIDKBD=y -CONFIG_FS_FAT=y -CONFIG_EXAMPLES_HIDKBD=y - -USB Host Driver Testing ------------------------- -The Following Class Drivers were tested as mentioned below : - -- USB HID Keyboard Class -On the NuttX Console "hidkbd" application was executed - -nsh> hidkbd -The characters typed from the keyboard were executed correctly. - -- USB MSC Class - -The MSC device is enumerated as sda in /dev directory. - -The block device is mounted using the command as mentioned below : - -mount -t vfat /dev/sda /mnt - -The MSC device is mounted in /dev directory - -The copy command is executed to test the Read/Write functionality - -cp /mnt/ /mnt/file_copy.txt - -USB Host Hub Configurations --------------------------- -The following configurations need to be enabled for USB Host Mode driver to -support USB HID Keyboard class and MSC Class. - -CONFIG_RX65N_USBHOST=y -CONFIG_USBHOST_HUB=y -CONFIG_USBHOST_ASYNCH=y -CONFIG_USBHOST=y -CONFIG_USBHOST_HIDKBD=y -CONFIG_FS_FAT=y -CONFIG_EXAMPLES_HIDKBD=y - -USB Host Hub Driver Testing ------------------------- -The Following Class Drivers were tested as mentioned below : - -- USB HID Keyboard Class -On the NuttX Console "hidkbd" application was executed - -nsh> hidkbd -The characters typed from the keyboard were executed correctly. - -- USB MSC Class -The MSC device is enumerated as sda in /dev directory. - -The block device is mounted using the command as mentioned below : - -mount -t vfat /dev/sda /mnt - -The MSC device is mounted in /dev directory - -The copy command is executed to test the Read/Write functionality - -cp /mnt/ /mnt/file_copy.txt - -Debugging -========== -1. NuttX needs to be compiled in Cygwin environment on Windows. - -The following Configuration needs to be set, in order to do source level debugging. - -CONFIG_DEBUG_SYMBOLS = y (Set this option, using menuconfig only, DO NOT Enable this as default configuration). - -2. Download & Install Renesas e2studio IDE -3. Load the project(NuttX built on Cygwin) as Makefile project with existing code -4. Right click on the project, and select Debug Configurations -5. The binary(NuttX) needs to be loaded using E1/E2 Emulator -6. Select the Device name as R5F565NE and Emulator as E1/E2(whichever is being used) -7. Select Connection type as JTAG -8. Load and run the binary - -Flashing NuttX -=============== -Alternatively, NuttX binary can be flashed using Renesas flash programmer tool without using e2 studio/Cygwin - -Below are the steps mentioned to flash NuttX binary using Renesas flash programmer tool(RFP). - -1.In order to flash using Renesas flash programmer tool, nuttx.mot file should be generated. -2. Add the following lines in tools/Unix.mk file : -ifeq ($(CONFIG_MOTOROLA_SREC),y) - @echo "CP: nuttx.mot" - $(Q) $(OBJCOPY) $(OBJCOPYARGS) $(BIN) -O srec -I elf32-rx-be-ns nuttx.mot -endif -3. Add CONFIG_MOTOROLA_SREC=y in defconfig file or choose make menucofig->Build Setup-> Binary Output Format-> - Select Motorola SREC format. -4. Download Renesas flash programmer tool from https://www.renesas.com/in/en/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html#downloads -5. Refer to the user manual document, for steps to flash NuttX binary using RFP tool. diff --git a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/ROMFS.txt b/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/ROMFS.txt deleted file mode 100644 index 5a95e8f404b..00000000000 --- a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/ROMFS.txt +++ /dev/null @@ -1,85 +0,0 @@ -README -====== - - Overview - -------- - This directory contains logic to support a custom ROMFS system-init script - and start-up script. These scripts are used by by the NSH when it starts - provided that CONFIG_ETC_ROMFS=y. These scripts provide a ROMFS volume - that will be mounted at /etc and will look like this at run-time: - - NuttShell (NSH) NuttX-8.2 - nsh> ls -l /etc - /etc: - dr-xr-xr-x 0 . - -r--r--r-- 20 group - dr-xr-xr-x 0 init.d/ - -r--r--r-- 35 passwd - /etc/init.d: - dr-xr-xr-x 0 .. - -r--r--r-- 110 rcS - -r--r--r-- 110 rc.sysinit - nsh> - - /etc/init.d/rc.sysinit is system init script; /etc/init.d/rcS is the start-up - script; /etc/passwd is a the password file. It supports a single user: - - USERNAME: admin - PASSWORD: Administrator - - nsh> cat /etc/passwd - admin:8Tv+Hbmr3pLVb5HHZgd26D:0:0:/ - - The encrypted passwords in the provided passwd file are only valid if the - TEA key is set to: 012345678 9abcdef0 012345678 9abcdef0. Changes to either - the key or the password word will require regeneration of the nsh_romfimg.h - header file. - - The format of the password file is: - - user:x:uid:gid:home - - Where: - user: User name - x: Encrypted password - uid: User ID (0 for now) - gid: Group ID (0 for now) - home: Login directory (/ for now) - - /etc/group is a group file. It is not currently used. - - nsh> cat /etc/group - root:*:0:root,admin - - The format of the group file is: - - group:x:gid:users - - Where: - group: The group name - x: Group password - gid: Group ID - users: A comma separated list of members of the group - - Updating the ROMFS File System - ------------------------------ - The content on the nsh_romfsimg.h header file is generated from a sample - directory structure. That directory structure is contained in the etc/ directory and can be modified per the following steps: - - 1. Change directory to etc/: - - cd etc/ - - 2. Make modifications as desired. - - 3. Create the new ROMFS image. - - genromfs -f romfs_img -d etc -V SimEtcVol - - 4. Convert the ROMFS image to a C header file - - xxd -i romfs_img >nsh_romfsimg.h - - 5. Edit nsh_romfsimg.h, mark both data definitions as 'const' so that - that will be stored in FLASH. - diff --git a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/index.rst b/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/index.rst index 245a4d69e90..d3f027967c0 100644 --- a/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/index.rst +++ b/Documentation/platforms/renesas/rx65n/boards/rx65n-rsk2mb/index.rst @@ -2,8 +2,475 @@ RX65N RSK2MB ============ -.. include:: README.txt - :literal: +.. tags:: arch:renesas -.. include:: ROMFS.txt - :literal: +This README file discusses the port of NuttX to the RX65N RSK2MB board. This board features the RX65N (R5F565NEHDFC +176 pin) + +Board Features +============== + +- Mounted devices: RX65N (R5F565NEDDFC: No Encrypt Function, Code Flash 2MB, Pin + Count 176-pin), or RX65N (R5F565NEHDFC: Supported Encrypt Function, Code Flash + 2MB, Pin Count 176-pin) +- Mounts TFT Display. Graphic LCD controller can be evaluated +- 1 channel Ethernet can be evaluated +- RX65N builds in Trusted Secure IP. AES encryption function and robust key + management can be evaluated (*) +- Mounts SD slot. If an optional Wireless LAN expansion board package for RSK + (RTK0ZZZZZZP00000BR#WS) is used, Wireless + LAN can evaluated +- 1 channel USB Function and 1 channel USB Host can be evaluated +- In addition, CAN, RSPI, QSPI, etc. can be evaluated + +See the RX65N RSK2MB website for further information about this board: +https://www.renesas.com/br/en/products/software-tools/boards-and-kits/starter-kits/renesas-starter-kitplus-for-rx65n-2mb.html + +Serial Console +============== + +RX65N RSK2MB supports 12 serial ports (SCI0 - SCI12), however only 1 port can be +tested (SCI8, which is the serial console). Only SCI8 port can be tested which +is connected to USB Serial port. + +Serial ports SCI1, SCI2, SCI9-SCI12, cannot be tested because they are +multiplexed to other Rx65N controller interfaces. + +Following SCI ports are configured w.r.t RX65N pin configuration + +SCI1 Pin Configuration: + +=== ======== +Pin Function +=== ======== +PF2 RXD1 +PF1 TXD1 +=== ======== + +SCI2 Pin Configuration: + +=== ======== +Pin Function +=== ======== +P52 RXD2 +P50 TXD2 +=== ======== + +SCI8 Pin Configuration: + +=== ======== +Pin Function +=== ======== +PJ1 RXD8 +PJ2 TXD8 +=== ======== + +Serial Connection Configuration +------------------------------- + +1. RSK2MB board needs to be connected to PC, using USB cable (One end of which is + connected to PC, other end connected to USB serial port on H/W board). + +2. RSK USB Serial Driver needs to be downloaded on PC side. + +3. Configure Teraterm to 115200 baud. + +LEDs +==== + +The RX65N RSK2MB board has 2 Power LEDs: + +* PowerLED5 LED_G +* PowerLED3 LED_G + +and 4 user LEDs: + +* LED_G +* LED_O +* LED_R +* LED_R + +If enabled 4 User LED's are simply turned on when the board boots successfully, +and is blinking on panic / assertion failed. + +Networking +========== + +Ethernet Connections +-------------------- + +=== =========== +Pin Function +=== =========== +PC4 ET0_TX_CLK +P76 ET0_RX_CLK +P80 ET0_TX_EN +PC6 ET0_ETXD3 +PC5 ET0_ETXD2 +P82 ET0_ETXD1 +P81 ET0_ETXD0 +PC3 ET0_TX_ER +PC2 ET0_RX_DV +PC0 ET0_ERXD3 +PC1 ET0_ERXD2 +P74 ET0_ERXD1 +P75 ET0_ERXD0 +P77 ET0_RX_ER +P83 ET0_CRS +PC7 ET0_COL +P72 ET0_MDC +P71 ET0_MDIO +P54 ET0_LINKSTA +=== =========== + +USB Device +----------- + +For the RX65N RSK2MB board, to be used as USB Device, the following jumper +settings need to be done: + +* J7: Short Pin 2 & Pin 3 +* J16: Short Pin 1 & Pin 2 + +NuttX Configuration Options +--------------------------- + +The following configurations, need to be enabled for network. + +* ``CONFIG_RX65N_EMAC=y``: Enable the EMAC Peripheral for RX65N +* ``CONFIG_RX65N_EMAC0=y``: Enable the EMAC Peripheral for RX65N +* ``CONFIG_RX65N_EMAC0_PHYSR=30``: Address of PHY status register +* ``CONFIG_RX65N_EMAC0_PHYSR_100FD=0x18``: Needed for PHY CHIP +* ``CONFIG_RX65N_EMAC0_PHYSR_100HD=0x08`` +* ``CONFIG_RX65N_EMAC0_PHYSR_10FD=0x14`` +* ``CONFIG_RX65N_EMAC0_PHYSR_10HD=0x04`` +* ``CONFIG_RX65N_EMAC0_PHYSR_ALTCONFIG=y`` +* ``CONFIG_RX65N_EMAC0_PHYSR_ALTMODE=0x1c`` +* ``CONFIG_RX65N_EMAC0_RMII=y`` +* ``CONFIG_RX65N_EMAC0_PHYADDR=0``: PHY is at address 1 +* ``CONFIG_SCHED_WORKQUEUE=y``: Work queue support is needed +* ``CONFIG_SCHED_HPWORK=y``: High Priority Work queue support +* ``CONFIG_SCHED_LPWORK=y``: Low Priority Work queue support + +Using the network with NSH +-------------------------- + +The IP address is configured using DHCP, using the below mentioned +configurations: + +* ``CONFIG_NETUTILS_DHCPC=y`` +* ``CONFIG_NETUTILS_DHCPD=y`` +* ``CONFIG_NSH_DHCPC=y`` +* ``CONFIG_NETINIT_DHCPC=y`` + +.. code:: console + + nsh> ifconfig + eth0 HWaddr 00:e0:de:ad:be:ef at UP + IPaddr:10.75.24.53 DRaddr:10.75.24.1 Mask:255.255.254.0 + +You can use ping to test for connectivity to the host (Careful, Window firewalls +usually block ping-related ICMP traffic). On the target side, you can: + +.. code:: console + + nsh> ping 10.75.24.250 + PING 10.75.24.250 56 bytes of data + 56 bytes from 10.75.24.250: icmp_seq=1 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=2 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=3 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=4 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=5 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=6 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=7 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=8 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=9 time=0 ms + 56 bytes from 10.75.24.250: icmp_seq=10 time=0 ms + 10 packets transmitted, 10 received, 0% packet loss, time 10100 ms + +On the host side, you should also be able to ping the RX65N-RSK2MB: + +.. code:: console + + $ ping 10.75.24.53 + +Configure UDP blaster application as mentioned below: + +* ``CONFIG_EXAMPLES_UDPBLASTER_HOSTIP=0x0a4b1801`` (10.75.24.1) ------> Gateway IP +* ``CONFIG_EXAMPLES_UDPBLASTER_NETMASK=0xfffffe00`` (255.255.254.0) --------> Netmask +* ``CONFIG_EXAMPLES_UDPBLASTER_TARGETIP=0x0a4b189b`` (10.75.24.155) ---------> Target IP + +RSPI +---- + +For RX65N RSK2MB board, the following pins are configured for all channels in JA3. + +* Channel0: Pin number 7 and 8 in JA3 is used for MOSIA and MISOA respectively +* Channel1: Pin number 35 and 36 in JA3 is used for MOSIB and MISOB respectively +* Channel2: Pin number 18 and 19 in JA3 is used for MOSIC and MISOC respectively + +and for enabling these pins, you need to select DSW-SEL0 by turning off SW4-4. + +USB Host Jumpers +================ + +For the RX65N RSK2MB board, to be used as USB Device, the following jumper +settings need to be done: + +* J7: Short Pin 1 & Pin 2 +* J16: Short Pin 2 & Pin 3 + +USB Device Jumpers +================== + +For the RX65N RSK2MB board, to be used as USB Device, the following jumper +settings need to be done: + +* J7: Short Pin 2 & Pin 3 +* J16: Short Pin 1 & Pin 2 + +RTC +=== + +NuttX Configurations +-------------------- + +The configurations listed in Renesas_RX65N_NuttX_RTC_Design.doc need to be enabled. + +RTC Testing +----------- + +The test cases mentioned in Renesas_RX65N_RTC_Test_Cases.xls are to be executed as part of RTC testing. + +The following configurations are to be enabled as part of testing RTC examples. + +* ``CONFIG_EXAMPLES_ALARM`` +* ``CONFIG_EXAMPLES_PERIODIC`` +* ``CONFIG_EXAMPLES_CARRY`` + +USB Device Configurations +------------------------- + +The following configurations need to be enabled for USB Device + +* ``CONFIG_USBDEV`` +* ``CONFIG_CDCACM`` +* ``CONFIG_STDIO_BUFFER_SIZE=64`` +* ``CONFIG_STDIO_LINEBUFFER`` + +USB Device Testing +------------------ + +The following testing is executed as part of USB Device testing on RX65N target for GRROSE board + +.. code:: console + + $ echo "This is a test for USB Device" > /dev/ttyACM0 + $ xd 0 0x20000 > /dev/ttyACM0 + +The output of the commands mentioned above should be seen on the USB Device COM port on teraterm + +RSPI Configurations +------------------- + +The following configurations need to be enabled for RSPI + +* ``CONFIG_SYSTEM_SPITOOL=y`` + +RSPI Testing +------------ + +The following testing is executed as part of RSPI testing on RX65N target for RSK2MB board + +On RSK2MB board, all three channels 0, 1 and 2 has been brought out and tested. + +Following command can be used for testing RSPI communication to slave device. + +.. code:: console + + $ spi exch -b 0 -x 4 aabbccdd + +where b is bus number and x is number of words to exchange. + +RIIC Configurations +------------------- + +The following configurations need to be enabled for RIIC. + +* ``CONFIG_SYSTEM_I2CTOOL=y`` + +RIIC Testing +------------ + +The following testing is executed as part of RIIC testing on RX65N target for RSK2MB board + +On RSK2MB board only channel 0 can be tested. + +Following command can be used for testing RIIC communication with slave device. + +.. code:: console + + $ i2c set -b 0 -a 53 -r 0 10 + +where b is bus number, a is the slave address, r is the register address and 10 is the value to be written. + +DTC Configurations +------------------ + +The following configurations need to be enabled for DTC. + +* ``CONFIG_SYSTEM_SPITOOL=y`` + +DTC Testing +----------- + +DTC has been tested using RSPI driver. + +USB Host Configurations +----------------------- + +The following configurations need to be enabled for USB Host Mode driver to +support USB HID Keyboard class and MSC Class. + +* ``CONFIG_USBHOST=y`` +* ``CONFIG_USBHOST_HIDKBD=y`` +* ``CONFIG_FS_FAT=y`` +* ``CONFIG_EXAMPLES_HIDKBD=y`` + +USB Host Driver Testing +------------------------ + +The Following Class Drivers were tested as mentioned below : + +- USB HID Keyboard Class + +On the NuttX Console "hidkbd" application was executed + +.. code:: console + + nsh> hidkbd + +The characters typed from the keyboard were executed correctly. + +- USB MSC Class + +The MSC device is enumerated as ``sda`` in ``/dev`` directory. + +The block device is mounted using the command as mentioned below: + +.. code:: console + + $ mount -t vfat /dev/sda /mnt + +The MSC device is mounted in ``/dev`` directory + +The copy command is executed to test the Read/Write functionality + +.. code:: console + + $ cp /mnt/ /mnt/file_copy.txt + +USB Host Hub Configurations +--------------------------- + +The following configurations need to be enabled for USB Host Mode driver to support USB HID Keyboard class and MSC +Class. + +* ``CONFIG_RX65N_USBHOST=y`` +* ``CONFIG_USBHOST_HUB=y`` +* ``CONFIG_USBHOST_ASYNCH=y`` +* ``CONFIG_USBHOST=y`` +* ``CONFIG_USBHOST_HIDKBD=y`` +* ``CONFIG_FS_FAT=y`` +* ``CONFIG_EXAMPLES_HIDKBD=y`` + +USB Host Hub Driver Testing +--------------------------- + +The Following Class Drivers were tested as mentioned below : + +- USB HID Keyboard Class + +On the NuttX Console "hidkbd" application was executed + +.. code:: console + + nsh> hidkbd + +The characters typed from the keyboard were executed correctly. + +- USB MSC Class + +The MSC device is enumerated as ``sda`` in ``/dev`` directory. + +The block device is mounted using the command as mentioned below: + +.. code:: console + + $ mount -t vfat /dev/sda /mnt + +The MSC device is mounted in ``/dev`` directory + +The copy command is executed to test the Read/Write functionality + +.. code:: console + + $ cp /mnt/ /mnt/file_copy.txt + +Debugging +========= + +1. NuttX needs to be compiled in Cygwin environment on Windows. + +The following Configuration needs to be set, in order to do source level +debugging. + +``CONFIG_DEBUG_SYMBOLS=y`` (Set this option, using menuconfig only, DO NOT +Enable this as default configuration). + +2. Download & Install Renesas e2studio IDE +3. Load the project (NuttX built on Cygwin) as Makefile project with existing + code +4. Right click on the project, and select Debug Configurations +5. The binary (NuttX) needs to be loaded using E1/E2 Emulator +6. Select the Device name as R5F565NE and Emulator as E1/E2 (whichever is being + used) +7. Select Connection type as JTAG +8. Load and run the binary + +Flashing NuttX +============== + +Alternatively, NuttX binary can be flashed using Renesas flash programmer tool +without using e2 studio/Cygwin + +Below are the steps mentioned to flash NuttX binary using Renesas flash +programmer tool (RFP). + +1. In order to flash using Renesas flash programmer tool, nuttx.mot file should + be generated. + +2. Add the following lines in ``tools/Unix.mk`` file: + +.. code:: makefile + + ifeq ($(CONFIG_MOTOROLA_SREC),y) + @echo "CP: nuttx.mot" + $(Q) $(OBJCOPY) $(OBJCOPYARGS) $(BIN) -O srec -I elf32-rx-be-ns nuttx.mot + endif + +3. Add ``CONFIG_MOTOROLA_SREC=y`` in defconfig file or choose ``make + menuconfig`` -> Build Setup-> Binary Output Format-> Select Motorola SREC + format. + +4. Download Renesas flash programmer tool from + https://www.renesas.com/in/en/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html#downloads + +5. Refer to the user manual document, for steps to flash NuttX binary using RFP + tool. + +ROMFS +===== + +See the "ROMFS" section of +:doc:`/platforms/renesas/rx65n/boards/rx65n-grrose/index` for more information.