Difference between revisions of "Talk:Buffalo ARM9 Kernel Port"

From NAS-Central Buffalo - The Linkstation Wiki
Jump to: navigation, search
(Added first analysis information about Davy Gravy's config additions)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Needed are some explanations about what has to be set in the kernel config to make it run on a Linkstation, Kurobox, etc. - [[User:Maddes|Maddes]] 11:05, 28 March 2010 (UTC)
+
Needed are some explanations about what has to be set in the kernel config to make it run on a Linkstation, Kurobox, etc. - [[User:Maddes|Maddes]] 11:05, 28 March 2010 (UTC)<br>
 +
There should also be information specific to the TSProV2 and TSLive since those have been shown to use an ARM9 SoC, not ARM11 [[User:Speeddymon|Speeddymon]] 04:16, 21 March 2011 (UTC)
  
 
* For Linkstation:
 
* For Linkstation:
*:Only simple diff between Davy Gravy's config and the vanilla defconfig_orion5x or Debian config would reveal a lot of not mandatory settings (just my guess).
+
*:Only a simple diff between Davy Gravy's config and the vanilla defconfig_orion5x or Debian config would reveal a lot of non-mandatory settings (just my guess).
 
*:A list of the mandatory settings with some headwords would be great and would make it easier to adopt to newer kernels. And maybe get these even upstream. - [[User:Maddes|Maddes]] 11:05, 28 March 2010 (UTC)
 
*:A list of the mandatory settings with some headwords would be great and would make it easier to adopt to newer kernels. And maybe get these even upstream. - [[User:Maddes|Maddes]] 11:05, 28 March 2010 (UTC)
  
* Davy Gravy's Debian kernel works with the modules of the pure Debian Build, so it must be something that has been added into the kernel.
+
* Davy Gravy's Debian kernel works with the modules of the pure Debian Build, so it must be something that has been put into the kernel directly.
  
  
 
----
 
----
  
Started to analyse everything that was added by Davy Gravy:
+
[[User:Maddes|Maddes]] 20:17, 8 April 2010 (UTC)<br>
 +
Started to analyse everything what was added by Davy Gravy for '''Debian Lenny kernel 2.6.26''':<br>
 +
Check out the [http://kernel.xc.net/|Linux Kernel Configuration Archive] to see what each config setting stands for.<br>
 +
Concentrated on the things Davy added, by using a diff of his config against the original Debian one, then sorted the output and only looked at the lines starting with a plus (+) ([http://ftp.maddes.net/hardware/Linkstation/Debian_Lenny/ result files]).
  
* Settings for a booting (=not panic-ing kernel), but which is not working completely:
+
* Mandatory settings for a booting and working kernel on LS Pro / LS Live V2 (without XFS support):<br>
 +
Maybe these can be reduced even further?
 
<pre>
 
<pre>
a) Bigger RAM disks (definitely needed)
+
a) Support for bigger RAM disks
CONFIG_BLK_DEV_RAM_COUNT=3    # was 16; Block Devices -> Default number of RAM disks)
+
CONFIG_BLK_DEV_RAM_COUNT=3    # was 16; Device Drivers -> Block Devices -> Default number of RAM disks
CONFIG_BLK_DEV_RAM_SIZE=32768  # was 32768; Block Devices -> Default RAM disk size (kBytes))
+
CONFIG_BLK_DEV_RAM_SIZE=32768  # was 4096; Device Drivers -> Block Devices -> Default RAM disk size (kBytes)
  
b) Marvell SATA driver (seems to be necessary)
+
b) Marvell SATA driver
 
CONFIG_ATA=y      # was m; Device Drivers -> Serial ATA
 
CONFIG_ATA=y      # was m; Device Drivers -> Serial ATA
CONFIG_SCSI=y    # was m; Device Drivers -> Serial ATA
 
 
CONFIG_SATA_MV=y  # was m; Device Drivers -> Serial ATA -> Marvell SATA support
 
CONFIG_SATA_MV=y  # was m; Device Drivers -> Serial ATA -> Marvell SATA support
  
c) Filesystems (seems to be necessary)
+
CONFIG_SCSI=y    # was m; Device Drivers -> SCSI device support -> SCSI device support
 +
CONFIG_BLK_DEV_SD=y  # was m; SCSI, SATA, PATA, USB and more hard disks; Device Drives -> SCSI device support -> SCSI disk support
 +
 
 +
c) Filesystems
 
CONFIG_EXT2_FS=y  # was m; File Systems -> Second Extended fs support
 
CONFIG_EXT2_FS=y  # was m; File Systems -> Second Extended fs support
 
CONFIG_EXT3_FS=y  # was m; File Systems -> Ext3 journalling fs support
 
CONFIG_EXT3_FS=y  # was m; File Systems -> Ext3 journalling fs support
Line 29: Line 36:
 
   CONFIG_FS_MBCACHE=y  # was m; set by EXT3_FS
 
   CONFIG_FS_MBCACHE=y  # was m; set by EXT3_FS
  
d) Extra information for uname (useful)
+
CONFIG_NLS=y  # was m; File Systems -> Native Langugae Support
CONFIG_LOCALVERSION=-maddes.freelink  # was not set; General Setup -> Local version - append to kernel release
+
CONFIG_NLS_UTF8=y  # was m; changed to y; File Systems -> Native Langugae Support -> UTF-8
 +
 
 +
---
 +
 
 +
z) Additional settings for a Vanilla config (via make ARCH=arm orion5x_defconfig)
 +
CONFIG_MACH_LINKSTATION_PRO=y  # was not set; System Type -> Orion Implementations -> Buffalo Linkstation Pro/Live
 +
CONFIG_BLK_DEV_INITRD=y        # was not set; General Setup -> Initial RAM filesystem and RAM disk (initramfs/initrd) support
 +
CONFIG_BLK_DEV_RAM=y          # was not set; Device Drivers -> Block Devices -> RAM block device support
 +
</pre>
 +
 
 +
* Recommended additional settings:
 +
<pre>
 +
a) Extra information for uname, etc.
 +
CONFIG_LOCALVERSION=-freelink.maddes # was not set; General Setup -> Local version - append to kernel release
 +
                                      # NOTE!!! Also changes modules directory to /lib/modules/2.6.26-freelink.maddes
 
CONFIG_LOCALVERSION_AUTO=y            # was not set; General Setup -> Automatically append version information to the version string
 
CONFIG_LOCALVERSION_AUTO=y            # was not set; General Setup -> Automatically append version information to the version string
 +
</pre>
  
e) Kernel features for embedded devices (seems optional)
+
* Additional settings related to embedded devices:
 +
<pre>
 +
a) Kernel features for embedded devices
 
CONFIG_PREEMPT=y        # was not set; Kernel Features -> Preemptible Kernel; suggested for embedded devices; also selected by Buffalo?
 
CONFIG_PREEMPT=y        # was not set; Kernel Features -> Preemptible Kernel; suggested for embedded devices; also selected by Buffalo?
 
   CONFIG_LOCK_KERNEL=y    # was not set; set by PREEMPT
 
   CONFIG_LOCK_KERNEL=y    # was not set; set by PREEMPT
 
   CONFIG_DEBUG_PREEMPT=y  # was not set; set by PREEMPT, changed to not set; Kernel Hacking -> Debug preemptible kernel
 
   CONFIG_DEBUG_PREEMPT=y  # was not set; set by PREEMPT, changed to not set; Kernel Hacking -> Debug preemptible kernel
  
f) Loop device (don't know, was in my last change for bigger RAM disks)
+
b) Allow tweaking of more kernel options
CONFIG_BLK_DEV_LOOP=y  # was m; Block Devices -> Loopback device support
+
CONFIG_EMBEDDED=y  # was not set; allows for more kernel tweaks; General Setup -> Configure standard kernel features (for small systems)
 
+
g) Allow tweaking of more kernel options
+
CONFIG_EMBEDDED=y  #was not set; General Setup -> Configure standard kernel features (for small systems)
+
 
</pre>
 
</pre>
  
 
* Other settings still to be investigated on:
 
* Other settings still to be investigated on:
 
<pre>
 
<pre>
CONFIG_ARCH_VERSATILE=y
+
Additions to kernel or enabled settings:
CONFIG_ARCH_VERSATILE_PB=y
+
========================================
CONFIG_ARM_AMBA=y
+
CONFIG_AX25_DAMA_SLAVE=y # was not set
CONFIG_ARM_VIC=y
+
CONFIG_BLK_DEV_DM=y # was m
CONFIG_ASYNC_CORE=m
+
CONFIG_BLK_DEV_LOOP=y # was m
CONFIG_BLK_DEV_DM=y
+
CONFIG_BLK_DEV_MD=y # was m
CONFIG_BLK_DEV_MD=y
+
CONFIG_CAPI_AVM=y
CONFIG_BLK_DEV_SD=y
+
CONFIG_CAPI_TRACE=y
CONFIG_BLK_DEV_SR=y
+
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_BT_HCIUART=m
+
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_BT_HCIUART_BCSP=y
+
CONFIG_CHR_DEV_SG=y # was m
CONFIG_BT_HCIUART_H4=y
+
CONFIG_CODA_FS_OLD_API=y # was not set
CONFIG_BT_HCIUART_LL=y
+
CONFIG_COMPAT_BRK=y # was not set
CONFIG_CHR_DEV_SG=y
+
CONFIG_CRAMFS=y # was m
CONFIG_COMPAT_BRK=y
+
CONFIG_CRC16=y # was m
CONFIG_CPU_ABRT_EV5TJ=y
+
CONFIG_CRC_CCITT=y # was m
CONFIG_CPU_ARM926T=y
+
CONFIG_CRYPTO_BLKCIPHER=y # was m
CONFIG_CPU_COPY_V4WB=y
+
CONFIG_CRYPTO_CBC=y # was m
CONFIG_CRAMFS=y
+
CONFIG_CRYPTO_DES=y # was m
CONFIG_CRC16=y
+
CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=y
CONFIG_CRC_CCITT=y
+
CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
CONFIG_CRYPTO_BLKCIPHER=y
+
CONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=50
CONFIG_CRYPTO_CBC=y
+
CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
CONFIG_CRYPTO_DES=y
+
CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
CONFIG_CRYPTO_HASH=m
+
CONFIG_DVB_CINERGYT2_TUNING=y # was not set
CONFIG_CRYPTO_HMAC=m
+
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" # was "utf-8"
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+
CONFIG_FPE_FASTFPE=y # was not set
CONFIG_FPE_FASTFPE=y
+
CONFIG_FW_LOADER=y # was m
CONFIG_FW_LOADER=y
+
CONFIG_IKCONFIG_PROC=y
CONFIG_ICST307=y
+
CONFIG_INPUT_MISC=y # was not set
CONFIG_INET6_XFRM_MODE_BEET=y
+
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_INET6_XFRM_MODE_TRANSPORT=y
+
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_INET6_XFRM_MODE_TUNNEL=y
+
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_INET_DIAG=y
+
CONFIG_JFFS2_FS=y # was m
CONFIG_INET_TCP_DIAG=y
+
CONFIG_JFS_FS=y # was m
CONFIG_INET_TUNNEL=y
+
CONFIG_JFS_STATISTICS=y # was not set
CONFIG_INET_XFRM_MODE_BEET=y
+
CONFIG_KEYBOARD_GPIO=y # was m
CONFIG_INET_XFRM_MODE_TRANSPORT=y
+
CONFIG_LDM_DEBUG=y # was not set
CONFIG_INET_XFRM_MODE_TUNNEL=y
+
CONFIG_LEGACY_PTY_COUNT=16 # was not set
CONFIG_IP_PNP=y
+
CONFIG_LEGACY_PTYS=y
CONFIG_IP_PNP_DHCP=y
+
CONFIG_LOCKD=y # was m
CONFIG_IPV6=y
+
CONFIG_LOG_BUF_SHIFT=14 # was 17
CONFIG_IPV6_SIT=y
+
CONFIG_MEDIA_TUNER_CUSTOMIZE=y # was not set
 +
CONFIG_MII=y # was m
 +
CONFIG_MMC_BLOCK_BOUNCE=y
 +
CONFIG_MTD_DEBUG=y # was not set
 +
CONFIG_MTD_DEBUG_VERBOSE=0
 +
CONFIG_MV643XX_ETH=y # was m
 +
CONFIG_NCPFS_IOCTL_LOCKING=y # was not set
 +
CONFIG_NCPFS_PACKET_SIGNING=y # was not set
 +
CONFIG_NCPFS_SMALLDOS=y # was not set
 +
CONFIG_NCPFS_STRONG=y # was not set
 +
CONFIG_NETCONSOLE=y # was m
 +
CONFIG_NETPOLL_TRAP=y # was not set
 +
CONFIG_NFS_ACL_SUPPORT=y # was m
 +
CONFIG_NFS_FS=y # was m
 +
CONFIG_REISERFS_FS=y # was m
 +
CONFIG_REISERFS_PROC_INFO=y # was not set
 +
CONFIG_RPCSEC_GSS_KRB5=y # was m
 +
CONFIG_SUNRPC=y # was m
 +
CONFIG_SUNRPC_GSS=y # was m
 +
CONFIG_USER_SCHED=y # was not set
 +
CONFIG_ZD1211RW_DEBUG=y # was not set
 +
CONFIG_ZLIB_DEFLATE=y # was m
 +
CONFIG_ZLIB_INFLATE=y # was m
 +
 
 +
 
 +
Removed from kernel or additional modules:
 +
==========================================
 +
CONFIG_ASYNC_CORE=m # was y
 +
CONFIG_BACKLIGHT_CLASS_DEVICE=m # was y
 +
CONFIG_BAYCOM_SER_FDX=m # was not set
 +
CONFIG_BAYCOM_SER_HDX=m # was not set
 +
CONFIG_BPQETHER=m # was not set
 +
CONFIG_CDROM_PKTCDVD=m # was not set
 +
CONFIG_CRYPTO_CRYPTD=m # was not set
 +
CONFIG_CRYPTO_HASH=m # was y
 +
CONFIG_CRYPTO_HMAC=m # was y
 +
CONFIG_DUMMY=m # was not set
 +
CONFIG_IKCONFIG=m
 
CONFIG_IRCOMM=m
 
CONFIG_IRCOMM=m
CONFIG_IRDA=m
+
CONFIG_IRDA=m # was not set
 
CONFIG_IRLAN=m
 
CONFIG_IRLAN=m
CONFIG_JFFS2_FS=y
+
CONFIG_ISDN=m # was not set
CONFIG_JFS_FS=y
+
CONFIG_ISDN_CAPI=m
CONFIG_JFS_STATISTICS=y
+
CONFIG_ISDN_CAPI_CAPI20=m
 +
CONFIG_ISDN_CAPI_CAPIFS=m
 +
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
 +
CONFIG_ISDN_DRV_AVMB1_C4=m
 
CONFIG_KINGSUN_DONGLE=m
 
CONFIG_KINGSUN_DONGLE=m
CONFIG_LDM_DEBUG=y
+
CONFIG_LCD_CLASS_DEVICE=m # was not set
CONFIG_LEGACY_PTY_COUNT=16
+
CONFIG_MACVLAN=m # was not set
CONFIG_LEGACY_PTYS=y
+
CONFIG_LLC=m
+
CONFIG_LOCKD=y
+
CONFIG_LOG_BUF_SHIFT=14
+
 
CONFIG_MCS_FIR=m
 
CONFIG_MCS_FIR=m
CONFIG_MMC=m
+
CONFIG_MMC=m # was not set
 
CONFIG_MMC_BLOCK=m
 
CONFIG_MMC_BLOCK=m
CONFIG_MMC_BLOCK_BOUNCE=y
+
CONFIG_PHANTOM=m # was not set
CONFIG_MTD_DEBUG=y
+
 
CONFIG_MTD_DEBUG_VERBOSE=0
+
* Not necessary changes:
CONFIG_NETCONSOLE=y
+
# FAT support, maybe needed when booting from USB or other devices (=not LS Pro / LS Live v2)
CONFIG_NETPOLL_TRAP=y
+
CONFIG_NLS_CODEPAGE_437=y # was m, this is vanilla
CONFIG_NFS_ACL_SUPPORT=y
+
CONFIG_NLS_CODEPAGE_850=y # was m, this is vanilla
CONFIG_NFS_FS=y
+
CONFIG_NLS_DEFAULT="iso8859-1" # was "utf-8" for Debian, this is vanilla
CONFIG_NLS=y
+
CONFIG_NLS_ISO8859_1=y # was m, this is vanilla
CONFIG_NLS_CODEPAGE_437=y
+
CONFIG_NLS_ISO8859_2=y # was m, this is vanilla
CONFIG_NLS_CODEPAGE_850=y
+
</pre>
CONFIG_NLS_DEFAULT="iso8859-1"
+
* Settings that seem not to be important for LS Pro / LS Live v2:
CONFIG_NLS_ISO8859_1=y
+
<pre>
CONFIG_NLS_ISO8859_2=y
+
* USB:
CONFIG_REISERFS_FS=y
+
USB:
CONFIG_REISERFS_PROC_INFO=y
+
CONFIG_USB=y # was m
CONFIG_ROOT_NFS=y
+
CONFIG_USB_ALI_M5632=y # was not set
CONFIG_RPCSEC_GSS_KRB5=y
+
CONFIG_USB_AMD5536UDC=m
CONFIG_SND_DUMMY=m
+
CONFIG_USB_AN2720=y # was not set
CONFIG_SND_DYNAMIC_MINORS=y
+
CONFIG_USB_AUERSWALD=m # was not set
CONFIG_SND_MIXER_OSS=m
+
CONFIG_USB_CYTHERM=m # was not set
CONFIG_SND_MPU401=m
+
CONFIG_USB_DSBR=m # was not set
CONFIG_SND_MTPAV=m
+
CONFIG_USB_EHCI_HCD=y # was m
 +
CONFIG_USB_EPSON2888=y # was not set
 +
CONFIG_USB_ETH=m
 +
CONFIG_USB_ETH_RNDIS=y
 +
CONFIG_USB_FILE_STORAGE=m
 +
CONFIG_USB_FILE_STORAGE_TEST=y
 +
CONFIG_USB_G_PRINTER=m
 +
CONFIG_USB_G_SERIAL=m
 +
CONFIG_USB_GADGET=m # was not set
 +
CONFIG_USB_GADGET_AMD5536UDC=y
 +
CONFIG_USB_GADGET_DUALSPEED=y
 +
CONFIG_USB_GADGET_SELECTED=y
 +
CONFIG_USB_GADGETFS=m
 +
CONFIG_USB_IDMOUSE=m # was not set
 +
CONFIG_USB_IRDA=m
 +
CONFIG_USB_LCD=m # was not set
 +
CONFIG_USB_LED=m # was not set
 +
CONFIG_USB_LEGOTOWER=m # was not set
 +
CONFIG_USB_LIBUSUAL=y # was not set
 +
CONFIG_USB_MDC800=m # was not set
 +
CONFIG_USB_MICROTEK=m # was not set
 +
CONFIG_USB_MIDI_GADGET=m
 +
CONFIG_USB_OHCI_HCD=y # was m
 +
CONFIG_USB_PHIDGETKIT=m # was not set
 +
CONFIG_USB_PHIDGETSERVO=m # was not set
 +
CONFIG_USB_RIO500=m # was not set
 +
CONFIG_USB_SERIAL_SAFE_PADDED=y # was not set
 +
CONFIG_USB_SERIAL_TI=m # was not set
 +
CONFIG_USB_SERIAL_WHITEHEAT=m # was not set
 +
CONFIG_USB_SISUSBVGA=y # was m
 +
CONFIG_USB_SL811_HCD=y # was m
 +
CONFIG_USB_STORAGE=y # was m
 +
CONFIG_USB_TEST=m # was not set
 +
CONFIG_USB_UHCI_HCD=y # was m
 +
CONFIG_USB_ZD1201=m # was not set
 +
CONFIG_USB_ZERO=m
 +
 
 +
Sound (Dummy-Card):
 +
CONFIG_SND_DUMMY=m # was not set
 +
CONFIG_SND_DYNAMIC_MINORS=y # was not set
 +
CONFIG_SND_MIXER_OSS=m # was not set
 +
CONFIG_SND_MTPAV=m # was not set
 
CONFIG_SND_OSSEMUL=y
 
CONFIG_SND_OSSEMUL=y
CONFIG_SND_PCM_OSS=m
+
CONFIG_SND_PCM_OSS=m # was not set
 
CONFIG_SND_PCM_OSS_PLUGINS=y
 
CONFIG_SND_PCM_OSS_PLUGINS=y
 
CONFIG_SND_SEQ_DUMMY=m
 
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_SEQUENCER=m
+
CONFIG_SND_SEQUENCER=m # was not set
 
CONFIG_SND_SEQUENCER_OSS=y
 
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_SERIAL_U16550=m
+
CONFIG_SND_SERIAL_U16550=m # was not set
CONFIG_SND_VERBOSE_PRINTK=y
+
CONFIG_SND_VERBOSE_PRINTK=y # was not set
 
CONFIG_SND_VIRMIDI=m
 
CONFIG_SND_VIRMIDI=m
CONFIG_SUNRPC=y
+
 
CONFIG_SUNRPC_GSS=y
+
Bluetooth:
CONFIG_USB=y
+
CONFIG_BT_HCIUART=m # was not set
CONFIG_USB_ALI_M5632=y
+
CONFIG_BT_HCIUART_BCSP=y
CONFIG_USB_AN2720=y
+
CONFIG_BT_HCIUART_H4=y
CONFIG_USB_CYTHERM=m
+
CONFIG_BT_HCIUART_LL=y
CONFIG_USB_EHCI_HCD=y
+
 
CONFIG_USB_EPSON2888=y
+
Touchscreen:
CONFIG_USB_IRDA=m
+
CONFIG_INPUT_TOUCHSCREEN=y # was not set
CONFIG_USB_LCD=m
+
CONFIG_TOUCHSCREEN_ELO=m
CONFIG_USB_LED=m
+
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_USB_OHCI_HCD=y
+
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_USB_SERIAL_SAFE_PADDED=y
+
CONFIG_TOUCHSCREEN_MK712=m
CONFIG_USB_SERIAL_TI=m
+
CONFIG_TOUCHSCREEN_MTOUCH=m
CONFIG_USB_SERIAL_WHITEHEAT=m
+
CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_USB_SL811_HCD=y
+
CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
CONFIG_USB_STORAGE=y
+
CONFIG_TOUCHSCREEN_TOUCHWIN=m
CONFIG_USB_UHCI_HCD=y
+
CONFIG_TOUCHSCREEN_UCB1400=m
CONFIG_USB_ZD1201=m
+
CONFIG_USER_SCHED=y
+
CONFIG_ZD1211RW_DEBUG=y
+
CONFIG_ZLIB_DEFLATE=y  # set via IPv6, IPNet, etc.
+
CONFIG_ZLIB_INFLATE=y  # set via IPv6, IPNet, etc.
+
</pre>
+
* Settings that seem not to be important:
+
<pre>
+
CONFIG_INPUT_TOUCHSCREEN=y
+
 
CONFIG_TOUCHSCREEN_USB_3M=y
 
CONFIG_TOUCHSCREEN_USB_3M=y
 
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
 
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
Line 176: Line 265:
 
CONFIG_TOUCHSCREEN_USB_ITM=y
 
CONFIG_TOUCHSCREEN_USB_ITM=y
 
CONFIG_TOUCHSCREEN_USB_PANJIT=y
 
CONFIG_TOUCHSCREEN_USB_PANJIT=y
 +
CONFIG_TOUCHSCREEN_WM9705=y
 +
CONFIG_TOUCHSCREEN_WM9712=y
 +
CONFIG_TOUCHSCREEN_WM9713=y
 +
CONFIG_TOUCHSCREEN_WM97XX=m
 
</pre>
 
</pre>
  
  
 
----
 
----

Latest revision as of 04:30, 21 March 2011

Needed are some explanations about what has to be set in the kernel config to make it run on a Linkstation, Kurobox, etc. - Maddes 11:05, 28 March 2010 (UTC)
There should also be information specific to the TSProV2 and TSLive since those have been shown to use an ARM9 SoC, not ARM11 Speeddymon 04:16, 21 March 2011 (UTC)

  • For Linkstation:
    Only a simple diff between Davy Gravy's config and the vanilla defconfig_orion5x or Debian config would reveal a lot of non-mandatory settings (just my guess).
    A list of the mandatory settings with some headwords would be great and would make it easier to adopt to newer kernels. And maybe get these even upstream. - Maddes 11:05, 28 March 2010 (UTC)
  • Davy Gravy's Debian kernel works with the modules of the pure Debian Build, so it must be something that has been put into the kernel directly.



Maddes 20:17, 8 April 2010 (UTC)
Started to analyse everything what was added by Davy Gravy for Debian Lenny kernel 2.6.26:
Check out the Kernel Configuration Archive to see what each config setting stands for.
Concentrated on the things Davy added, by using a diff of his config against the original Debian one, then sorted the output and only looked at the lines starting with a plus (+) (result files).

  • Mandatory settings for a booting and working kernel on LS Pro / LS Live V2 (without XFS support):

Maybe these can be reduced even further?

a) Support for bigger RAM disks
CONFIG_BLK_DEV_RAM_COUNT=3     # was 16; Device Drivers -> Block Devices -> Default number of RAM disks
CONFIG_BLK_DEV_RAM_SIZE=32768  # was 4096; Device Drivers -> Block Devices -> Default RAM disk size (kBytes)

b) Marvell SATA driver
CONFIG_ATA=y      # was m; Device Drivers -> Serial ATA
CONFIG_SATA_MV=y  # was m; Device Drivers -> Serial ATA -> Marvell SATA support

CONFIG_SCSI=y     # was m; Device Drivers -> SCSI device support -> SCSI device support
CONFIG_BLK_DEV_SD=y  # was m; SCSI, SATA, PATA, USB and more hard disks; Device Drives -> SCSI device support -> SCSI disk support

c) Filesystems
CONFIG_EXT2_FS=y  # was m; File Systems -> Second Extended fs support
CONFIG_EXT3_FS=y  # was m; File Systems -> Ext3 journalling fs support
  CONFIG_JBD=y         # was m; set by EXT3_FS
  CONFIG_FS_MBCACHE=y  # was m; set by EXT3_FS

CONFIG_NLS=y  # was m; File Systems -> Native Langugae Support
CONFIG_NLS_UTF8=y  # was m; changed to y; File Systems -> Native Langugae Support -> UTF-8

---

z) Additional settings for a Vanilla config (via make ARCH=arm orion5x_defconfig)
CONFIG_MACH_LINKSTATION_PRO=y  # was not set; System Type -> Orion Implementations -> Buffalo Linkstation Pro/Live
CONFIG_BLK_DEV_INITRD=y        # was not set; General Setup -> Initial RAM filesystem and RAM disk (initramfs/initrd) support
CONFIG_BLK_DEV_RAM=y           # was not set; Device Drivers -> Block Devices -> RAM block device support
  • Recommended additional settings:
a) Extra information for uname, etc.
CONFIG_LOCALVERSION=-freelink.maddes  # was not set; General Setup -> Local version - append to kernel release
                                      # NOTE!!! Also changes modules directory to /lib/modules/2.6.26-freelink.maddes
CONFIG_LOCALVERSION_AUTO=y            # was not set; General Setup -> Automatically append version information to the version string
  • Additional settings related to embedded devices:
a) Kernel features for embedded devices
CONFIG_PREEMPT=y        # was not set; Kernel Features -> Preemptible Kernel; suggested for embedded devices; also selected by Buffalo?
  CONFIG_LOCK_KERNEL=y    # was not set; set by PREEMPT
  CONFIG_DEBUG_PREEMPT=y  # was not set; set by PREEMPT, changed to not set; Kernel Hacking -> Debug preemptible kernel

b) Allow tweaking of more kernel options
CONFIG_EMBEDDED=y  # was not set; allows for more kernel tweaks; General Setup -> Configure standard kernel features (for small systems)
  • Other settings still to be investigated on:
Additions to kernel or enabled settings:
========================================
CONFIG_AX25_DAMA_SLAVE=y	# was not set
CONFIG_BLK_DEV_DM=y	# was m
CONFIG_BLK_DEV_LOOP=y	# was m
CONFIG_BLK_DEV_MD=y	# was m
CONFIG_CAPI_AVM=y
CONFIG_CAPI_TRACE=y
CONFIG_CDROM_PKTCDVD_BUFFERS=8
CONFIG_CDROM_PKTCDVD_WCACHE=y
CONFIG_CHR_DEV_SG=y	# was m
CONFIG_CODA_FS_OLD_API=y	# was not set
CONFIG_COMPAT_BRK=y	# was not set
CONFIG_CRAMFS=y	# was m
CONFIG_CRC16=y	# was m
CONFIG_CRC_CCITT=y	# was m
CONFIG_CRYPTO_BLKCIPHER=y	# was m
CONFIG_CRYPTO_CBC=y	# was m
CONFIG_CRYPTO_DES=y	# was m
CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=y
CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250
CONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=50
CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512
CONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32
CONFIG_DVB_CINERGYT2_TUNING=y	# was not set
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"	# was "utf-8"
CONFIG_FPE_FASTFPE=y	# was not set
CONFIG_FW_LOADER=y	# was m
CONFIG_IKCONFIG_PROC=y
CONFIG_INPUT_MISC=y	# was not set
CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_MIDDLEWARE=y
CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
CONFIG_JFFS2_FS=y	# was m
CONFIG_JFS_FS=y	# was m
CONFIG_JFS_STATISTICS=y	# was not set
CONFIG_KEYBOARD_GPIO=y	# was m
CONFIG_LDM_DEBUG=y	# was not set
CONFIG_LEGACY_PTY_COUNT=16	# was not set
CONFIG_LEGACY_PTYS=y
CONFIG_LOCKD=y	# was m
CONFIG_LOG_BUF_SHIFT=14	# was 17
CONFIG_MEDIA_TUNER_CUSTOMIZE=y	# was not set
CONFIG_MII=y	# was m
CONFIG_MMC_BLOCK_BOUNCE=y
CONFIG_MTD_DEBUG=y	# was not set
CONFIG_MTD_DEBUG_VERBOSE=0
CONFIG_MV643XX_ETH=y	# was m
CONFIG_NCPFS_IOCTL_LOCKING=y	# was not set
CONFIG_NCPFS_PACKET_SIGNING=y	# was not set
CONFIG_NCPFS_SMALLDOS=y	# was not set
CONFIG_NCPFS_STRONG=y	# was not set
CONFIG_NETCONSOLE=y	# was m
CONFIG_NETPOLL_TRAP=y	# was not set
CONFIG_NFS_ACL_SUPPORT=y	# was m
CONFIG_NFS_FS=y	# was m
CONFIG_REISERFS_FS=y	# was m
CONFIG_REISERFS_PROC_INFO=y	# was not set
CONFIG_RPCSEC_GSS_KRB5=y	# was m
CONFIG_SUNRPC=y	# was m
CONFIG_SUNRPC_GSS=y	# was m
CONFIG_USER_SCHED=y	# was not set
CONFIG_ZD1211RW_DEBUG=y	# was not set
CONFIG_ZLIB_DEFLATE=y	# was m
CONFIG_ZLIB_INFLATE=y	# was m


Removed from kernel or additional modules:
==========================================
CONFIG_ASYNC_CORE=m	# was y
CONFIG_BACKLIGHT_CLASS_DEVICE=m	# was y
CONFIG_BAYCOM_SER_FDX=m	# was not set
CONFIG_BAYCOM_SER_HDX=m	# was not set
CONFIG_BPQETHER=m	# was not set
CONFIG_CDROM_PKTCDVD=m	# was not set
CONFIG_CRYPTO_CRYPTD=m	# was not set
CONFIG_CRYPTO_HASH=m	# was y
CONFIG_CRYPTO_HMAC=m	# was y
CONFIG_DUMMY=m	# was not set
CONFIG_IKCONFIG=m
CONFIG_IRCOMM=m
CONFIG_IRDA=m	# was not set
CONFIG_IRLAN=m
CONFIG_ISDN=m	# was not set
CONFIG_ISDN_CAPI=m
CONFIG_ISDN_CAPI_CAPI20=m
CONFIG_ISDN_CAPI_CAPIFS=m
CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
CONFIG_ISDN_DRV_AVMB1_C4=m
CONFIG_KINGSUN_DONGLE=m
CONFIG_LCD_CLASS_DEVICE=m	# was not set
CONFIG_MACVLAN=m	# was not set
CONFIG_MCS_FIR=m
CONFIG_MMC=m	# was not set
CONFIG_MMC_BLOCK=m
CONFIG_PHANTOM=m	# was not set

* Not necessary changes:
# FAT support, maybe needed when booting from USB or other devices (=not LS Pro / LS Live v2)
CONFIG_NLS_CODEPAGE_437=y		# was m, this is vanilla
CONFIG_NLS_CODEPAGE_850=y		# was m, this is vanilla
CONFIG_NLS_DEFAULT="iso8859-1"	# was "utf-8" for Debian, this is vanilla
CONFIG_NLS_ISO8859_1=y			# was m, this is vanilla
CONFIG_NLS_ISO8859_2=y			# was m, this is vanilla
  • Settings that seem not to be important for LS Pro / LS Live v2:
* USB:
USB:
CONFIG_USB=y					# was m
CONFIG_USB_ALI_M5632=y			# was not set
CONFIG_USB_AMD5536UDC=m
CONFIG_USB_AN2720=y				# was not set
CONFIG_USB_AUERSWALD=m			# was not set
CONFIG_USB_CYTHERM=m			# was not set
CONFIG_USB_DSBR=m				# was not set
CONFIG_USB_EHCI_HCD=y			# was m
CONFIG_USB_EPSON2888=y			# was not set
CONFIG_USB_ETH=m
CONFIG_USB_ETH_RNDIS=y
CONFIG_USB_FILE_STORAGE=m
CONFIG_USB_FILE_STORAGE_TEST=y
CONFIG_USB_G_PRINTER=m
CONFIG_USB_G_SERIAL=m
CONFIG_USB_GADGET=m				# was not set
CONFIG_USB_GADGET_AMD5536UDC=y
CONFIG_USB_GADGET_DUALSPEED=y
CONFIG_USB_GADGET_SELECTED=y
CONFIG_USB_GADGETFS=m
CONFIG_USB_IDMOUSE=m			# was not set
CONFIG_USB_IRDA=m
CONFIG_USB_LCD=m				# was not set
CONFIG_USB_LED=m				# was not set
CONFIG_USB_LEGOTOWER=m			# was not set
CONFIG_USB_LIBUSUAL=y			# was not set
CONFIG_USB_MDC800=m				# was not set
CONFIG_USB_MICROTEK=m			# was not set
CONFIG_USB_MIDI_GADGET=m
CONFIG_USB_OHCI_HCD=y			# was m
CONFIG_USB_PHIDGETKIT=m			# was not set
CONFIG_USB_PHIDGETSERVO=m		# was not set
CONFIG_USB_RIO500=m				# was not set
CONFIG_USB_SERIAL_SAFE_PADDED=y	# was not set
CONFIG_USB_SERIAL_TI=m			# was not set
CONFIG_USB_SERIAL_WHITEHEAT=m	# was not set
CONFIG_USB_SISUSBVGA=y			# was m
CONFIG_USB_SL811_HCD=y			# was m
CONFIG_USB_STORAGE=y			# was m
CONFIG_USB_TEST=m				# was not set
CONFIG_USB_UHCI_HCD=y			# was m
CONFIG_USB_ZD1201=m				# was not set
CONFIG_USB_ZERO=m

Sound (Dummy-Card):
CONFIG_SND_DUMMY=m				# was not set
CONFIG_SND_DYNAMIC_MINORS=y		# was not set
CONFIG_SND_MIXER_OSS=m			# was not set
CONFIG_SND_MTPAV=m				# was not set
CONFIG_SND_OSSEMUL=y
CONFIG_SND_PCM_OSS=m			# was not set
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_SEQUENCER=m			# was not set
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_SERIAL_U16550=m		# was not set
CONFIG_SND_VERBOSE_PRINTK=y		# was not set
CONFIG_SND_VIRMIDI=m

Bluetooth:
CONFIG_BT_HCIUART=m			# was not set
CONFIG_BT_HCIUART_BCSP=y
CONFIG_BT_HCIUART_H4=y
CONFIG_BT_HCIUART_LL=y

Touchscreen:
CONFIG_INPUT_TOUCHSCREEN=y	# was not set
CONFIG_TOUCHSCREEN_ELO=m
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GUNZE=m
CONFIG_TOUCHSCREEN_MK712=m
CONFIG_TOUCHSCREEN_MTOUCH=m
CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
CONFIG_TOUCHSCREEN_TOUCHWIN=m
CONFIG_TOUCHSCREEN_UCB1400=m
CONFIG_TOUCHSCREEN_USB_3M=y
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y
CONFIG_TOUCHSCREEN_USB_EGALAX=y
CONFIG_TOUCHSCREEN_USB_ETURBO=y
CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_TOUCHSCREEN_USB_GUNZE=y
CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
CONFIG_TOUCHSCREEN_USB_IRTOUCH=y
CONFIG_TOUCHSCREEN_USB_ITM=y
CONFIG_TOUCHSCREEN_USB_PANJIT=y
CONFIG_TOUCHSCREEN_WM9705=y
CONFIG_TOUCHSCREEN_WM9712=y
CONFIG_TOUCHSCREEN_WM9713=y
CONFIG_TOUCHSCREEN_WM97XX=m