Commit bbe5a96f authored by Linus Torvalds's avatar Linus Torvalds
parents f205ce83 0a375d75
...@@ -152,7 +152,6 @@ piggy.gz ...@@ -152,7 +152,6 @@ piggy.gz
piggyback piggyback
pnmtologo pnmtologo
ppc_defs.h* ppc_defs.h*
promcon_tbl.c
pss_boot.h pss_boot.h
qconf qconf
raid6altivec*.c raid6altivec*.c
......
# #
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# Linux kernel version: 2.6.31-rc1 # Linux kernel version: 2.6.31
# Tue Aug 18 23:45:52 2009 # Wed Sep 16 00:03:43 2009
# #
# CONFIG_64BIT is not set # CONFIG_64BIT is not set
CONFIG_SPARC=y CONFIG_SPARC=y
...@@ -39,11 +39,12 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y ...@@ -39,11 +39,12 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
# #
# RCU Subsystem # RCU Subsystem
# #
CONFIG_CLASSIC_RCU=y CONFIG_TREE_RCU=y
# CONFIG_TREE_RCU is not set # CONFIG_TREE_PREEMPT_RCU is not set
# CONFIG_PREEMPT_RCU is not set # CONFIG_RCU_TRACE is not set
CONFIG_RCU_FANOUT=32
# CONFIG_RCU_FANOUT_EXACT is not set
# CONFIG_TREE_RCU_TRACE is not set # CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
# CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=14 CONFIG_LOG_BUF_SHIFT=14
CONFIG_GROUP_SCHED=y CONFIG_GROUP_SCHED=y
...@@ -87,10 +88,12 @@ CONFIG_TIMERFD=y ...@@ -87,10 +88,12 @@ CONFIG_TIMERFD=y
CONFIG_EVENTFD=y CONFIG_EVENTFD=y
CONFIG_SHMEM=y CONFIG_SHMEM=y
CONFIG_AIO=y CONFIG_AIO=y
CONFIG_HAVE_PERF_COUNTERS=y
# #
# Performance Counters # Performance Counters
# #
# CONFIG_PERF_COUNTERS is not set
CONFIG_VM_EVENT_COUNTERS=y CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PCI_QUIRKS=y CONFIG_PCI_QUIRKS=y
# CONFIG_STRIP_ASM_SYMS is not set # CONFIG_STRIP_ASM_SYMS is not set
...@@ -102,6 +105,8 @@ CONFIG_SLAB=y ...@@ -102,6 +105,8 @@ CONFIG_SLAB=y
# CONFIG_MARKERS is not set # CONFIG_MARKERS is not set
CONFIG_HAVE_OPROFILE=y CONFIG_HAVE_OPROFILE=y
CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_HAVE_DMA_API_DEBUG=y
# #
# GCOV-based kernel profiling # GCOV-based kernel profiling
...@@ -169,6 +174,7 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 ...@@ -169,6 +174,7 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_SUN_PM=y CONFIG_SUN_PM=y
# CONFIG_SPARC_LED is not set # CONFIG_SPARC_LED is not set
CONFIG_SERIAL_CONSOLE=y CONFIG_SERIAL_CONSOLE=y
# CONFIG_SPARC_LEON is not set
# #
# Bus options (PCI etc.) # Bus options (PCI etc.)
...@@ -259,6 +265,7 @@ CONFIG_IPV6_TUNNEL=m ...@@ -259,6 +265,7 @@ CONFIG_IPV6_TUNNEL=m
# CONFIG_NETFILTER is not set # CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set # CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set # CONFIG_IP_SCTP is not set
# CONFIG_RDS is not set
# CONFIG_TIPC is not set # CONFIG_TIPC is not set
# CONFIG_ATM is not set # CONFIG_ATM is not set
# CONFIG_BRIDGE is not set # CONFIG_BRIDGE is not set
...@@ -288,6 +295,7 @@ CONFIG_NET_PKTGEN=m ...@@ -288,6 +295,7 @@ CONFIG_NET_PKTGEN=m
# CONFIG_AF_RXRPC is not set # CONFIG_AF_RXRPC is not set
CONFIG_WIRELESS=y CONFIG_WIRELESS=y
# CONFIG_CFG80211 is not set # CONFIG_CFG80211 is not set
CONFIG_CFG80211_DEFAULT_PS_VALUE=0
CONFIG_WIRELESS_OLD_REGULATORY=y CONFIG_WIRELESS_OLD_REGULATORY=y
# CONFIG_WIRELESS_EXT is not set # CONFIG_WIRELESS_EXT is not set
# CONFIG_LIB80211 is not set # CONFIG_LIB80211 is not set
...@@ -295,7 +303,6 @@ CONFIG_WIRELESS_OLD_REGULATORY=y ...@@ -295,7 +303,6 @@ CONFIG_WIRELESS_OLD_REGULATORY=y
# #
# CFG80211 needs to be enabled for MAC80211 # CFG80211 needs to be enabled for MAC80211
# #
CONFIG_MAC80211_DEFAULT_PS_VALUE=0
# CONFIG_WIMAX is not set # CONFIG_WIMAX is not set
# CONFIG_RFKILL is not set # CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set # CONFIG_NET_9P is not set
...@@ -426,6 +433,7 @@ CONFIG_SCSI_QLOGICPTI=m ...@@ -426,6 +433,7 @@ CONFIG_SCSI_QLOGICPTI=m
# CONFIG_SCSI_NSP32 is not set # CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set # CONFIG_SCSI_DEBUG is not set
CONFIG_SCSI_SUNESP=y CONFIG_SCSI_SUNESP=y
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_SRP is not set # CONFIG_SCSI_SRP is not set
# CONFIG_SCSI_DH is not set # CONFIG_SCSI_DH is not set
# CONFIG_SCSI_OSD_INITIATOR is not set # CONFIG_SCSI_OSD_INITIATOR is not set
...@@ -524,12 +532,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y ...@@ -524,12 +532,7 @@ CONFIG_CHELSIO_T3_DEPENDS=y
# CONFIG_SFC is not set # CONFIG_SFC is not set
# CONFIG_BE2NET is not set # CONFIG_BE2NET is not set
# CONFIG_TR is not set # CONFIG_TR is not set
# CONFIG_WLAN is not set
#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
# #
# Enable WiMAX (Networking options) to see the WiMAX drivers # Enable WiMAX (Networking options) to see the WiMAX drivers
...@@ -569,11 +572,11 @@ CONFIG_INPUT_EVBUG=m ...@@ -569,11 +572,11 @@ CONFIG_INPUT_EVBUG=m
# #
CONFIG_INPUT_KEYBOARD=y CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=m CONFIG_KEYBOARD_ATKBD=m
CONFIG_KEYBOARD_SUNKBD=m
# CONFIG_KEYBOARD_LKKBD is not set # CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set # CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set # CONFIG_KEYBOARD_STOWAWAY is not set
CONFIG_KEYBOARD_SUNKBD=m
# CONFIG_KEYBOARD_XTKBD is not set
CONFIG_INPUT_MOUSE=y CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=m CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ALPS=y CONFIG_MOUSE_PS2_ALPS=y
...@@ -581,6 +584,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y ...@@ -581,6 +584,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_TRACKPOINT=y CONFIG_MOUSE_PS2_TRACKPOINT=y
# CONFIG_MOUSE_PS2_ELANTECH is not set # CONFIG_MOUSE_PS2_ELANTECH is not set
# CONFIG_MOUSE_PS2_SENTELIC is not set
# CONFIG_MOUSE_PS2_TOUCHKIT is not set # CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_SERIAL=m CONFIG_MOUSE_SERIAL=m
# CONFIG_MOUSE_APPLETOUCH is not set # CONFIG_MOUSE_APPLETOUCH is not set
...@@ -708,12 +712,10 @@ CONFIG_SSB_POSSIBLE=y ...@@ -708,12 +712,10 @@ CONFIG_SSB_POSSIBLE=y
# #
# Console display driver support # Console display driver support
# #
# CONFIG_PROM_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y CONFIG_DUMMY_CONSOLE=y
# CONFIG_SOUND is not set # CONFIG_SOUND is not set
CONFIG_HID_SUPPORT=y CONFIG_HID_SUPPORT=y
CONFIG_HID=y CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set # CONFIG_HIDRAW is not set
# CONFIG_HID_PID is not set # CONFIG_HID_PID is not set
...@@ -814,6 +816,7 @@ CONFIG_FS_POSIX_ACL=y ...@@ -814,6 +816,7 @@ CONFIG_FS_POSIX_ACL=y
# CONFIG_GFS2_FS is not set # CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set # CONFIG_OCFS2_FS is not set
# CONFIG_BTRFS_FS is not set # CONFIG_BTRFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_FILE_LOCKING=y CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y CONFIG_DNOTIFY=y
...@@ -877,7 +880,6 @@ CONFIG_ROMFS_BACKED_BY_BLOCK=y ...@@ -877,7 +880,6 @@ CONFIG_ROMFS_BACKED_BY_BLOCK=y
CONFIG_ROMFS_ON_BLOCK=y CONFIG_ROMFS_ON_BLOCK=y
# CONFIG_SYSV_FS is not set # CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set # CONFIG_UFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y CONFIG_NFS_FS=y
# CONFIG_NFS_V3 is not set # CONFIG_NFS_V3 is not set
...@@ -984,14 +986,17 @@ CONFIG_DEBUG_MEMORY_INIT=y ...@@ -984,14 +986,17 @@ CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set # CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set # CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set
# CONFIG_BOOT_PRINTK_DELAY is not set # CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set # CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_BACKTRACE_SELF_TEST is not set # CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# CONFIG_FAULT_INJECTION is not set # CONFIG_FAULT_INJECTION is not set
# CONFIG_SYSCTL_SYSCALL_CHECK is not set # CONFIG_SYSCTL_SYSCALL_CHECK is not set
# CONFIG_PAGE_POISONING is not set # CONFIG_PAGE_POISONING is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_SAMPLES is not set # CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y CONFIG_KGDB=y
...@@ -1014,7 +1019,6 @@ CONFIG_CRYPTO=y ...@@ -1014,7 +1019,6 @@ CONFIG_CRYPTO=y
# #
# Crypto core or helper # Crypto core or helper
# #
# CONFIG_CRYPTO_FIPS is not set
CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y CONFIG_CRYPTO_AEAD=y
...@@ -1057,11 +1061,13 @@ CONFIG_CRYPTO_PCBC=m ...@@ -1057,11 +1061,13 @@ CONFIG_CRYPTO_PCBC=m
# #
CONFIG_CRYPTO_HMAC=y CONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_XCBC is not set # CONFIG_CRYPTO_XCBC is not set
# CONFIG_CRYPTO_VMAC is not set
# #
# Digest # Digest
# #
CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_CRC32C=m
# CONFIG_CRYPTO_GHASH is not set
CONFIG_CRYPTO_MD4=y CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_MICHAEL_MIC=m
......
# #
# Automatically generated make config: don't edit # Automatically generated make config: don't edit
# Linux kernel version: 2.6.31-rc1 # Linux kernel version: 2.6.31
# Tue Aug 18 23:56:02 2009 # Tue Sep 15 17:06:03 2009
# #
CONFIG_64BIT=y CONFIG_64BIT=y
CONFIG_SPARC=y CONFIG_SPARC=y
...@@ -19,7 +19,7 @@ CONFIG_LOCKDEP_SUPPORT=y ...@@ -19,7 +19,7 @@ CONFIG_LOCKDEP_SUPPORT=y
CONFIG_HAVE_LATENCYTOP_SUPPORT=y CONFIG_HAVE_LATENCYTOP_SUPPORT=y
CONFIG_AUDIT_ARCH=y CONFIG_AUDIT_ARCH=y
CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y
CONFIG_HAVE_DYNAMIC_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
CONFIG_MMU=y CONFIG_MMU=y
CONFIG_ARCH_NO_VIRT_TO_BUS=y CONFIG_ARCH_NO_VIRT_TO_BUS=y
...@@ -48,11 +48,12 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y ...@@ -48,11 +48,12 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
# #
# RCU Subsystem # RCU Subsystem
# #
CONFIG_CLASSIC_RCU=y CONFIG_TREE_RCU=y
# CONFIG_TREE_RCU is not set # CONFIG_TREE_PREEMPT_RCU is not set
# CONFIG_PREEMPT_RCU is not set # CONFIG_RCU_TRACE is not set
CONFIG_RCU_FANOUT=64
# CONFIG_RCU_FANOUT_EXACT is not set
# CONFIG_TREE_RCU_TRACE is not set # CONFIG_TREE_RCU_TRACE is not set
# CONFIG_PREEMPT_RCU_TRACE is not set
# CONFIG_IKCONFIG is not set # CONFIG_IKCONFIG is not set
CONFIG_LOG_BUF_SHIFT=18 CONFIG_LOG_BUF_SHIFT=18
CONFIG_GROUP_SCHED=y CONFIG_GROUP_SCHED=y
...@@ -96,10 +97,13 @@ CONFIG_TIMERFD=y ...@@ -96,10 +97,13 @@ CONFIG_TIMERFD=y
CONFIG_EVENTFD=y CONFIG_EVENTFD=y
CONFIG_SHMEM=y CONFIG_SHMEM=y
CONFIG_AIO=y CONFIG_AIO=y
CONFIG_HAVE_PERF_COUNTERS=y
# #
# Performance Counters # Performance Counters
# #
CONFIG_PERF_COUNTERS=y
CONFIG_EVENT_PROFILE=y
CONFIG_VM_EVENT_COUNTERS=y CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PCI_QUIRKS=y CONFIG_PCI_QUIRKS=y
CONFIG_SLUB_DEBUG=y CONFIG_SLUB_DEBUG=y
...@@ -119,7 +123,9 @@ CONFIG_KRETPROBES=y ...@@ -119,7 +123,9 @@ CONFIG_KRETPROBES=y
CONFIG_HAVE_KPROBES=y CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_ARCH_TRACEHOOK=y
CONFIG_HAVE_DMA_ATTRS=y
CONFIG_USE_GENERIC_SMP_HELPERS=y CONFIG_USE_GENERIC_SMP_HELPERS=y
CONFIG_HAVE_DMA_API_DEBUG=y
# #
# GCOV-based kernel profiling # GCOV-based kernel profiling
...@@ -317,6 +323,7 @@ CONFIG_IPV6_TUNNEL=m ...@@ -317,6 +323,7 @@ CONFIG_IPV6_TUNNEL=m
# CONFIG_NETFILTER is not set # CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set # CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set # CONFIG_IP_SCTP is not set
# CONFIG_RDS is not set
# CONFIG_TIPC is not set # CONFIG_TIPC is not set
# CONFIG_ATM is not set # CONFIG_ATM is not set
# CONFIG_BRIDGE is not set # CONFIG_BRIDGE is not set
...@@ -349,6 +356,7 @@ CONFIG_NET_TCPPROBE=m ...@@ -349,6 +356,7 @@ CONFIG_NET_TCPPROBE=m
# CONFIG_AF_RXRPC is not set # CONFIG_AF_RXRPC is not set
CONFIG_WIRELESS=y CONFIG_WIRELESS=y
# CONFIG_CFG80211 is not set # CONFIG_CFG80211 is not set
CONFIG_CFG80211_DEFAULT_PS_VALUE=0
CONFIG_WIRELESS_OLD_REGULATORY=y CONFIG_WIRELESS_OLD_REGULATORY=y
# CONFIG_WIRELESS_EXT is not set # CONFIG_WIRELESS_EXT is not set
# CONFIG_LIB80211 is not set # CONFIG_LIB80211 is not set
...@@ -356,7 +364,6 @@ CONFIG_WIRELESS_OLD_REGULATORY=y ...@@ -356,7 +364,6 @@ CONFIG_WIRELESS_OLD_REGULATORY=y
# #
# CFG80211 needs to be enabled for MAC80211 # CFG80211 needs to be enabled for MAC80211
# #
CONFIG_MAC80211_DEFAULT_PS_VALUE=0
# CONFIG_WIMAX is not set # CONFIG_WIMAX is not set
# CONFIG_RFKILL is not set # CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set # CONFIG_NET_9P is not set
...@@ -549,6 +556,7 @@ CONFIG_SCSI_LOWLEVEL=y ...@@ -549,6 +556,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_SCSI_DC390T is not set # CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_DEBUG is not set # CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SUNESP is not set # CONFIG_SCSI_SUNESP is not set
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_SRP is not set # CONFIG_SCSI_SRP is not set
# CONFIG_SCSI_DH is not set # CONFIG_SCSI_DH is not set
# CONFIG_SCSI_OSD_INITIATOR is not set # CONFIG_SCSI_OSD_INITIATOR is not set
...@@ -704,12 +712,7 @@ CONFIG_NIU=m ...@@ -704,12 +712,7 @@ CONFIG_NIU=m
# CONFIG_SFC is not set # CONFIG_SFC is not set
# CONFIG_BE2NET is not set # CONFIG_BE2NET is not set
# CONFIG_TR is not set # CONFIG_TR is not set
# CONFIG_WLAN is not set
#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
# #
# Enable WiMAX (Networking options) to see the WiMAX drivers # Enable WiMAX (Networking options) to see the WiMAX drivers
...@@ -768,11 +771,11 @@ CONFIG_INPUT_EVDEV=y ...@@ -768,11 +771,11 @@ CONFIG_INPUT_EVDEV=y
# #
CONFIG_INPUT_KEYBOARD=y CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y CONFIG_KEYBOARD_ATKBD=y
CONFIG_KEYBOARD_SUNKBD=y
CONFIG_KEYBOARD_LKKBD=m CONFIG_KEYBOARD_LKKBD=m
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set # CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set # CONFIG_KEYBOARD_STOWAWAY is not set
CONFIG_KEYBOARD_SUNKBD=y
# CONFIG_KEYBOARD_XTKBD is not set
CONFIG_INPUT_MOUSE=y CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y CONFIG_MOUSE_PS2=y
CONFIG_MOUSE_PS2_ALPS=y CONFIG_MOUSE_PS2_ALPS=y
...@@ -780,6 +783,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y ...@@ -780,6 +783,7 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y
CONFIG_MOUSE_PS2_SYNAPTICS=y CONFIG_MOUSE_PS2_SYNAPTICS=y
CONFIG_MOUSE_PS2_TRACKPOINT=y CONFIG_MOUSE_PS2_TRACKPOINT=y
# CONFIG_MOUSE_PS2_ELANTECH is not set # CONFIG_MOUSE_PS2_ELANTECH is not set
# CONFIG_MOUSE_PS2_SENTELIC is not set
# CONFIG_MOUSE_PS2_TOUCHKIT is not set # CONFIG_MOUSE_PS2_TOUCHKIT is not set
CONFIG_MOUSE_SERIAL=y CONFIG_MOUSE_SERIAL=y
# CONFIG_MOUSE_APPLETOUCH is not set # CONFIG_MOUSE_APPLETOUCH is not set
...@@ -883,7 +887,6 @@ CONFIG_I2C_ALGOBIT=y ...@@ -883,7 +887,6 @@ CONFIG_I2C_ALGOBIT=y
# #
# I2C system bus drivers (mostly embedded / system-on-chip) # I2C system bus drivers (mostly embedded / system-on-chip)
# #
# CONFIG_I2C_DESIGNWARE is not set
# CONFIG_I2C_OCORES is not set # CONFIG_I2C_OCORES is not set
# CONFIG_I2C_SIMTEC is not set # CONFIG_I2C_SIMTEC is not set
...@@ -1102,7 +1105,6 @@ CONFIG_FB_ATY_GX=y ...@@ -1102,7 +1105,6 @@ CONFIG_FB_ATY_GX=y
# #
# Console display driver support # Console display driver support
# #
# CONFIG_PROM_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
...@@ -1124,6 +1126,7 @@ CONFIG_LOGO=y ...@@ -1124,6 +1126,7 @@ CONFIG_LOGO=y
CONFIG_LOGO_SUN_CLUT224=y CONFIG_LOGO_SUN_CLUT224=y
CONFIG_SOUND=m CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE=y CONFIG_SOUND_OSS_CORE=y
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
CONFIG_SND=m CONFIG_SND=m
CONFIG_SND_TIMER=m CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m CONFIG_SND_PCM=m
...@@ -1232,7 +1235,6 @@ CONFIG_SND_SUN_CS4231=m ...@@ -1232,7 +1235,6 @@ CONFIG_SND_SUN_CS4231=m
CONFIG_AC97_BUS=m CONFIG_AC97_BUS=m
CONFIG_HID_SUPPORT=y CONFIG_HID_SUPPORT=y
CONFIG_HID=y CONFIG_HID=y
# CONFIG_HID_DEBUG is not set
# CONFIG_HIDRAW is not set # CONFIG_HIDRAW is not set
# #
...@@ -1256,6 +1258,7 @@ CONFIG_HID_DRAGONRISE=y ...@@ -1256,6 +1258,7 @@ CONFIG_HID_DRAGONRISE=y
CONFIG_HID_EZKEY=y CONFIG_HID_EZKEY=y
CONFIG_HID_KYE=y CONFIG_HID_KYE=y
CONFIG_HID_GYRATION=y CONFIG_HID_GYRATION=y
CONFIG_HID_TWINHAN=y
CONFIG_HID_KENSINGTON=y CONFIG_HID_KENSINGTON=y
CONFIG_HID_LOGITECH=y CONFIG_HID_LOGITECH=y
# CONFIG_LOGITECH_FF is not set # CONFIG_LOGITECH_FF is not set
...@@ -1289,6 +1292,7 @@ CONFIG_USB=y ...@@ -1289,6 +1292,7 @@ CONFIG_USB=y
# #
# Miscellaneous USB options # Miscellaneous USB options
# #
# CONFIG_USB_DEVICEFS is not set
# CONFIG_USB_DEVICE_CLASS is not set # CONFIG_USB_DEVICE_CLASS is not set
# CONFIG_USB_DYNAMIC_MINORS is not set # CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set # CONFIG_USB_OTG is not set
...@@ -1379,6 +1383,7 @@ CONFIG_USB_STORAGE=m ...@@ -1379,6 +1383,7 @@ CONFIG_USB_STORAGE=m
# CONFIG_USB_LD is not set # CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set # CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not set # CONFIG_USB_IOWARRIOR is not set
# CONFIG_USB_TEST is not set
# CONFIG_USB_ISIGHTFW is not set # CONFIG_USB_ISIGHTFW is not set
# CONFIG_USB_VST is not set # CONFIG_USB_VST is not set
# CONFIG_USB_GADGET is not set # CONFIG_USB_GADGET is not set
...@@ -1493,6 +1498,7 @@ CONFIG_FS_POSIX_ACL=y ...@@ -1493,6 +1498,7 @@ CONFIG_FS_POSIX_ACL=y
# CONFIG_GFS2_FS is not set # CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set # CONFIG_OCFS2_FS is not set
# CONFIG_BTRFS_FS is not set # CONFIG_BTRFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_FILE_LOCKING=y CONFIG_FILE_LOCKING=y
CONFIG_FSNOTIFY=y CONFIG_FSNOTIFY=y
CONFIG_DNOTIFY=y CONFIG_DNOTIFY=y
...@@ -1553,7 +1559,6 @@ CONFIG_MISC_FILESYSTEMS=y ...@@ -1553,7 +1559,6 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_ROMFS_FS is not set # CONFIG_ROMFS_FS is not set
# CONFIG_SYSV_FS is not set # CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set # CONFIG_UFS_FS is not set
# CONFIG_NILFS2_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y CONFIG_NETWORK_FILESYSTEMS=y
# CONFIG_NFS_FS is not set # CONFIG_NFS_FS is not set
# CONFIG_NFSD is not set # CONFIG_NFSD is not set
...@@ -1656,12 +1661,14 @@ CONFIG_DEBUG_MEMORY_INIT=y ...@@ -1656,12 +1661,14 @@ CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set # CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set # CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set # CONFIG_DEBUG_NOTIFIERS is not set
# CONFIG_DEBUG_CREDENTIALS is not set
# CONFIG_BOOT_PRINTK_DELAY is not set # CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set # CONFIG_RCU_CPU_STALL_DETECTOR is not set
# CONFIG_KPROBES_SANITY_TEST is not set # CONFIG_KPROBES_SANITY_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set # CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# CONFIG_LKDTM is not set # CONFIG_LKDTM is not set
# CONFIG_FAULT_INJECTION is not set # CONFIG_FAULT_INJECTION is not set
# CONFIG_LATENCYTOP is not set # CONFIG_LATENCYTOP is not set
...@@ -1692,6 +1699,7 @@ CONFIG_BLK_DEV_IO_TRACE=y ...@@ -1692,6 +1699,7 @@ CONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_FTRACE_STARTUP_TEST is not set # CONFIG_FTRACE_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_BENCHMARK is not set # CONFIG_RING_BUFFER_BENCHMARK is not set
# CONFIG_DYNAMIC_DEBUG is not set # CONFIG_DYNAMIC_DEBUG is not set
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_SAMPLES is not set # CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KGDB=y CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set # CONFIG_KGDB is not set
...@@ -1716,7 +1724,6 @@ CONFIG_CRYPTO=y ...@@ -1716,7 +1724,6 @@ CONFIG_CRYPTO=y
# #
# Crypto core or helper # Crypto core or helper
# #
# CONFIG_CRYPTO_FIPS is not set
CONFIG_CRYPTO_ALGAPI=y CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y CONFIG_CRYPTO_AEAD=y
...@@ -1759,11 +1766,13 @@ CONFIG_CRYPTO_XTS=m ...@@ -1759,11 +1766,13 @@ CONFIG_CRYPTO_XTS=m
# #
CONFIG_CRYPTO_HMAC=y CONFIG_CRYPTO_HMAC=y
CONFIG_CRYPTO_XCBC=y CONFIG_CRYPTO_XCBC=y
# CONFIG_CRYPTO_VMAC is not set
# #
# Digest # Digest
# #
CONFIG_CRYPTO_CRC32C=m CONFIG_CRYPTO_CRC32C=m
# CONFIG_CRYPTO_GHASH is not set
CONFIG_CRYPTO_MD4=y CONFIG_CRYPTO_MD4=y
CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_MD5=y
CONFIG_CRYPTO_MICHAEL_MIC=m CONFIG_CRYPTO_MICHAEL_MIC=m
......
...@@ -268,8 +268,6 @@ void __init setup_arch(char **cmdline_p) ...@@ -268,8 +268,6 @@ void __init setup_arch(char **cmdline_p)
#ifdef CONFIG_DUMMY_CONSOLE #ifdef CONFIG_DUMMY_CONSOLE
conswitchp = &dummy_con; conswitchp = &dummy_con;
#elif defined(CONFIG_PROM_CONSOLE)
conswitchp = &prom_con;
#endif #endif
boot_flags_init(*cmdline_p); boot_flags_init(*cmdline_p);
......
...@@ -295,8 +295,6 @@ void __init setup_arch(char **cmdline_p) ...@@ -295,8 +295,6 @@ void __init setup_arch(char **cmdline_p)
#ifdef CONFIG_DUMMY_CONSOLE #ifdef CONFIG_DUMMY_CONSOLE
conswitchp = &dummy_con; conswitchp = &dummy_con;
#elif defined(CONFIG_PROM_CONSOLE)
conswitchp = &prom_con;
#endif #endif
idprom_init(); idprom_init();
......
...@@ -2948,9 +2948,6 @@ int __init vty_init(const struct file_operations *console_fops) ...@@ -2948,9 +2948,6 @@ int __init vty_init(const struct file_operations *console_fops)
panic("Couldn't register console driver\n"); panic("Couldn't register console driver\n");
kbd_init(); kbd_init();
console_map_init(); console_map_init();
#ifdef CONFIG_PROM_CONSOLE
prom_con_init();
#endif
#ifdef CONFIG_MDA_CONSOLE #ifdef CONFIG_MDA_CONSOLE
mda_console_init(); mda_console_init();
#endif #endif
......
# conmakehash generated file
promcon_tbl.c
...@@ -67,16 +67,9 @@ config SGI_NEWPORT_CONSOLE ...@@ -67,16 +67,9 @@ config SGI_NEWPORT_CONSOLE
# bool 'IODC console' CONFIG_IODC_CONSOLE # bool 'IODC console' CONFIG_IODC_CONSOLE
config PROM_CONSOLE
bool "PROM console"
depends on SPARC
help
Say Y to build a console driver for Sun machines that uses the
terminal emulation built into their console PROMS.
config DUMMY_CONSOLE config DUMMY_CONSOLE
bool bool
depends on PROM_CONSOLE!=y || VGA_CONSOLE!=y || SGI_NEWPORT_CONSOLE!=y depends on VGA_CONSOLE!=y || SGI_NEWPORT_CONSOLE!=y
default y default y
config DUMMY_CONSOLE_COLUMNS config DUMMY_CONSOLE_COLUMNS
......
...@@ -22,7 +22,6 @@ font-objs += $(font-objs-y) ...@@ -22,7 +22,6 @@ font-objs += $(font-objs-y)
obj-$(CONFIG_DUMMY_CONSOLE) += dummycon.o obj-$(CONFIG_DUMMY_CONSOLE) += dummycon.o
obj-$(CONFIG_SGI_NEWPORT_CONSOLE) += newport_con.o font.o obj-$(CONFIG_SGI_NEWPORT_CONSOLE) += newport_con.o font.o
obj-$(CONFIG_PROM_CONSOLE) += promcon.o promcon_tbl.o
obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o font.o obj-$(CONFIG_STI_CONSOLE) += sticon.o sticore.o font.o
obj-$(CONFIG_VGA_CONSOLE) += vgacon.o obj-$(CONFIG_VGA_CONSOLE) += vgacon.o
obj-$(CONFIG_MDA_CONSOLE) += mdacon.o obj-$(CONFIG_MDA_CONSOLE) += mdacon.o
...@@ -40,14 +39,3 @@ obj-$(CONFIG_FB_STI) += sticore.o font.o ...@@ -40,14 +39,3 @@ obj-$(CONFIG_FB_STI) += sticore.o font.o
ifeq ($(CONFIG_USB_SISUSBVGA_CON),y) ifeq ($(CONFIG_USB_SISUSBVGA_CON),y)
obj-$(CONFIG_USB_SISUSBVGA) += font.o obj-$(CONFIG_USB_SISUSBVGA) += font.o
endif endif
# Targets that kbuild needs to know about
targets := promcon_tbl.c
quiet_cmd_conmakehash = CNMKHSH $@
cmd_conmakehash = scripts/conmakehash $< | \
sed -e '/\#include <[^>]*>/p' -e 's/types/init/' \
-e 's/dfont\(_uni.*\]\)/promfont\1 /' > $@
$(obj)/promcon_tbl.c: $(src)/prom.uni
$(call cmd,conmakehash)
#
# Unicode mapping table for font in Sun PROM
#
#
0x20-0x7e idem
0xa0-0xff idem
#
0x7c U+2502
0x2d U+2500
0x2b U+250c U+2510 U+2514 U+2518 U+251c U+2524 U+252c U+2534 U+253c
0xa4 U+fffd
/* $Id: promcon.c,v 1.17 2000/07/26 23:02:52 davem Exp $
* Console driver utilizing PROM sun terminal emulation
*
* Copyright (C) 1998 Eddie C. Dost (ecd@skynet.be)
* Copyright (C) 1998 Jakub Jelinek (jj@ultra.linux.cz)
*/
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/errno.h>
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <linux/console.h>
#include <linux/vt_kern.h>
#include <linux/selection.h>
#include <linux/fb.h>
#include <linux/init.h>
#include <linux/kd.h>
#include <asm/oplib.h>
#include <asm/uaccess.h>
static short pw = 80 - 1, ph = 34 - 1;
static short px, py;
static unsigned long promcon_uni_pagedir[2];
extern u8 promfont_unicount[];
extern u16 promfont_unitable[];
#define PROMCON_COLOR 0
#if PROMCON_COLOR
#define inverted(s) ((((s) & 0x7700) == 0x0700) ? 0 : 1)
#else
#define inverted(s) (((s) & 0x0800) ? 1 : 0)
#endif
static __inline__ void
promcon_puts(char *buf, int cnt)
{
prom_printf("%*.*s", cnt, cnt, buf);
}
static int
promcon_start(struct vc_data *conp, char *b)
{
unsigned short *s = (unsigned short *)
(conp->vc_origin + py * conp->vc_size_row + (px << 1));
u16 cs;
cs = scr_readw(s);
if (px == pw) {
unsigned short *t = s - 1;
u16 ct = scr_readw(t);
if (inverted(cs) && inverted(ct))
return sprintf(b, "\b\033[7m%c\b\033[@%c\033[m", cs,
ct);
else if (inverted(cs))
return sprintf(b, "\b\033[7m%c\033[m\b\033[@%c", cs,
ct);
else if (inverted(ct))
return sprintf(b, "\b%c\b\033[@\033[7m%c\033[m", cs,
ct);
else
return sprintf(b, "\b%c\b\033[@%c", cs, ct);
}
if (inverted(cs))
return sprintf(b, "\033[7m%c\033[m\b", cs);
else
return sprintf(b, "%c\b", cs);
}
static int
promcon_end(struct vc_data *conp, char *b)
{
unsigned short *s = (unsigned short *)
(conp->vc_origin + py * conp->vc_size_row + (px << 1));
char *p = b;
u16 cs;
b += sprintf(b, "\033[%d;%dH", py + 1, px + 1);
cs = scr_readw(s);
if (px == pw) {
unsigned short *t = s - 1;
u16 ct = scr_readw(t);
if (inverted(cs) && inverted(ct))
b += sprintf(b, "\b%c\b\033[@\033[7m%c\033[m", cs, ct);
else if (inverted(cs))
b += sprintf(b, "\b%c\b\033[@%c", cs, ct);
else if (inverted(ct))
b += sprintf(b, "\b\033[7m%c\b\033[@%c\033[m", cs, ct);
else
b += sprintf(b, "\b\033[7m%c\033[m\b\033[@%c", cs, ct);
return b - p;
}
if (inverted(cs))
b += sprintf(b, "%c\b", cs);
else
b += sprintf(b, "\033[7m%c\033[m\b", cs);
return b - p;
}
const char *promcon_startup(void)
{
const char *display_desc = "PROM";
int node;
char buf[40];
node = prom_getchild(prom_root_node);
node = prom_searchsiblings(node, "options");
if (prom_getproperty(node, "screen-#columns", buf, 40) != -1) {
pw = simple_strtoul(buf, NULL, 0);
if (pw < 10 || pw > 256)
pw = 80;
pw--;
}
if (prom_getproperty(node, "screen-#rows", buf, 40) != -1) {
ph = simple_strtoul(buf, NULL, 0);
if (ph < 10 || ph > 256)
ph = 34;
ph--;
}
promcon_puts("\033[H\033[J", 6);
return display_desc;
}
static void
promcon_init_unimap(struct vc_data *conp)
{
mm_segment_t old_fs = get_fs();
struct unipair *p, *p1;
u16 *q;
int i, j, k;
p = kmalloc(256*sizeof(struct unipair), GFP_KERNEL);
if (!p) return;
q = promfont_unitable;
p1 = p;
k = 0;
for (i = 0; i < 256; i++)
for (j = promfont_unicount[i]; j; j--) {
p1->unicode = *q++;
p1->fontpos = i;
p1++;
k++;
}
set_fs(KERNEL_DS);
con_clear_unimap(conp, NULL);
con_set_unimap(conp, k, p);
con_protect_unimap(conp, 1);
set_fs(old_fs);
kfree(p);
}
static void
promcon_init(struct vc_data *conp, int init)
{
unsigned long p;
conp->vc_can_do_color = PROMCON_COLOR;
if (init) {
conp->vc_cols = pw + 1;
conp->vc_rows = ph + 1;
}
p = *conp->vc_uni_pagedir_loc;
if (conp->vc_uni_pagedir_loc == &conp->vc_uni_pagedir ||
!--conp->vc_uni_pagedir_loc[1])
con_free_unimap(conp);
conp->vc_uni_pagedir_loc = promcon_uni_pagedir;
promcon_uni_pagedir[1]++;
if (!promcon_uni_pagedir[0] && p) {
promcon_init_unimap(conp);
}
if (!init) {
if (conp->vc_cols != pw + 1 || conp->vc_rows != ph + 1)
vc_resize(conp, pw + 1, ph + 1);
}
}
static void
promcon_deinit(struct vc_data *conp)
{
/* When closing the last console, reset video origin */
if (!--promcon_uni_pagedir[1])
con_free_unimap(conp);
conp->vc_uni_pagedir_loc = &conp->vc_uni_pagedir;
con_set_default_unimap(conp);
}
static int
promcon_switch(struct vc_data *conp)
{
return 1;
}
static unsigned short *
promcon_repaint_line(unsigned short *s, unsigned char *buf, unsigned char **bp)
{
int cnt = pw + 1;
int attr = -1;
unsigned char *b = *bp;
while (cnt--) {
u16 c = scr_readw(s);
if (attr != inverted(c)) {
attr = inverted(c);
if (attr) {
strcpy (b, "\033[7m");
b += 4;
} else {
strcpy (b, "\033[m");
b += 3;
}
}
*b++ = c;
s++;
if (b - buf >= 224) {
promcon_puts(buf, b - buf);
b = buf;
}
}
*bp = b;
return s;
}
static void
promcon_putcs(struct vc_data *conp, const unsigned short *s,
int count, int y, int x)
{
unsigned char buf[256], *b = buf;
unsigned short attr = scr_readw(s);
unsigned char save;
int i, last = 0;
if (console_blanked)
return;
if (count <= 0)
return;
b += promcon_start(conp, b);
if (x + count >= pw + 1) {
if (count == 1) {
x -= 1;
save = scr_readw((unsigned short *)(conp->vc_origin
+ y * conp->vc_size_row
+ (x << 1)));
if (px != x || py != y) {
b += sprintf(b, "\033[%d;%dH", y + 1, x + 1);
px = x;
py = y;
}
if (inverted(attr))
b += sprintf(b, "\033[7m%c\033[m", scr_readw(s++));
else
b += sprintf(b, "%c", scr_readw(s++));
strcpy(b, "\b\033[@");
b += 4;
if (inverted(save))
b += sprintf(b, "\033[7m%c\033[m", save);
else
b += sprintf(b, "%c", save);
px++;
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
} else {
last = 1;
count = pw - x - 1;
}
}
if (inverted(attr)) {
strcpy(b, "\033[7m");
b += 4;
}
if (px != x || py != y) {
b += sprintf(b, "\033[%d;%dH", y + 1, x + 1);
px = x;
py = y;
}
for (i = 0; i < count; i++) {
if (b - buf >= 224) {
promcon_puts(buf, b - buf);
b = buf;
}
*b++ = scr_readw(s++);
}
px += count;
if (last) {
save = scr_readw(s++);
b += sprintf(b, "%c\b\033[@%c", scr_readw(s++), save);
px++;
}
if (inverted(attr)) {
strcpy(b, "\033[m");
b += 3;
}
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
}
static void
promcon_putc(struct vc_data *conp, int c, int y, int x)
{
unsigned short s;
if (console_blanked)
return;
scr_writew(c, &s);
promcon_putcs(conp, &s, 1, y, x);
}
static void
promcon_clear(struct vc_data *conp, int sy, int sx, int height, int width)
{
unsigned char buf[256], *b = buf;
int i, j;
if (console_blanked)
return;
b += promcon_start(conp, b);
if (!sx && width == pw + 1) {
if (!sy && height == ph + 1) {
strcpy(b, "\033[H\033[J");
b += 6;
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
} else if (sy + height == ph + 1) {
b += sprintf(b, "\033[%dH\033[J", sy + 1);
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
}
b += sprintf(b, "\033[%dH", sy + 1);
for (i = 1; i < height; i++) {
strcpy(b, "\033[K\n");
b += 4;
}
strcpy(b, "\033[K");
b += 3;
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
} else if (sx + width == pw + 1) {
b += sprintf(b, "\033[%d;%dH", sy + 1, sx + 1);
for (i = 1; i < height; i++) {
strcpy(b, "\033[K\n");
b += 4;
}
strcpy(b, "\033[K");
b += 3;
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
}
for (i = sy + 1; i <= sy + height; i++) {
b += sprintf(b, "\033[%d;%dH", i, sx + 1);
for (j = 0; j < width; j++)
*b++ = ' ';
if (b - buf + width >= 224) {
promcon_puts(buf, b - buf);
b = buf;
}
}
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
}
static void
promcon_bmove(struct vc_data *conp, int sy, int sx, int dy, int dx,
int height, int width)
{
char buf[256], *b = buf;
if (console_blanked)
return;
b += promcon_start(conp, b);
if (sy == dy && height == 1) {
if (dx > sx && dx + width == conp->vc_cols)
b += sprintf(b, "\033[%d;%dH\033[%d@\033[%d;%dH",
sy + 1, sx + 1, dx - sx, py + 1, px + 1);
else if (dx < sx && sx + width == conp->vc_cols)
b += sprintf(b, "\033[%d;%dH\033[%dP\033[%d;%dH",
dy + 1, dx + 1, sx - dx, py + 1, px + 1);
b += promcon_end(conp, b);
promcon_puts(buf, b - buf);
return;
}
/*
* FIXME: What to do here???
* Current console.c should not call it like that ever.
*/
prom_printf("\033[7mFIXME: bmove not handled\033[m\n");
}
static void
promcon_cursor(struct vc_data *conp, int mode)
{
char buf[32], *b = buf;
switch (mode) {
case CM_ERASE:
break;
case CM_MOVE:
case CM_DRAW:
b += promcon_start(conp, b);
if (px != conp->vc_x || py != conp->vc_y) {
px = conp->vc_x;
py = conp->vc_y;
b += sprintf(b, "\033[%d;%dH", py + 1, px + 1);
}
promcon_puts(buf, b - buf);
break;
}
}
static int
promcon_blank(struct vc_data *conp, int blank, int mode_switch)
{
if (blank) {
promcon_puts("\033[H\033[J\033[7m \033[m\b", 15);
return 0;
} else {
/* Let console.c redraw */
return 1;
}
}
static int
promcon_scroll(struct vc_data *conp, int t, int b, int dir, int count)
{
unsigned char buf[256], *p = buf;
unsigned short *s;
int i;
if (console_blanked)
return 0;
p += promcon_start(conp, p);
switch (dir) {
case SM_UP:
if (b == ph + 1) {
p += sprintf(p, "\033[%dH\033[%dM", t + 1, count);
px = 0;
py = t;
p += promcon_end(conp, p);
promcon_puts(buf, p - buf);
break;
}
s = (unsigned short *)(conp->vc_origin
+ (t + count) * conp->vc_size_row);
p += sprintf(p, "\033[%dH", t + 1);
for (i = t; i < b - count; i++)
s = promcon_repaint_line(s, buf, &p);
for (; i < b - 1; i++) {
strcpy(p, "\033[K\n");
p += 4;
if (p - buf >= 224) {
promcon_puts(buf, p - buf);
p = buf;
}
}
strcpy(p, "\033[K");
p += 3;
p += promcon_end(conp, p);
promcon_puts(buf, p - buf);
break;
case SM_DOWN:
if (b == ph + 1) {
p += sprintf(p, "\033[%dH\033[%dL", t + 1, count);
px = 0;
py = t;
p += promcon_end(conp, p);
promcon_puts(buf, p - buf);
break;
}
s = (unsigned short *)(conp->vc_origin + t * conp->vc_size_row);
p += sprintf(p, "\033[%dH", t + 1);
for (i = t; i < t + count; i++) {
strcpy(p, "\033[K\n");
p += 4;
if (p - buf >= 224) {
promcon_puts(buf, p - buf);
p = buf;
}
}
for (; i < b; i++)
s = promcon_repaint_line(s, buf, &p);
p += promcon_end(conp, p);
promcon_puts(buf, p - buf);
break;
}
return 0;
}
#if !(PROMCON_COLOR)
static u8 promcon_build_attr(struct vc_data *conp, u8 _color, u8 _intensity,
u8 _blink, u8 _underline, u8 _reverse, u8 _italic)
{
return (_reverse) ? 0xf : 0x7;
}
#endif
/*
* The console 'switch' structure for the VGA based console
*/
static int promcon_dummy(void)
{
return 0;
}
#define DUMMY (void *) promcon_dummy
const struct consw prom_con = {
.owner = THIS_MODULE,
.con_startup = promcon_startup,
.con_init = promcon_init,
.con_deinit = promcon_deinit,
.con_clear = promcon_clear,
.con_putc = promcon_putc,
.con_putcs = promcon_putcs,
.con_cursor = promcon_cursor,
.con_scroll = promcon_scroll,
.con_bmove = promcon_bmove,
.con_switch = promcon_switch,
.con_blank = promcon_blank,
.con_set_palette = DUMMY,
.con_scrolldelta = DUMMY,
#if !(PROMCON_COLOR)
.con_build_attr = promcon_build_attr,
#endif
};
void __init prom_con_init(void)
{
#ifdef CONFIG_DUMMY_CONSOLE
if (conswitchp == &dummy_con)
take_over_console(&prom_con, 0, MAX_NR_CONSOLES-1, 1);
else
#endif
if (conswitchp == &prom_con)
promcon_init_unimap(vc_cons[fg_console].d);
}
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
hostprogs-$(CONFIG_KALLSYMS) += kallsyms hostprogs-$(CONFIG_KALLSYMS) += kallsyms
hostprogs-$(CONFIG_LOGO) += pnmtologo hostprogs-$(CONFIG_LOGO) += pnmtologo
hostprogs-$(CONFIG_VT) += conmakehash hostprogs-$(CONFIG_VT) += conmakehash
hostprogs-$(CONFIG_PROM_CONSOLE) += conmakehash
hostprogs-$(CONFIG_IKCONFIG) += bin2c hostprogs-$(CONFIG_IKCONFIG) += bin2c
always := $(hostprogs-y) $(hostprogs-m) always := $(hostprogs-y) $(hostprogs-m)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment