Difference between revisions of "LTSI Kernel Porting Information: Debian Wheezy"
Line 7: | Line 7: | ||
(Please describe your changes for LTSI to work for the target distribution) | (Please describe your changes for LTSI to work for the target distribution) | ||
− | # | + | # Updated linux kernel |
I supported CuBox to LTSI 3.4.46. This kernel does not support CuBox, I needed to backports patches from | I supported CuBox to LTSI 3.4.46. This kernel does not support CuBox, I needed to backports patches from | ||
latest kernel. | latest kernel. | ||
I supported SATA, USB, Ether, serial and SPI. SDHI does not support. | I supported SATA, USB, Ether, serial and SPI. SDHI does not support. | ||
+ | |||
+ | # Checked arm architecture in Debian | ||
+ | Debian is preparing armel and armhf as the 32bit arm architecture. | ||
+ | I checked operation in both. | ||
='''Changes:'''= | ='''Changes:'''= |
Revision as of 14:55, 2 September 2013
Contents
LTSI Kernel Porting Information: Debian GNU/Linux 7.0 (Wheezy), Jessie(Debian next version's codename) and Sid
The following shows the information of the result of porting LTSI Kernel to Debian GNU/Linux 7.0 (Wheezy), Jessie (Debian next version's codename) and sid . Anyone is more than well come to add information here in the following format
What had been done:
(Please describe your changes for LTSI to work for the target distribution)
- Updated linux kernel
I supported CuBox to LTSI 3.4.46. This kernel does not support CuBox, I needed to backports patches from latest kernel. I supported SATA, USB, Ether, serial and SPI. SDHI does not support.
- Checked arm architecture in Debian
Debian is preparing armel and armhf as the 32bit arm architecture. I checked operation in both.
Changes:
(Please describe summary of your changes and suggestions for others)
Change etc/inittab
I added a line to etc/inittab following:
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
Usually, serial console is not enabled Debian. First, because we need to login CuBox from serial console, you need to add this line.
Add etc/fstab
When Debian does not use an installer, etc/fstab is usually empty. Therefore, a user needs to change. I added the device used as rootfs after boot to etc/fstab following:
# <file system> <mount> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/sda1 / ext2 defaults,errors=remount-ro 0 1
Patches:
(link to your patches for LTSI if you have any)
Linux kernel
I am managing patches in https://github.com/iwamatsu/linux/tree/3.4.46-ltsi-cubox
Most patches were cherry-picked from linux upstream kernel.
Notes:
How to boot from USB (This is really my note...):
CuBox>> usb start ; ext2load usb 0 2000000 uImage ; bootm 2000000
Boot log (Wheezy)
CuBox>> usb start (Re)start USB... USB: Register 10011 NbrPorts 1 USB EHCI 1.00 scanning bus for devices... 2 USB Device(s) found Waiting for storage device(s) to settle before scanning... scanning bus for storage devices... 1 Storage Device(s) found CuBox>> ext2load usb 0 2000000 uImage Loading file "uImage" from usb device 0:1 (usbda1) .... .............................................................................................................................................................................................. 2339168 bytes read CuBox>> bootm 2000000 ## Booting kernel from Legacy Image at 02000000 ... Image Name: Linux-3.4.46-ltsi-00806-g5181caf Created: 2013-08-30 8:39:14 UTC Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2339104 Bytes = 2.2 MB Load Address: 00008000 Entry Point: 00008000 Verifying Checksum ... OK Loading Kernel Image ... OK OK Starting kernel ... Uncompressing Linux... done, booting the kernel. Booting Linux on physical CPU 0 Linux version 3.4.46-ltsi-00806-g5181caf (iwamatsu@chimagu) (gcc version 4.7.2 (GCC) ) #72 Fri Aug 30 17:38:55 JST 2013 CPU: ARMv7 Processor [560f5815] revision 5 (ARMv7), cr=10c53c7d CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache Machine: Marvell DB-MV88AP510-BP Development Board Ignoring unrecognised tag 0x41000403 Ignoring unrecognised tag 0x41000404 Truncating RAM at 00000000-3fffffff to -2f7fffff (vmalloc region overlap). Ignoring RAM at 40000000-7fffffff (vmalloc region overlap). Memory policy: ECC disabled, Data cache writeback Built 1 zonelists in Zone order, mobility grouping on. Total pages: 193040 Kernel command line: console=ttyS0,115200n8 root=/dev/sda1 rootdelay=20 PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Memory: 760MB = 760MB total Memory: 766760k/766760k available, 11480k reserved, 0K highmem Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) lowmem : 0xc0000000 - 0xef800000 ( 760 MB) modules : 0xbf000000 - 0xc0000000 ( 16 MB) .text : 0xc0008000 - 0xc04084f0 (4098 kB) .init : 0xc0409000 - 0xc042b000 ( 136 kB) .data : 0xc042c000 - 0xc0456320 ( 169 kB) .bss : 0xc0456344 - 0xc0474d80 ( 123 kB) NR_IRQS:135 gpiochip_add: registered GPIOs 0 to 31 on device: orion_gpio0 gpiochip_add: registered GPIOs 32 to 63 on device: orion_gpio1 sched_clock: 32 bits at 166MHz, resolution 5ns, wraps every 25769ms Console: colour dummy device 80x30 Calibrating delay loop... 789.70 BogoMIPS (lpj=3948544) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok Setting up static identity map for 0x307290 - 0x3072e8 devtmpfs: initialized NET: Registered protocol family 16 DMA: preallocated 256 KiB pool for atomic coherent allocations Dove 88AP510 SoC, TCLK = 167 MHz. Tauros2: Enabling L2 cache. Tauros2: L2 cache support initialised in ARMv7 mode. Dove PCIe port 0: link down, ignoring Dove PCIe port 1: link down, ignoring bio: create slab <bio-0> at 0 vgaarb: loaded SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb Switching to clocksource orion_clocksource NET: Registered protocol family 2 IP route cache hash table entries: 32768 (order: 5, 131072 bytes) TCP established hash table entries: 131072 (order: 8, 1048576 bytes) TCP bind hash table entries: 65536 (order: 6, 262144 bytes) TCP: Hash tables configured (established 131072 bind 65536) TCP: reno registered UDP hash table entries: 512 (order: 1, 8192 bytes) UDP-Lite hash table entries: 512 (order: 1, 8192 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. NFS: Registering the id_resolver key type nfs4filelayout_init: NFSv4 File Layout Driver Registering... jffs2: version 2.2. (NAND) �� 2001-2006 Red Hat, Inc. msgmni has been set to 1497 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) mv_xor_shared mv_xor_shared.0: Marvell shared XOR driver mv_xor_shared mv_xor_shared.1: Marvell shared XOR driver mv_xor mv_xor.0: Marvell XOR: ( xor cpy ) mv_xor mv_xor.1: Marvell XOR: ( xor fill cpy ) mv_xor mv_xor.2: Marvell XOR: ( xor cpy ) mv_xor mv_xor.3: Marvell XOR: ( xor fill cpy ) Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled serial8250.0: ttyS0 at MMIO 0xf1012000 (irq = 7) is a 16550A console [ttyS0] enabled serial8250.1: ttyS1 at MMIO 0xf1012100 (irq = 8) is a 16550A brd: module loaded loop: module loaded sata_mv sata_mv.0: cannot get optional clkdev sata_mv sata_mv.0: slots 32 ports 1 scsi0 : sata_mv ata1: SATA max UDMA/133 irq 62 orion_spi orion_spi.0: master is unqueued, this is deprecated m25p80 spi0.0: found w25q32, expected m25p64 m25p80 spi0.0: w25q32 (4096 Kbytes) orion_spi orion_spi.1: master is unqueued, this is deprecated mv643xx_eth: MV-643xx 10/100/1000 ethernet driver version 1.4 mv643xx_eth smi: probed mv643xx_eth_port mv643xx_eth_port.0: eth0: port 0 with MAC address 00:50:43:2e:2e:01 ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver orion-ehci orion-ehci.0: Marvell Orion EHCI orion-ehci orion-ehci.0: new USB bus registered, assigned bus number 1 orion-ehci orion-ehci.0: irq 24, io mem 0xf1050000 orion-ehci orion-ehci.0: USB 2.0 started, EHCI 1.00 hub 1-0:1.0: USB hub found hub 1-0:1.0: 1 port detected orion-ehci orion-ehci.1: Marvell Orion EHCI orion-ehci orion-ehci.1: new USB bus registered, assigned bus number 2 orion-ehci orion-ehci.1: irq 25, io mem 0xf1051000 orion-ehci orion-ehci.1: USB 2.0 started, EHCI 1.00 hub 2-0:1.0: USB hub found hub 2-0:1.0: 1 port detected Initializing USB Mass Storage driver... usbcore: registered new interface driver usb-storage USB Mass Storage support registered. rtc-mv rtc-mv: rtc core: registered rtc-mv as rtc0 i2c /dev entries driver usbcore: registered new interface driver usbhid usbhid: USB HID core driver TCP: cubic registered NET: Registered protocol family 17 Registering the dns_resolver key type VFP support v0.3: implementor 56 architecture 2 part 20 variant 9 rev 5 rtc-mv rtc-mv: setting system clock to 2013-09-02 07:49:38 UTC (1378108178) Waiting 20sec before mounting root device... ata1: SATA link down (SStatus 0 SControl F300) usb 1-1: new high-speed USB device number 2 using orion-ehci scsi1 : usb-storage 1-1:1.0 scsi 1:0:0:0: Direct-Access I-O DATA USB Flash Disk A0A PQ: 0 ANSI: 2 sd 1:0:0:0: [sda] 3948544 512-byte logical blocks: (2.02 GB/1.88 GiB) sd 1:0:0:0: [sda] Write Protect is off sd 1:0:0:0: [sda] Asking for cache data failed sd 1:0:0:0: [sda] Assuming drive cache: write through sd 1:0:0:0: [sda] Asking for cache data failed sd 1:0:0:0: [sda] Assuming drive cache: write through sda: sda1 sd 1:0:0:0: [sda] Asking for cache data failed sd 1:0:0:0: [sda] Assuming drive cache: write through sd 1:0:0:0: [sda] Attached SCSI removable disk kjournald starting. Commit interval 5 seconds EXT3-fs (sda1): using internal journal EXT3-fs (sda1): recovery complete EXT3-fs (sda1): mounted filesystem with ordered data mode VFS: Mounted root (ext3 filesystem) on device 8:1. devtmpfs: mounted Freeing init memory: 136K INIT: version 2.88 booting [info] Using makefile-style concurrent boot in runlevel S. [....] Starting the hotplug events dispatcher: udevdudevd[539]: starting version 175 . ok [....] Synthesizing the initial hotplug events...done. [....] Waiting for /dev to be fully populated...done. [....] Activating swap...done. [....] Checking root file system...fsck from util-linux 2.20.1 /dev/sda1: clean, 9581/123392 files, 63370/493312 blocks done. EXT3-fs (sda1): using internal journal [....] Cleaning up temporary files... /tmp. ok [....] Activating lvm and md swap...done. [....] Checking file systems...fsck from util-linux 2.20.1 done. [....] Mounting local filesystems...done. [....] Activating swapfile swap...done. [....] Cleaning up temporary files.... ok [....] Setting kernel variables ...done. [....] Configuring network interfaces...done. [....] Cleaning up temporary files.... ok INIT: Entering runlevel: 2 [info] Using makefile-style concurrent boot in runlevel 2. [....] Starting enhanced syslogd: rsyslogd. ok [....] Starting periodic command scheduler: cron. ok Debian GNU/Linux 7.0 debian ttyS0 debian login: root Password: Linux debian 3.4.46-ltsi-00806-g5181caf #72 Fri Aug 30 17:38:55 JST 2013 armv7l The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. root@debian:~#