Updated Ben Nanonote page with info from : http://en.qi-hardware.com/wiki/Hardware-Ben
authorRISCi_ATOM <bob@bobcall.me>
Fri, 13 Jan 2017 13:11:48 +0000 (08:11 -0500)
committerRISCi_ATOM <bob@bobcall.me>
Fri, 13 Jan 2017 13:11:48 +0000 (08:11 -0500)
Ben Nanonote.md

index 7c24af0db6363cdf291588c81f0c90b338d1b776..60971687d1d40969c8b45e12ae012666665afead 100644 (file)
@@ -1,21 +1,23 @@
-# Qi-hardware : Ben Nanonote\r
 \r
-* [JZ4720](http://en.ingenic.cn/product.aspx?ID=60) 336 MHz MIPS compatible processor from [http://www.ingenic.cn Ingenic Semiconductor Co.]\r
-* 3.0" 320x240 pixels LCD colour TFT (40x15 character in a text console)\r
+== Overview ==\r
 \r
-* 32MB SDRAM\r
+* [http://en.ingenic.cn/product.aspx?ID=60 JZ4720] 336 MHz MIPS compatible processor from [http://www.ingenic.cn Ingenic Semiconductor Co.]\r
 \r
-* 2GB NAND Flash Memory\r
+* 3.0" 320x240 pixels [[LCD|colour TFT LCD]] (40x15 character in a text console)\r
 \r
-* 1 SD microSDHC slot (SDIO capable)\r
+* 32MB [[SDRAM]] \r
+\r
+* 2GB [[NAND|NAND Flash]] Memory\r
+\r
+* 1 [[SD|microSDHC]] slot (SDIO capable)\r
 \r
 * 59 keys Keyboard\r
 \r
-* Stereo headphones connector, mono speaker and microphone audio interfaces.\r
+* Stereo headphones connector, mono speaker and microphone [[Audio_IN_OUT|audio interfaces]].\r
 \r
-* [USB](http://wiki.qi-hardware.com/wiki/USB_host) 2.0 High-Speed Device, [http://en.wikipedia.org/wiki/USB#Connector_types Mini B] connector\r
+* [http://wiki.qi-hardware.com/wiki/USB_host USB] 2.0 High-Speed Device, [http://en.wikipedia.org/wiki/USB#Connector_types Mini B] connector\r
 \r
-* 3.7V 850mAh Li-ion Battery and 5V 500mA \r
+* 3.7V 850mAh Li-ion Battery ( [[Compatible_batteries|Compatible batteries]]) and 5V 500mA [[Power_Supply_Circuit|DC input through USB port]]\r
 \r
 * Measured battery life time, idle, screen off: 12h59\r
 \r
 \r
 * Weight: 126g (includes battery)\r
 \r
-## System Info\r
+== Status ==\r
+\r
+* Flashing bootloader, kernel, and rootfs via USB works.\r
+* Serial console via GND/RXD/TXD pads under the battery works.\r
+* LCD works\r
+** After a few minutes of inactivity on the console, it will go blank. Pressing any key brings it back.\r
+* Keyboard works\r
+* Audio/ALSA works.\r
+* ...\r
+\r
+== Pinouts ==\r
+\r
+PCB 08.50 (ben)\r
+\r
+'''Micro-SD pins on testpads:'''\r
+\r
+ Pin  TP     note\r
+ ------------------\r
+ #1   TP14   data2\r
+ #2   TP15   cd/data3 / _CS\r
+ #3   TP17   cmd / mosi\r
+ #4   sdVCC  switched by Q4 (fet?) controlled via line from cpu (on TP11)\r
+ #5   TP16   clock\r
+ #6   GND\r
+ #7   TP12   data0 / miso\r
+ #8   TP13   data1\r
+\r
+'''Serial pins:'''\r
+\r
+See [[Ben_source_code#serial_console]].\r
+\r
+== System information ==\r
+\r
+ $ '''cat /proc/cpuinfo'''\r
+ system type             : JZ4740\r
+ processor               : 0\r
+ cpu model               : Ingenic JZRISC V4.15\r
+ BogoMIPS                : 335.05\r
+ wait instruction        : yes                                                   \r
+ microsecond timers      : no                                                    \r
+ tlb_entries             : 32                                                    \r
+ extra interrupt vector  : yes                                                   \r
+ hardware watchpoint     : yes, count: 1, address/irw mask: [0x0fff]             \r
+ ASEs implemented        :                                                       \r
+ shadow register sets    : 1                                                     \r
+ core                    : 0                                                     \r
+ VCED exceptions         : not available                                         \r
+ VCEI exceptions         : not available                                         \r
+\r
+ $ '''cat /proc/mtd'''\r
+ dev:    size   erasesize  name\r
+ mtd0: 00400000 00080000 "NAND BOOT partition"\r
+ mtd1: 00400000 00080000 "NAND KERNEL partition"\r
+ mtd2: 20000000 00080000 "NAND ROOTFS partition"\r
+ mtd3: 5f800000 00080000 "NAND DATA partition"\r
+\r
+ $ '''uname -a'''\r
+ Linux BenNanoNote 2.6.32.27 #1 PREEMPT Sat Mar 5 03:54:50 MSK 2011 mips GNU/Linux\r
+\r
+ $ '''cat /proc/iomem'''\r
+ 00000000-01ffffff : System RAM\r
+   00010000-0031162b : Kernel code\r
+   0031162c-0040877f : Kernel data\r
+ 10003000-10003037 : jz4740-rtc\r
+   10003000-10003037 : jz4740-rtc\r
+ 10020000-10020037 : jz4740-i2s\r
+   10020000-10020037 : jz4740-i2s\r
+ 10020080-10020087 : jz4740-codec\r
+   10020080-10020087 : jz4740-codec\r
+ 10021000-10030fff : jz4740-mmc.0\r
+   10021000-10030fff : jz4740-mmc\r
+ 10070000-10070030 : jz4740-adc\r
+   10070000-10070030 : jz4740-adc\r
+ 13010000-1301ffff : jz4740-nand.0\r
+   13010000-1301ffff : jz4740-nand\r
+ 13030000-1303ffff : jz-ohci.0\r
+ 13040000-1304ffff : jz-udc\r
+   13040000-1304ffff : jz-udc\r
+ 13050000-1305ffff : jz4740-fb\r
+   13050000-1305ffff : jz4740-fb\r
+\r
+ $ '''cat /proc/interrupts'''\r
+           CPU0       \r
+   2:      33611            MIPS  JZ4740 cascade interrupt\r
+  17:         20            INTC  serial\r
+  20:         56            INTC  jz4740-adc\r
+  22:         47            INTC  MMC/SD\r
+  23:          0            INTC  jz4740-rtc\r
+  28:          0            INTC  DMA\r
+  31:      32374            INTC  jz4740-timerirq\r
+  32:        527            INTC  jz-udc\r
+ 147:          0     GPIO Bank C  jz4740-battery\r
+ 152:          0     GPIO Bank D  MMC/SD detect changed\r
+ 170:          0     GPIO Bank D  matrix-keypad\r
+ 171:         94     GPIO Bank D  matrix-keypad\r
+ 172:         77     GPIO Bank D  matrix-keypad\r
+ 173:         17     GPIO Bank D  matrix-keypad\r
+ 174:        151     GPIO Bank D  matrix-keypad\r
+ 175:         13     GPIO Bank D  matrix-keypad\r
+ 176:        235     GPIO Bank D  matrix-keypad\r
+ 178:          0     GPIO Bank D  matrix-keypad\r
+ 180:          0     GPIO Bank D  gpio-charger.0\r
+ 181:          0     GPIO Bank D  Power\r
+ ERR:          0\r
+\r
+== GPIO pins ==\r
+\r
+The Jz4720 has only a limited number of pins as outputs to the board.  Furthermore, several functions take up gpio pins which are therefore not usable for other functions.  Those devices are the sdram and nand controller, lcd controller and mmc+sd controller.  Below is a table showing how they are used.  Please complete this table.  The missing entries are not connected to a pad in the Jz4720.\r
 \r
+'''Port A:'''\r
+* 01      sdram data 0\r
+* 03      sdram data 1\r
+* 05      sdram data 2\r
+* 07      sdram data 3\r
+* 08      sdram data 4\r
+* 09      sdram data 5\r
+* 10      sdram data 6\r
+* 11      sdram data 7\r
+* 12      sdram data 8\r
+* 13      sdram data 9\r
+* 15      sdram data 10\r
+* 17      sdram data 11\r
+* 22      sdram data 12\r
+* 26      sdram data 13\r
+* 28      sdram data 14\r
+* 30      sdram data 15\r
 \r
-$ cat /proc/cpuinfo \r
-system type             : JZ4740\r
-processor               : 0\r
-cpu model               : Ingenic JZRISC V4.15\r
-BogoMIPS                : 335.05\r
-wait instruction        : yes                                                   \r
-microsecond timers      : no                                                    \r
-tlb_entries             : 32                                                    \r
-extra interrupt vector  : yes                                                   \r
-hardware watchpoint     : yes, count: 1, address/irw mask: [0x0fff]             \r
-ASEs implemented        :                                                       \r
-shadow register sets    : 1                                                     \r
-core                    : 0                                                     \r
-VCED exceptions         : not available                                         \r
-VCEI exceptions         : not available                                         \r
+'''Port B:'''\r
+* 00      sdram address 0\r
+* 01      sdram address 1\r
+* 02      sdram address 2\r
+* 03      sdram address 3\r
+* 04      sdram address 4\r
+* 05      sdram address 5\r
+* 06      sdram address 6\r
+* 07      sdram address 7\r
+* 08      sdram address 8\r
+* 09      sdram address 9\r
+* 10      sdram address 10\r
+* 11      sdram address 11\r
+* 12      sdram address 12\r
+* 13      sdram address 13\r
+* 14      sdram address 14\r
+* 15      nand command latch\r
+* 16      nand address latch\r
+* 17      not connected (was marked "SHDN_HOST???", but schematic disagrees)\r
+* 18      TP23 (free)\r
+* 19      sdram dcs\r
+* 20      sdram ras\r
+* 21      sdram cas\r
+* 22      sdram write enable\r
+* 23      sdram cke\r
+* 24      sdram cko\r
+* 25      sdram cs1\r
+* 26      sdram cs2\r
+* 27      not connected (was marked "USB ID", but schematic disagrees)\r
+* 28      not connected\r
+* 29      Audio output enable (anti-pop control)\r
+* 30      TP25 (free)\r
+* 31      sdram write enable 0\r
 \r
-$ cat /proc/mtd\r
-dev:    size   erasesize  name\r
-mtd0: 00400000 00080000 "NAND BOOT partition"\r
-mtd1: 00400000 00080000 "NAND KERNEL partition"\r
-mtd2: 20000000 00080000 "NAND ROOTFS partition"\r
-mtd3: 5f800000 00080000 "NAND DATA partition"\r
+'''Port C:'''\r
+* 00      lcd data 0\r
+* 01      lcd data 1\r
+* 02      lcd data 2\r
+* 03      lcd data 3\r
+* 04      lcd data 4\r
+* 05      lcd data 5\r
+* 06      lcd data 6\r
+* 07      lcd data 7\r
+* 08      TP 35 (free)\r
+* 09      TP 36 (free)\r
+* 10      keyboard out 1, TP59\r
+* 11      keyboard out 2, TP60\r
+* 12      keyboard out 3, TP61\r
+* 13      keyboard out 4, TP62\r
+* 14      keyboard out 5, TP63\r
+* 15      keyboard out 6, TP64\r
+* 16      keyboard out 7, TP65\r
+* 17      keyboard out 8, TP66\r
+* 18      lcd pixel clock\r
+* 19      lcd hsync\r
+* 20      lcd vsync\r
+* 21      lcd SPI chipselect\r
+* 22      lcd SPI data\r
+* 23      lcd SPI clock\r
+* 24      sdram write enable 1\r
+* 27      Charge detect (analog input to read battery voltage).\r
+* 28      nand read enable\r
+* 29      nand write enable\r
+* 30      nand flash ready/busy\r
+* 31      not connected to a pad; PCSEL31 selects jtag (PCSEL31==0) or uart0 (PCSEL31==1) on pad 147(TxD)+148(RxD) (TP5+TP4).\r
 \r
-`\r
+'''Port D:'''\r
+* 00      SD Card detect\r
+* 02      SD Card power enable\r
+* 04      Speaker AMP enable (no audio unless this output is pulled low).\r
+* 06      Low power indicator (if 0, battery power is low).\r
+* 08      SD Card command\r
+* 09      SD Card clock\r
+* 10      SD Card data 1\r
+* 11      SD Card data 2\r
+* 12      SD Card data 3\r
+* 13      SD Card data 4\r
+* 15      TP 38 (free)\r
+* 18      Keyboard in 1, TP67\r
+* 19      Keyboard in 2, TP68\r
+* 20      Keyboard in 3, TP69\r
+* 21      Keyboard in 4, TP70\r
+* 22      Keyboard in 5, TP71\r
+* 23      Keyboard in 6, TP72\r
+* 24      Keyboard in 7, TP73\r
+* 25      uart0 transmit, TP75\r
+* 26      Keyboard in 8 (uart0 receive), TP74\r
+* 27      Buzzer, controlled with pwm4.  Piezo-electric buzzer; not related to soundcard output.\r
+* 28      USB detect (0 if usb power is present).\r
+* 29      power button (0 if pressed).\r
 \r
-## libreCMC Support\r
+=== Sorted by function ===\r
+* buzzer: D27\r
+* audio: B29, D4\r
+* power button: D29\r
+* keyboard: C10, C11, C12, C13, C14, C15, C16, C17, D18, D19, D20, D21, D22, D23, D24, D26(also uart receive)\r
+* uart: C31, D25, D26(also keyboard), uart is also available on jtag pads TP4+TP5 (without gpio overload).\r
+* sd/mmc: D0, D2, D8, D9, D10, D11, D12, D13\r
+* usb: D28\r
+* battery: C27, D6\r
+* sdram: A1, A3, A5, A7, A8, A9, A10, A11, A12, A13, A15, A17, A22, A26, A28, A30, B0, B1, B2, B3, B4, B5, B6, B7, B8, B9, B10, B11, B12, B13, B14, B19, B10, B21, B22, B23, B24, B25, B26, B31, C24\r
+* nand: B15, B16, C28, C29, C30\r
+* lcd: C0, C1, C2, C3, C4, C5, C6, C7, C18, C19, C20, C21, C22, C23\r
+* only test points: B18, B30, C8, C9, D15\r
+* unconnected pads: B17, B27, B28\r
 \r
-Support for the Ben Nanonote has existed since early versions of LibreWRT and\r
-is carried over from upstream. \r
+[[Category:Ben NanoNote]]\r
 \r
+This content is dual licensed under CC-BY-SA and GFDL and was obtained from [http://en.qi-hardware.com/wiki/Hardware-Ben](http://en.qi-hardware.com/wiki/Hardware-Ben)\r