1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-27 23:39:41 +02:00

some cleanup about xburst target

- make zImage compile fine
 - set the ip addr to 192.168.254.101
 - add more tty
 - format nand partition to 3
 - cleanup keyboard
 - cleanup gmp940b driver
 - add color font patch, use setfont2 in userspace
 - add FPU in config, change font to 6x11
 - add default CMDLINE, which is for zImage

Signed-off-by: Xiangfu Liu <xiangfu@sharism.cc>
This commit is contained in:
Xiangfu Liu 2010-10-30 06:58:45 -08:00
parent 0e584f25fb
commit 89b0b97506
20 changed files with 490 additions and 184 deletions

View File

@ -18,7 +18,7 @@ DEVICE_TYPE=other
include $(INCLUDE_DIR)/target.mk include $(INCLUDE_DIR)/target.mk
KERNELNAME:=uImage KERNELNAME:=uImage zImage
define Target/Description define Target/Description
Build firmware images for XBurst JZ47x0 based boards. Build firmware images for XBurst JZ47x0 based boards.

View File

@ -1,6 +0,0 @@
config mount
option target /card
option device /dev/mmcblk0p1
option fstype auto
option options rw,sync
option enabled 1

View File

@ -9,5 +9,7 @@ config interface loopback
config interface lan config interface lan
option ifname usb0 option ifname usb0
option proto static option proto static
option ipaddr 192.168.1.1 option ipaddr 192.168.254.101
option netmask 255.255.255.0 option netmask 255.255.255.0
option gateway 192.168.254.100
option dns 208.67.222.222

View File

@ -0,0 +1,8 @@
::sysinit:/etc/init.d/rcS S boot
::shutdown:/etc/init.d/rcS K stop
tts/0::askfirst:/bin/ash --login
ttyS0::askfirst:/bin/ash --login
tty1::respawn:/bin/ash --login
tty2::askfirst:/bin/ash --login
tty3::askfirst:/bin/ash --login
tty4::askfirst:/bin/ash --login

View File

@ -0,0 +1,5 @@
src/gz snapshots http://downloads.qi-hardware.com/software/packages/openwrt/xburst/latest
dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay

View File

@ -94,7 +94,8 @@ CONFIG_FORCE_MAX_ZONEORDER=12
# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set # CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
# CONFIG_FRAMEBUFFER_CONSOLE is not set # CONFIG_FRAMEBUFFER_CONSOLE is not set
CONFIG_FREEZER=y CONFIG_FREEZER=y
# CONFIG_FSNOTIFY is not set CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CMOS_UPDATE=y CONFIG_GENERIC_CMOS_UPDATE=y

View File

@ -1,10 +1,8 @@
/* /*
* linux/include/asm-mips/mach-jz4740/jz4740.h * arch/mips/include/asm/mach-jz4740/jz4740.h
*
* JZ4740 common definition. * JZ4740 common definition.
* *
* Copyright (C) 2006 - 2007 Ingenic Semiconductor Inc. * Copyright (C) 2006 - 2007 Ingenic Semiconductor Inc.
*
* Author: <lhhuang@ingenic.cn> * Author: <lhhuang@ingenic.cn>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
@ -18,7 +16,7 @@
#include <asm/mach-jz4740/regs.h> #include <asm/mach-jz4740/regs.h>
#include <asm/mach-jz4740/dma.h> #include <asm/mach-jz4740/dma.h>
/*------------------------------------------------------------------ /*
* Platform definitions * Platform definitions
*/ */
@ -26,10 +24,4 @@
#include <asm/mach-jz4740/board-qi_lb60.h> #include <asm/mach-jz4740/board-qi_lb60.h>
#endif #endif
/*------------------------------------------------------------------
* Follows are related to platform definitions
*/
#include <asm/mach-jz4740/serial.h>
#endif /* __ASM_JZ4740_H__ */ #endif /* __ASM_JZ4740_H__ */

View File

@ -1,30 +0,0 @@
/*
* linux/include/asm-mips/mach-jz4740/serial.h
*
* Ingenic's JZ4740 common include.
*
* Copyright (C) 2006 - 2007 Ingenic Semiconductor Inc.
*
* Author: <yliu@ingenic.cn>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#ifndef __ASM_BOARD_SERIAL_H__
#define __ASM_BOARD_SERIAL_H__
#ifndef CONFIG_SERIAL_MANY_PORTS
#undef RS_TABLE_SIZE
#define RS_TABLE_SIZE 1
#endif
#define JZ_BASE_BAUD (12000000/16)
#define JZ_SERIAL_PORT_DEFNS \
{ .baud_base = JZ_BASE_BAUD, .irq = IRQ_UART0, \
.flags = STD_COM_FLAGS, .iomem_base = (u8 *)UART0_BASE, \
.iomem_reg_shift = 2, .io_type = SERIAL_IO_MEM },
#endif /* __ASM_BORAD_SERIAL_H__ */

View File

@ -94,7 +94,11 @@ static struct mtd_partition qi_lb60_partitions_2gb[] = {
}, },
{ .name = "NAND ROOTFS partition", { .name = "NAND ROOTFS partition",
.offset = 8 * 0x100000, .offset = 8 * 0x100000,
.size = (504 + 512 + 1024) * 0x100000, .size = 256 * 0x100000,
},
{ .name = "NAND DATA partition",
.offset = 264 * 0x100000,
.size = 1784 * 0x100000,
}, },
}; };
@ -120,16 +124,12 @@ static struct jz_nand_platform_data qi_lb60_nand_pdata = {
}; };
/* Keyboard*/ /* Keyboard*/
#define KEY_QI_VOLUP KEY_F11
/* #define KEEP_UART_ALIVE #define KEY_QI_VOLDOWN KEY_F12
* don't define this. the keyboard and keyboard both work
*/
#define KEY_QI_QI KEY_F13 #define KEY_QI_QI KEY_F13
#define KEY_QI_UPRED KEY_RIGHTALT #define KEY_QI_ACUTE KEY_GRAVE
#define KEY_QI_VOLUP KEY_VOLUMEUP
#define KEY_QI_VOLDOWN KEY_VOLUMEDOWN
#define KEY_QI_FN KEY_LEFTCTRL #define KEY_QI_FN KEY_LEFTCTRL
#define KEY_QI_UPRED KEY_RIGHTALT
static const uint32_t qi_lb60_keymap[] = { static const uint32_t qi_lb60_keymap[] = {
KEY(0, 0, KEY_F1), /* S2 */ KEY(0, 0, KEY_F1), /* S2 */
@ -167,7 +167,7 @@ static const uint32_t qi_lb60_keymap[] = {
KEY(4, 0, KEY_TAB), /* S34 */ KEY(4, 0, KEY_TAB), /* S34 */
KEY(4, 1, KEY_CAPSLOCK), /* S35 */ KEY(4, 1, KEY_CAPSLOCK), /* S35 */
KEY(4, 2, KEY_BACKSLASH), /* S36 */ KEY(4, 2, KEY_BACKSLASH), /* S36 */
KEY(4, 3, KEY_APOSTROPHE), /* S37 */ KEY(4, 3, KEY_QI_ACUTE), /* S37 */
KEY(4, 4, KEY_COMMA), /* S38 */ KEY(4, 4, KEY_COMMA), /* S38 */
KEY(4, 5, KEY_DOT), /* S39 */ KEY(4, 5, KEY_DOT), /* S39 */
KEY(4, 6, KEY_SLASH), /* S40 */ KEY(4, 6, KEY_SLASH), /* S40 */
@ -188,12 +188,9 @@ static const uint32_t qi_lb60_keymap[] = {
KEY(6, 5, KEY_QI_VOLDOWN), /* S55 */ KEY(6, 5, KEY_QI_VOLDOWN), /* S55 */
KEY(6, 6, KEY_DOWN), /* S56 */ KEY(6, 6, KEY_DOWN), /* S56 */
KEY(6, 7, KEY_RIGHT), /* S57 */ KEY(6, 7, KEY_RIGHT), /* S57 */
#ifndef KEEP_UART_ALIVE
KEY(7, 0, KEY_LEFTSHIFT), /* S58 */ KEY(7, 0, KEY_LEFTSHIFT), /* S58 */
KEY(7, 1, KEY_LEFTALT), /* S59 */ KEY(7, 1, KEY_LEFTALT), /* S59 */
KEY(7, 2, KEY_QI_FN), /* S60 */ KEY(7, 2, KEY_QI_FN), /* S60 */
#endif
}; };
static const struct matrix_keymap_data qi_lb60_keymap_data = { static const struct matrix_keymap_data qi_lb60_keymap_data = {
@ -206,10 +203,7 @@ static const unsigned int qi_lb60_keypad_cols[] = {
}; };
static const unsigned int qi_lb60_keypad_rows[] = { static const unsigned int qi_lb60_keypad_rows[] = {
114, 115, 116, 117, 118, 119, 120, 114, 115, 116, 117, 118, 119, 120, 122,
#ifndef KEEP_UART_ALIVE
122,
#endif
}; };
static struct matrix_keypad_platform_data qi_lb60_pdata = { static struct matrix_keypad_platform_data qi_lb60_pdata = {

View File

@ -39,7 +39,6 @@
#include <asm/mach-jz4740/jz4740.h> #include <asm/mach-jz4740/jz4740.h>
#include <asm/mach-jz4740/regs.h> #include <asm/mach-jz4740/regs.h>
#include <asm/mach-jz4740/clock.h> #include <asm/mach-jz4740/clock.h>
#include <asm/mach-jz4740/serial.h>
#include "clock.h" #include "clock.h"

View File

@ -98,12 +98,12 @@ static void jz4740_init_timer(void)
static void jz4740_timer_enable(unsigned int timer) static void jz4740_timer_enable(unsigned int timer)
{ {
writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_STOP_CLEAR); writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_STOP_CLEAR);
writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_ENABLE_SET); writeb(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_ENABLE_SET);
} }
static void jz4740_timer_disable(unsigned int timer) static void jz4740_timer_disable(unsigned int timer)
{ {
writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_ENABLE_CLEAR); writeb(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_ENABLE_CLEAR);
writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_STOP_SET); writel(BIT(timer), jz4740_timer_base + JZ_REG_TIMER_STOP_SET);
} }

View File

@ -11,7 +11,7 @@ u_short plain_map[NR_KEYS] = {
0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69, 0xfb71, 0xfb77, 0xfb65, 0xfb72, 0xfb74, 0xfb79, 0xfb75, 0xfb69,
0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf201, 0xf706, 0xfb61, 0xfb73, 0xfb6f, 0xfb70, 0xf05b, 0xf05d, 0xf201, 0xf706, 0xfb61, 0xfb73,
0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf03b, 0xfb64, 0xfb66, 0xfb67, 0xfb68, 0xfb6a, 0xfb6b, 0xfb6c, 0xf03b,
0xf027, 0xf060, 0xf700, 0xf05c, 0xfb7a, 0xfb78, 0xfb63, 0xfb76, 0xf027, 0xf0b4, 0xf700, 0xf05c, 0xfb7a, 0xfb78, 0xfb63, 0xfb76,
0xfb62, 0xfb6e, 0xfb6d, 0xf02c, 0xf02e, 0xf02f, 0xf701, 0xf30c, 0xfb62, 0xfb6e, 0xfb6d, 0xf02c, 0xf02e, 0xf02f, 0xf701, 0xf30c,
0xf703, 0xf020, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf703, 0xf020, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf209, 0xf307, 0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf209, 0xf307,
@ -46,13 +46,13 @@ static u_short shift_map[NR_KEYS] = {
0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49, 0xfb51, 0xfb57, 0xfb45, 0xfb52, 0xfb54, 0xfb59, 0xfb55, 0xfb49,
0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf201, 0xf706, 0xfb41, 0xfb53, 0xfb4f, 0xfb50, 0xf07b, 0xf07d, 0xf201, 0xf706, 0xfb41, 0xfb53,
0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b, 0xfb4c, 0xf03a, 0xfb44, 0xfb46, 0xfb47, 0xfb48, 0xfb4a, 0xfb4b, 0xfb4c, 0xf03a,
0xf022, 0xf07e, 0xf700, 0xf07c, 0xfb5a, 0xfb58, 0xfb43, 0xfb56, 0xf022, 0xf060, 0xf700, 0xf07c, 0xfb5a, 0xfb58, 0xfb43, 0xfb56,
0xfb42, 0xfb4e, 0xfb4d, 0xf03b, 0xf03a, 0xf03f, 0xf701, 0xf30c, 0xfb42, 0xfb4e, 0xfb4d, 0xf03b, 0xf03a, 0xf03f, 0xf701, 0xf30c,
0xf703, 0xf020, 0xf207, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e, 0xf703, 0xf020, 0xf207, 0xf10a, 0xf10b, 0xf10c, 0xf10d, 0xf10e,
0xf10f, 0xf110, 0xf111, 0xf112, 0xf113, 0xf213, 0xf203, 0xf307, 0xf10f, 0xf110, 0xf111, 0xf112, 0xf113, 0xf213, 0xf203, 0xf307,
0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301, 0xf308, 0xf309, 0xf30b, 0xf304, 0xf305, 0xf306, 0xf30a, 0xf301,
0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf03e, 0xf10a, 0xf302, 0xf303, 0xf300, 0xf310, 0xf206, 0xf200, 0xf03e, 0xf20b,
0xf10b, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf20a, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603, 0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
0xf20b, 0xf601, 0xf602, 0xf117, 0xf600, 0xf20a, 0xf115, 0xf116, 0xf20b, 0xf601, 0xf602, 0xf117, 0xf600, 0xf20a, 0xf115, 0xf116,
0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d, 0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
@ -77,17 +77,17 @@ static u_short shift_map[NR_KEYS] = {
static u_short altgr_map[NR_KEYS] = { static u_short altgr_map[NR_KEYS] = {
0xf200, 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf040, 0xf200, 0xf024, 0xf200, 0xf200,
0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf07e, 0xf008, 0xf200, 0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf05c, 0xf07e, 0xf116, 0xf200,
0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e, 0xf026, 0xf02a, 0xf021, 0xf040, 0xf023, 0xf024, 0xf025, 0xf05e, 0xf026, 0xf02a,
0xf028, 0xf029, 0xf200, 0xf07e, 0xf201, 0xf706, 0xf0b0, 0xf0a8, 0xf028, 0xf029, 0xf200, 0xf07e, 0xf201, 0xf706, 0xf0b0, 0xf0a8,
0xf0a4, 0xf02d, 0xf05f, 0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf200, 0xf0a4, 0xf02d, 0xf05f, 0xf07b, 0xf05b, 0xf05d, 0xf07d, 0xf200,
0xf200, 0xf200, 0xf700, 0xf200, 0xf039, 0xf030, 0xf916, 0xfb76, 0xf200, 0xf200, 0xf700, 0xf200, 0xfb7a, 0xfb78, 0xf916, 0xfb76,
0xf915, 0xf03c, 0xf03e, 0xf027, 0xf022, 0xf200, 0xf701, 0xf30c, 0xf915, 0xf03c, 0xf03e, 0xf027, 0xf022, 0xf200, 0xf701, 0xf30c,
0xf703, 0xf200, 0xf207, 0xf031, 0xf032, 0xf033, 0xf034, 0xf035, 0xf703, 0xf200, 0xf207, 0xf50c, 0xf50d, 0xf50e, 0xf50f, 0xf510,
0xf036, 0xf037, 0xf038, 0xf514, 0xf515, 0xf208, 0xf202, 0xf911, 0xf511, 0xf512, 0xf513, 0xf514, 0xf515, 0xf208, 0xf202, 0xf911,
0xf912, 0xf913, 0xf30b, 0xf90e, 0xf90f, 0xf910, 0xf30a, 0xf90b, 0xf912, 0xf913, 0xf30b, 0xf90e, 0xf90f, 0xf910, 0xf30a, 0xf90b,
0xf90c, 0xf90d, 0xf90a, 0xf310, 0xf206, 0xf200, 0xf07c, 0xf516, 0xf90c, 0xf90d, 0xf90a, 0xf310, 0xf206, 0xf200, 0xf07c, 0xf118,
0xf517, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf119, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200, 0xf200,
0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603, 0xf30e, 0xf702, 0xf30d, 0xf01c, 0xf701, 0xf205, 0xf114, 0xf603,
0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116, 0xf118, 0xf601, 0xf602, 0xf117, 0xf600, 0xf119, 0xf115, 0xf116,
0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d, 0xf11a, 0xf10c, 0xf10d, 0xf11b, 0xf11c, 0xf110, 0xf311, 0xf11d,
@ -116,7 +116,7 @@ static u_short ctrl_map[NR_KEYS] = {
0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009, 0xf011, 0xf017, 0xf005, 0xf012, 0xf014, 0xf019, 0xf015, 0xf009,
0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf201, 0xf706, 0xf001, 0xf013, 0xf00f, 0xf010, 0xf01b, 0xf01d, 0xf201, 0xf706, 0xf001, 0xf013,
0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200, 0xf004, 0xf006, 0xf007, 0xf008, 0xf00a, 0xf00b, 0xf00c, 0xf200,
0xf007, 0xf000, 0xf700, 0xf01c, 0xf01a, 0xf018, 0xf003, 0xf016, 0xf007, 0xf200, 0xf700, 0xf01c, 0xf01a, 0xf018, 0xf003, 0xf016,
0xf002, 0xf00e, 0xf00d, 0xf200, 0xf20e, 0xf07f, 0xf701, 0xf30c, 0xf002, 0xf00e, 0xf00d, 0xf200, 0xf20e, 0xf07f, 0xf701, 0xf30c,
0xf703, 0xf000, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104, 0xf703, 0xf000, 0xf207, 0xf100, 0xf101, 0xf102, 0xf103, 0xf104,
0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf204, 0xf307, 0xf105, 0xf106, 0xf107, 0xf108, 0xf109, 0xf208, 0xf204, 0xf307,
@ -186,7 +186,7 @@ static u_short alt_map[NR_KEYS] = {
0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869, 0xf871, 0xf877, 0xf865, 0xf872, 0xf874, 0xf879, 0xf875, 0xf869,
0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf80d, 0xf706, 0xf861, 0xf873, 0xf86f, 0xf870, 0xf85b, 0xf85d, 0xf80d, 0xf706, 0xf861, 0xf873,
0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b, 0xf86c, 0xf83b, 0xf864, 0xf866, 0xf867, 0xf868, 0xf86a, 0xf86b, 0xf86c, 0xf83b,
0xf827, 0xf860, 0xf700, 0xf85c, 0xf87a, 0xf878, 0xf863, 0xf876, 0xf827, 0xf200, 0xf700, 0xf85c, 0xf87a, 0xf878, 0xf863, 0xf876,
0xf862, 0xf86e, 0xf86d, 0xf200, 0xf200, 0xf82f, 0xf701, 0xf30c, 0xf862, 0xf86e, 0xf86d, 0xf200, 0xf200, 0xf82f, 0xf701, 0xf30c,
0xf703, 0xf820, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504, 0xf703, 0xf820, 0xf207, 0xf500, 0xf501, 0xf502, 0xf503, 0xf504,
0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf209, 0xf907, 0xf505, 0xf506, 0xf507, 0xf508, 0xf509, 0xf208, 0xf209, 0xf907,
@ -324,8 +324,6 @@ char func_buf[] = {
'\033', '[', '1', '9', '~', 0, '\033', '[', '1', '9', '~', 0,
'\033', '[', '2', '0', '~', 0, '\033', '[', '2', '0', '~', 0,
'\033', '[', '2', '1', '~', 0, '\033', '[', '2', '1', '~', 0,
'\033', '[', '2', '3', '~', 0,
'\033', '[', '2', '4', '~', 0,
'\033', '[', '2', '5', '~', 0, '\033', '[', '2', '5', '~', 0,
'\033', '[', '2', '6', '~', 0, '\033', '[', '2', '6', '~', 0,
'\033', '[', '2', '8', '~', 0, '\033', '[', '2', '8', '~', 0,
@ -359,6 +357,8 @@ char *func_table[MAX_NR_FUNC] = {
func_buf + 37, func_buf + 37,
func_buf + 43, func_buf + 43,
func_buf + 49, func_buf + 49,
0,
0,
func_buf + 55, func_buf + 55,
func_buf + 61, func_buf + 61,
func_buf + 67, func_buf + 67,
@ -368,17 +368,15 @@ char *func_table[MAX_NR_FUNC] = {
func_buf + 91, func_buf + 91,
func_buf + 97, func_buf + 97,
func_buf + 103, func_buf + 103,
func_buf + 109, func_buf + 108,
func_buf + 115, func_buf + 113,
func_buf + 120, func_buf + 118,
func_buf + 125, func_buf + 123,
func_buf + 130, func_buf + 128,
func_buf + 135, func_buf + 133,
func_buf + 140,
func_buf + 145,
0, 0,
0, 0,
func_buf + 149, func_buf + 137,
0, 0,
}; };

View File

@ -176,6 +176,7 @@ static int __devinit gpm940b0_probe(struct spi_device *spi)
gpm940b0->enabled = 1; gpm940b0->enabled = 1;
dev_set_drvdata(&spi->dev, gpm940b0); dev_set_drvdata(&spi->dev, gpm940b0);
gpm940b0_write_reg(spi, 0x07, 0x8d);
gpm940b0_write_reg(spi, 0x13, 0x01); gpm940b0_write_reg(spi, 0x13, 0x01);
gpm940b0_write_reg(spi, 0x5, 0xc7); gpm940b0_write_reg(spi, 0x5, 0xc7);
return 0; return 0;

View File

@ -221,6 +221,10 @@ static int jzfb_setcolreg(unsigned regno, unsigned red, unsigned green, unsigned
if (regno >= fb->cmap.len) if (regno >= fb->cmap.len)
return -EINVAL; return -EINVAL;
red >>= 8;
green >>= 8;
blue >>= 8;
((uint32_t*)fb->pseudo_palette)[regno] = red << 16 | green << 8 | blue; ((uint32_t*)fb->pseudo_palette)[regno] = red << 16 | green << 8 | blue;
return 0; return 0;

View File

@ -19,6 +19,9 @@ endif
define Image/BuildKernel define Image/BuildKernel
cp $(LINUX_DIR)/arch/mips/boot/uImage $(BIN_DIR)/$(IMG_PREFIX)-uImage.bin cp $(LINUX_DIR)/arch/mips/boot/uImage $(BIN_DIR)/$(IMG_PREFIX)-uImage.bin
ifeq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
cp $(LINUX_DIR)/arch/mips/boot/compressed/zImage $(BIN_DIR)/$(IMG_PREFIX)-zImage.bin
endif
endef endef
define Image/Build/squashfs define Image/Build/squashfs

View File

@ -0,0 +1,300 @@
--- ./drivers/char/vt.c.orig 2010-03-16 04:52:04.000000000 +1300
+++ ./drivers/char/vt.c 2010-07-13 00:00:34.000000000 +1200
@@ -3894,6 +3894,7 @@
struct console_font font;
int rc = -EINVAL;
int size;
+ u8 std_font = *((u32*)op->data) != 0x6a127efd;
if (vc->vc_mode != KD_TEXT)
return -EINVAL;
@@ -3923,7 +3924,7 @@
}
if (op->width <= 0 || op->width > 32 || op->height > 32)
return -EINVAL;
- size = (op->width+7)/8 * 32 * op->charcount;
+ size = ( std_font ? (op->width+7)/8 * 32 : 4 * op->width * op->height) * op->charcount;
if (size > max_font_size)
return -ENOSPC;
font.charcount = op->charcount;
--- ./drivers/video/console/bitblit.c.orig 2010-07-01 11:30:17.000000000 +1200
+++ ./drivers/video/console/bitblit.c 2010-07-15 21:12:13.000000000 +1200
@@ -110,6 +110,12 @@
info->fbops->fb_imageblit(info, image);
}
+/* info: details of the framebuffer
+ * image: the off-screen image in which the character (sub)string is being
+ * prepared
+ * dst: a pointer to the top-left pixel in the off-screen image where the
+ * character (sub)string should go
+ */
static inline void bit_putcs_unaligned(struct vc_data *vc,
struct fb_info *info, const u16 *s,
u32 attr, u32 cnt, u32 d_pitch,
@@ -145,12 +151,62 @@
}
+void inline draw_glyph_row_inv( int pixels_across_glyph, u8 *src, u8 *target) {
+ u32 *pixel_on_glyph_sheet = (u32*) src;
+ u32 *pixel_on_screen = (u32*) target;
+
+ while( pixels_across_glyph--) {
+ *pixel_on_screen = ~(*pixel_on_glyph_sheet);
+ ++ pixel_on_glyph_sheet;
+ ++ pixel_on_screen;
+ }
+}
+
+void inline draw_glyph_row_75( int pixels_across_glyph, u8 *src, u8 *target) {
+ u32 pixel;
+ u32 *pixel_on_glyph_sheet = (u32*) src;
+ u32 *pixel_on_screen = (u32*) target;
+ /* Copy the pixels at 75% brightness */
+ while( pixels_across_glyph--) {
+ pixel = *pixel_on_glyph_sheet;
+ /* This is a cheeky way of multiplying by 0.75 */
+ pixel = ( pixel >> 1) & 0x7f7f7f7f;
+ pixel += ( pixel >> 1) & 0x7f7f7f7f;
+ *pixel_on_screen = pixel;
+ ++ pixel_on_glyph_sheet;
+ ++ pixel_on_screen;
+ }
+}
+
+/*
+ * width: the number of bytes required to store a single row of pixels from
+ * a glyph
+ * cellsize: the number of bytes required to store the pixels for a single
+ * glyph
+ * maxcnt: the maximum number of characters that can be blasted to the screen
+ * at one time ( limited by the amount of video RAM available for a
+ * (sub)string of characters)
+ * The NanoNote has 32-bits per pixel arranged BGRA
+ * info->fix.line_length: the number of bytes to advance through the frame
+ * buffer in order to get from the address of a pixel to
+ * the address of the pixel directly below it
+ * screen_row_hop: the number of 32-bit words to advance through the frame
+ * buffer in order to get from the address of a pixel to the
+ * address of the pixel directly below it on the screen
+ * glyph_on_screen: the address of the pixel on screen where the top-left of
+ * the next glyph should go
+ * row_on_screen: the address of the pixel on screen where the next row of
+ * pixels from the glyph should go
+ * row_on_glyph_sheet: pointer within font.data ( the glyph sheet) of the
+ * left-most pixel from the next row to be drawn
+ */
static void bit_putcs(struct vc_data *vc, struct fb_info *info,
const unsigned short *s, int count, int yy, int xx,
int fg, int bg)
{
struct fb_image image;
- u32 width = DIV_ROUND_UP(vc->vc_font.width, 8);
+ u8 std_font = *((u32*)vc->vc_font.data) != 0x6a127efd;
+ u32 width = std_font ? DIV_ROUND_UP(vc->vc_font.width, 8) : 4 * vc->vc_font.width;
u32 cellsize = width * vc->vc_font.height;
u32 maxcnt = info->pixmap.size/cellsize;
u32 scan_align = info->pixmap.scan_align - 1;
@@ -158,6 +214,10 @@
u32 mod = vc->vc_font.width % 8, cnt, pitch, size;
u32 attribute = get_attribute(info, scr_readw(s));
u8 *dst, *buf = NULL;
+ u32 screen_row_hop;
+ u16 charmask;
+ u8 *row_on_glyph_sheet, *glyph_on_screen, *row_on_screen;
+ u8 code_point, rows_left;
image.fg_color = fg;
image.bg_color = bg;
@@ -172,31 +232,73 @@
return;
}
- while (count) {
- if (count > maxcnt)
- cnt = maxcnt;
- else
- cnt = count;
-
- image.width = vc->vc_font.width * cnt;
- pitch = DIV_ROUND_UP(image.width, 8) + scan_align;
- pitch &= ~scan_align;
- size = pitch * image.height + buf_align;
- size &= ~buf_align;
- dst = fb_get_buffer_offset(info, &info->pixmap, size);
- image.data = dst;
-
- if (!mod)
- bit_putcs_aligned(vc, info, s, attribute, cnt, pitch,
- width, cellsize, &image, buf, dst);
- else
- bit_putcs_unaligned(vc, info, s, attribute, cnt,
- pitch, width, cellsize, &image,
- buf, dst);
-
- image.dx += cnt * vc->vc_font.width;
- count -= cnt;
- s += cnt;
+ if ( std_font) {
+ while (count) {
+ if (count > maxcnt)
+ cnt = maxcnt;
+ else
+ cnt = count;
+
+ image.width = vc->vc_font.width * cnt;
+ pitch = DIV_ROUND_UP(image.width, 8) + scan_align;
+ pitch &= ~scan_align;
+ size = pitch * image.height + buf_align;
+ size &= ~buf_align;
+ dst = fb_get_buffer_offset(info, &info->pixmap, size);
+ image.data = dst;
+
+ if (!mod)
+ bit_putcs_aligned(vc, info, s, attribute, cnt,
+ pitch, width, cellsize,
+ &image, buf, dst);
+ else
+ bit_putcs_unaligned(vc, info, s, attribute, cnt,
+ pitch, width, cellsize,
+ &image, buf, dst);
+
+ image.dx += cnt * vc->vc_font.width;
+ count -= cnt;
+ s += cnt;
+ }
+ }
+ else { /* The font is not a standard 1-bit font */
+ charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff;
+ screen_row_hop = info->fix.line_length;
+ glyph_on_screen = info->screen_base +
+ screen_row_hop * image.dy +
+ 4 * image.dx;
+ /* While there are still characters to draw.. */
+ while (count--) {
+ code_point = scr_readw(s++) & charmask;
+ row_on_glyph_sheet = vc->vc_font.data +
+ cellsize * code_point;
+ /* Draw every row of the glyph */
+ row_on_screen = glyph_on_screen;
+ rows_left = vc->vc_font.height;
+ while( rows_left--)
+ {
+ /* If the background color is NOT black then do
+ * reverse video */
+ if ( 0 < bg) {
+ draw_glyph_row_inv( vc->vc_font.width,
+ row_on_glyph_sheet,
+ row_on_screen);
+ }
+ /* If the foreground color is high-intensity */
+ else if ( 8 <= fg) {
+ memcpy( row_on_screen,
+ row_on_glyph_sheet, width);
+ }
+ else {
+ draw_glyph_row_75( vc->vc_font.width,
+ row_on_glyph_sheet,
+ row_on_screen);
+ }
+ row_on_glyph_sheet += width;
+ row_on_screen += screen_row_hop;
+ }
+ glyph_on_screen += width;
+ }
}
/* buf is always NULL except when in monochrome mode, so in this case
@@ -239,6 +341,29 @@
}
}
+static void bgra_cursor( struct vc_data *vc, struct fb_info *info, short c,
+ struct fb_cursor *cursor)
+{
+ u32 x = cursor->image.dx;
+ u32 y = cursor->image.dy;
+ u32 gw = vc->vc_font.width;
+ u32 gh = vc->vc_font.height;
+ u32 *pixel;
+
+ /* Draw the glyph to the screen */
+ bit_putcs( vc, info, &c, 1, y/gh, x/gw, 0, 0);
+
+ if ( cursor->enable) {
+ /* Invert the last row of pixels */
+ pixel = (u32*) ( info->screen_base +
+ info->fix.line_length * ( y + gh - 1) + 4 * x);
+ while ( gw--) {
+ *pixel ^= 0xffffffff;
+ ++ pixel;
+ }
+ }
+}
+
static void bit_cursor(struct vc_data *vc, struct fb_info *info, int mode,
int softback_lines, int fg, int bg)
{
@@ -250,6 +375,7 @@
int attribute, use_sw = (vc->vc_cursor_type & 0x10);
int err = 1;
char *src;
+ u8 std_font = *((u32*)vc->vc_font.data) != 0x6a127efd;
cursor.set = 0;
@@ -388,8 +514,14 @@
if (info->fbops->fb_cursor)
err = info->fbops->fb_cursor(info, &cursor);
- if (err)
- soft_cursor(info, &cursor);
+ if (err) {
+ if ( std_font) {
+ soft_cursor(info, &cursor);
+ }
+ else {
+ bgra_cursor( vc, info, c, &cursor);
+ }
+ }
ops->cursor_reset = 0;
}
--- ./drivers/video/console/fbcon.c.orig 2010-07-12 23:19:39.000000000 +1200
+++ ./drivers/video/console/fbcon.c 2010-07-13 20:18:41.000000000 +1200
@@ -2528,7 +2528,8 @@
int size;
int i, csum;
u8 *new_data, *data = font->data;
- int pitch = (font->width+7) >> 3;
+ u8 std_font = *((u32*)data) != 0x6a127efd;
+ int pitch = std_font ? (font->width+7) >> 3 : 4 * font->width;
/* Is there a reason why fbconsole couldn't handle any charcount >256?
* If not this check should be changed to charcount < 256 */
@@ -2547,6 +2548,7 @@
size = h * pitch * charcount;
new_data = kmalloc(FONT_EXTRA_WORDS * sizeof(int) + size, GFP_USER);
+ DPRINTK(KERN_INFO "fbcon_set_font size:%d\n", size);
if (!new_data)
return -ENOMEM;
@@ -2555,8 +2557,14 @@
FNTSIZE(new_data) = size;
FNTCHARCNT(new_data) = charcount;
REFCOUNT(new_data) = 0; /* usage counter */
- for (i=0; i< charcount; i++) {
- memcpy(new_data + i*h*pitch, data + i*32*pitch, h*pitch);
+ if ( std_font) {
+ for (i=0; i< charcount; i++) {
+ memcpy(new_data + i*h*pitch, data + i*32*pitch,
+ h*pitch);
+ }
+ }
+ else {
+ memcpy( new_data, data, size);
}
/* Since linux has a nice crc32 function use it for counting font

View File

@ -1,14 +1,18 @@
From d76e6b85f28891eecded962793fb8a02cdf26f39 Mon Sep 17 00:00:00 2001 From d76e6b85f28891eecded962793fb8a02cdf26f39 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de> From: Lars-Peter Clausen <lars@metafoo.de>
Date: Mon, 11 Jan 2010 04:29:51 +0100
Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-modifier-keys.patch Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-modifier-keys.patch
--- ---
drivers/char/defkeymap.map | 74 +++++++++++++++++++++++++++++++-------------
1 files changed, 52 insertions(+), 22 deletions(-)
--- a/drivers/char/defkeymap.map drivers/char/defkeymap.map | 80 ++++++++++++++++++++++++++++++--------------
+++ b/drivers/char/defkeymap.map 1 files changed, 54 insertions(+), 26 deletions(-)
Index: linux-2.6.32.10/drivers/char/defkeymap.map
===================================================================
--- linux-2.6.32.10.orig/drivers/char/defkeymap.map 2010-03-15 23:52:04.000000000 +0800
+++ linux-2.6.32.10/drivers/char/defkeymap.map 2010-06-04 21:50:10.855160218 +0800
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
# Default kernel keymap. This uses 7 modifier combinations. # Default kernel keymap. This uses 7 modifier combinations.
-keymaps 0-2,4-5,8,12 -keymaps 0-2,4-5,8,12
@ -16,18 +20,15 @@ Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-mo
# Change the above line into # Change the above line into
# keymaps 0-2,4-6,8,12 # keymaps 0-2,4-6,8,12
# in case you want the entries # in case you want the entries
@@ -45,24 +45,38 @@ keycode 12 = minus underscor @@ -47,22 +47,36 @@
control keycode 12 = Control_underscore
shift control keycode 12 = Control_underscore
alt keycode 12 = Meta_minus alt keycode 12 = Meta_minus
-keycode 13 = equal plus keycode 13 = equal plus
+keycode 13 = equal plus
alt keycode 13 = Meta_equal alt keycode 13 = Meta_equal
+ altgr keycode 13 = asciitilde + altgr keycode 13 = asciitilde
+ ctrll keycode 13 = three + ctrll keycode 13 = three
keycode 14 = Delete Delete keycode 14 = Delete Delete
- control keycode 14 = BackSpace - control keycode 14 = BackSpace
+ altgr keycode 14 = BackSpace + altgr keycode 14 = Remove
alt keycode 14 = Meta_Delete alt keycode 14 = Meta_Delete
keycode 15 = Tab Tab keycode 15 = Tab Tab
alt keycode 15 = Meta_Tab alt keycode 15 = Meta_Tab
@ -58,7 +59,7 @@ Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-mo
keycode 26 = bracketleft braceleft keycode 26 = bracketleft braceleft
control keycode 26 = Escape control keycode 26 = Escape
alt keycode 26 = Meta_bracketleft alt keycode 26 = Meta_bracketleft
@@ -71,19 +85,28 @@ keycode 27 = bracketright bracerigh @@ -71,27 +85,34 @@
alt keycode 27 = Meta_bracketright alt keycode 27 = Meta_bracketright
keycode 28 = Return keycode 28 = Return
alt keycode 28 = Meta_Control_m alt keycode 28 = Meta_Control_m
@ -91,16 +92,16 @@ Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-mo
keycode 39 = semicolon colon keycode 39 = semicolon colon
alt keycode 39 = Meta_semicolon alt keycode 39 = Meta_semicolon
keycode 40 = apostrophe quotedbl keycode 40 = apostrophe quotedbl
@@ -97,58 +120,65 @@ keycode 43 = backslash bar control keycode 40 = Control_g
alt keycode 40 = Meta_apostrophe
-keycode 41 = grave asciitilde
- control keycode 41 = nul
- alt keycode 41 = Meta_grave
+keycode 41 = U+00B4 grave
keycode 42 = Shift
keycode 43 = backslash bar
control keycode 43 = Control_backslash control keycode 43 = Control_backslash
alt keycode 43 = Meta_backslash @@ -104,16 +125,21 @@
keycode 44 = z
+ altgr keycode 44 = nine
keycode 45 = x
+ altgr keycode 45 = zero
keycode 46 = c
altgr keycode 46 = Hex_C
keycode 47 = v
keycode 48 = b keycode 48 = b
altgr keycode 48 = Hex_B altgr keycode 48 = Hex_B
keycode 49 = n keycode 49 = n
@ -127,55 +128,26 @@ Subject: [PATCH] /opt/Projects/openwrt/target/linux/xburst/patches-2.6.31/500-mo
keycode 55 = KP_Multiply keycode 55 = KP_Multiply
keycode 56 = Alt keycode 56 = Alt
keycode 57 = space space keycode 57 = space space
control keycode 57 = nul @@ -204,11 +230,11 @@
alt keycode 57 = Meta_space keycode 85 =
keycode 58 = Caps_Lock keycode 86 = less greater bar
-keycode 59 = F1 F11 Console_13 alt keycode 86 = Meta_less
+keycode 59 = F1 F11 one -keycode 87 = F11 F11 Console_23
control keycode 59 = F1 +keycode 87 = F11 Scroll_Backward Prior
alt keycode 59 = Console_1 control keycode 87 = F11
control alt keycode 59 = Console_1 alt keycode 87 = Console_11
-keycode 60 = F2 F12 Console_14 control alt keycode 87 = Console_11
+keycode 60 = F2 F12 two -keycode 88 = F12 F12 Console_24
control keycode 60 = F2 +keycode 88 = F12 Scroll_Forward Next
alt keycode 60 = Console_2 control keycode 88 = F12
control alt keycode 60 = Console_2 alt keycode 88 = Console_12
-keycode 61 = F3 F13 Console_15 control alt keycode 88 = Console_12
+keycode 61 = F3 F13 three @@ -269,8 +295,6 @@
control keycode 61 = F3 string F8 = "\033[19~"
alt keycode 61 = Console_3 string F9 = "\033[20~"
control alt keycode 61 = Console_3 string F10 = "\033[21~"
-keycode 62 = F4 F14 Console_16 -string F11 = "\033[23~"
+keycode 62 = F4 F14 four -string F12 = "\033[24~"
control keycode 62 = F4 string F13 = "\033[25~"
alt keycode 62 = Console_4 string F14 = "\033[26~"
control alt keycode 62 = Console_4 string F15 = "\033[28~"
-keycode 63 = F5 F15 Console_17
+keycode 63 = F5 F15 five
control keycode 63 = F5
alt keycode 63 = Console_5
control alt keycode 63 = Console_5
-keycode 64 = F6 F16 Console_18
+keycode 64 = F6 F16 six
control keycode 64 = F6
alt keycode 64 = Console_6
control alt keycode 64 = Console_6
-keycode 65 = F7 F17 Console_19
+keycode 65 = F7 F17 seven
control keycode 65 = F7
alt keycode 65 = Console_7
control alt keycode 65 = Console_7
-keycode 66 = F8 F18 Console_20
+keycode 66 = F8 F18 eight
control keycode 66 = F8
alt keycode 66 = Console_8
control alt keycode 66 = Console_8
@@ -220,7 +250,7 @@ keycode 93 =
keycode 94 =
keycode 95 =
keycode 96 = KP_Enter
-keycode 97 = Control
+keycode 97 = Control
keycode 98 = KP_Divide
keycode 99 = Control_backslash
control keycode 99 = Control_backslash

View File

@ -0,0 +1,58 @@
From 4939c63a61175f87d93ac0164c7adb40e8410a47 Mon Sep 17 00:00:00 2001
From: Xiangfu Liu <xiangfu@qi-hardware.com>
Date: Sun, 17 Jan 2010 23:38:35 +0800
Subject: [PATCH] ix upload zImage
---
arch/mips/boot/compressed/head.S | 1 -
arch/mips/boot/compressed/misc.c | 22 ----------------------
2 files changed, 0 insertions(+), 23 deletions(-)
diff --git a/arch/mips/boot/compressed/head.S b/arch/mips/boot/compressed/head.S
index d9700eb..6a4e685 100644
--- a/arch/mips/boot/compressed/head.S
+++ b/arch/mips/boot/compressed/head.S
@@ -5,7 +5,6 @@
*/
#include <asm/asm.h>
-#include <asm/cacheops.h>
#include <asm/cachectl.h>
#include <asm/regdef.h>
diff --git a/arch/mips/boot/compressed/misc.c b/arch/mips/boot/compressed/misc.c
index 2309fee..c0b041b 100644
--- a/arch/mips/boot/compressed/misc.c
+++ b/arch/mips/boot/compressed/misc.c
@@ -103,28 +103,6 @@ static unsigned long free_mem_end_ptr;
#include "../../../../lib/inflate.c"
-static void *malloc(int size)
-{
- void *p;
-
- if (size <0) error("Malloc error\n");
- if (free_mem_ptr == 0) error("Memory error\n");
-
- free_mem_ptr = (free_mem_ptr + 3) & ~3; /* Align */
-
- p = (void *)free_mem_ptr;
- free_mem_ptr += size;
-
- if (free_mem_ptr >= free_mem_end_ptr)
- error("\nOut of memory\n");
-
- return p;
-}
-
-static void free(void *where)
-{ /* Don't care */
-}
-
static void gzip_mark(void **ptr)
{
*ptr = (void *) free_mem_ptr;
--
1.6.3.3

View File

@ -1,7 +1,9 @@
CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_BATTERY_JZ4740=y CONFIG_BATTERY_JZ4740=y
CONFIG_CHARGER_GPIO=y CONFIG_CMDLINE="root=/dev/ram0 rootfstype=ramfs console=ttyS0,57600 console=tty0 mem=32M"
CONFIG_FB_JZ4740=y CONFIG_FB_JZ4740=y
CONFIG_FONT_6x11=y
# CONFIG_FONT_SUN8x16 is not set
CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_JZ4740_ADC=y CONFIG_JZ4740_ADC=y
CONFIG_JZ4740_QI_LB60=y CONFIG_JZ4740_QI_LB60=y
@ -11,7 +13,10 @@ CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_GPM940B0=y CONFIG_LCD_GPM940B0=y
CONFIG_LOGO=y CONFIG_LOGO=y
CONFIG_LOGO_OPENWRT_CLUT224=y CONFIG_LOGO_OPENWRT_CLUT224=y
CONFIG_MIPS_FPU_EMU=y
CONFIG_SOC_JZ4740=y
CONFIG_SPI=y CONFIG_SPI=y
CONFIG_SPI_BITBANG=y CONFIG_SPI_BITBANG=y
CONFIG_SPI_GPIO=y CONFIG_SPI_GPIO=y
CONFIG_SPI_MASTER=y CONFIG_SPI_MASTER=y
CONFIG_USB_ETH_RNDIS=n