L4Linux network and SD Access
Adam Lackorzynski
adam at os.inf.tu-dresden.de
Sat Jul 8 01:08:27 CEST 2017
On Fri Jul 07, 2017 at 16:49:35 -0500, Daniel (Xiaolong) Wang wrote:
> Many thanks to Matthias and Adam. With you help I was able to get some progress on BeagleBone Black. Here is what I have:
>
> ********* l4linux.cfg *********
> local L4 = require("L4");
>
> local loader = L4.default_loader;
>
> local lxname = "vmlinuz"
>
> -- start io
> local vbus_l4linux = loader:new_channel();
> local vbus_input = loader:new_channel();
>
> loader:start(
> {
> caps = {
> sigma0 = L4.cast(L4.Proto.Factory, L4.Env.sigma0):create(L4.Proto.Sigma0);
> icu = L4.Env.icu;
> input = vbus_input:svr();
> l4linux = vbus_l4linux:svr();
> },
> log = {"IO", "magenta"},
> },
> "rom/io rom/l4linux.io"
> );
>
>
> loader:start(
> {
> caps = {
> vbus = vbus_l4linux;
> },
> l4re_dbg = L4.Dbg.Warn,
> log = L4.Env.log:m("rws");
> },
> "rom/vmlinuz mem=128M console=ttyLv0 lvx_rd=rom/ramdisk-"
> .. L4.Info.arch() .. ".rd root=1:0 ramdisk_size=4000"
> );
>
> ********* l4linux.devs ********* (according to https://github.com/beagleboard/devicetree-source/blob/master/arch/arm/boot/dts/am33xx.dtsi <https://github.com/beagleboard/devicetree-source/blob/master/arch/arm/boot/dts/am33xx.dtsi>)
> local Res = Io.Res
> local Hw = Io.Hw
>
> Io.hw_add_devices(function()
>
> prcm = Hw.Device(function()
> compatible = {"ti,am3-prcm"};
> Resource.regs = Res.mmio(0x44e00000, 0x44e03fff);
> end);
>
> edma = Hw.Device(function()
> Property.hid = "EDMA";
> compatible = {"ti,edma3"};
> Resource.regs = Res.mmio(0x49000000, 0x4900ffff);
> Resource.regs = Res.mmio(0x44e10f90, 0x44e10fcf);
> Resource.irq = Res.irq(12);
> Resource.irq = Res.irq(13);
> Resource.irq = Res.irq(14);
> end);
>
> mmc1 = Hw.Device(function()
> Property.hid = "MMC1";
> compatible = {"ti,omap4-hsmmc"};
> Resource.regs = Res.mmio(0x48060000, 0x48060fff);
> Resource.irq = Res.irq(64);
> -- Property.flags = Io.Hw_device_DF_dma_supported;
> end);
>
> mmc2 = Hw.Device(function()
> Property.hid = "MMC2";
> compatible = {"ti,omap4-hsmmc"};
> Resource.regs = Res.mmio(0x481d8000, 0x481d8fff);
> Resource.irq = Res.irq(28);
> -- Property.flags = Io.Hw_device_DF_dma_supported;
> end);
>
> mmc3 = Hw.Device(function()
> Property.hid = "MMC3";
> compatible = {"ti,omap4-hsmmc"};
> Resource.regs = Res.mmio(0x47810000, 0x47810fff);
> Resource.irq = Res.irq(29);
> -- Property.flags = Io.Hw_device_DF_dma_supported;
> end);
>
> i2c0 = Hw.Device(function()
> Property.hid = "omap4-i2c0";
> compatible = {"ti,omap4-i2c"};
> Resource.regs = Res.mmio(0x44e0b000, 0x44e0bfff);
> Resource.irq = Res.irq(70);
> end);
>
> i2c1 = Hw.Device(function()
> Property.hid = "omap4-i2c1";
> compatible = {"ti,omap3-i2c"};
> Resource.regs = Res.mmio(0x4802a000, 0x4802afff);
> Resource.irq = Res.irq(71);
> end);
> end)
>
> ********* l4linux.io *********
> local hw = Io.system_bus()
>
>
> Io.add_vbus("l4linux", Io.Vi.System_bus
> {
> prcm = wrap(hw:match("ti,am3-prcm"));
> edma = wrap(hw:match("ti,edma3"));
> mmc1 = wrap(hw:match("ti,omap4-hsmmc","MMC1"));
> mmc2 = wrap(hw:match("ti,omap4-hsmmc","MMC2"));
> mmc3 = wrap(hw:match("ti,omap4-hsmmc","MMC3"));
> i2c0 = wrap(hw:match("ti,omap4-i2c","omap4-i2c0"));
> i2c1 = wrap(hw:match("ti,omap4-i2c","omap4-i2c1"));
> })
You're matching too much here (see IO's complaints below).
Only do
mmc1 = wrap(hw.mmc1);
mmc2 = wrap(hw.mmc2);
mmc3 = wrap(hw.mmc3);
i2c0 = wrap(hw.i2c0);
i2c1 = wrap(hw.i2c1);
(or only match for that pattern that matches once).
> However after I run the uimage on the board the system just hang…
>
> Starting kernel ...
>
> L4 Bootstrapper
> Build: #32 Fri Jul 7 17:37:33 EDT 2017, 4.7.3
> Scanning up to 256 MB RAM, starting at offset 32MB
> Memory size is 256MB (80000000 - 8fffffff)
> RAM: 0000000080000000 - 000000008fffffff: 262144kB
> Total RAM: 256MB
> Scanning fiasco
> Scanning sigma0
> Scanning moe
> Moving up to 11 modules behind 81100000
> moving module 02 { 819e0000-81a0949f } -> { 81ad0000-81af949f } [169120]
> moving module 01 { 819ce000-819df33b } -> { 81abe000-81acf33b } [70460]
> moving module 00 { 8194c000-819cd017 } -> { 81a3c000-81abd017 } [528408]
> moving module 10 { 8164c000-8194bfff } -> { 8173c000-81a3bfff } [3145728]
> moving module 09 { 811fa000-8164b47b } -> { 812ea000-8173b47b } [4527228]
> moving module 08 { 81087000-811f98c7 } -> { 81177000-812e98c7 } [1517768]
> moving module 07 { 8102d000-810866ab } -> { 8111d000-811766ab } [366252]
> moving module 06 { 81013000-8102c463 } -> { 81103000-8111c463 } [103524]
> moving module 05 { 81012000-810129d0 } -> { 81102000-811029d0 } [2513]
> moving module 04 { 81011000-810112be } -> { 81101000-811012be } [703]
> moving module 03 { 81010000-810102ff } -> { 81100000-811002ff } [768]
> Loading fiasco
> Loading sigma0
> Loading moe
> find kernel info page...
> found kernel info page (via ELF) at 80002000
> Regions of list 'regions'
> [ 80000000, 80000187] { 188} Root mbi_rt
> [ 80001000, 80001b7f] { b80} Kern fiasco
> [ 80002000, 8008efff] { 8d000} Kern fiasco
> [ 800c0000, 800c9cfb] { 9cfc} Sigma0 sigma0
> [ 800d0000, 800d6177] { 6178} Sigma0 sigma0
> [ 80140000, 8016eff3] { 2eff4} Root moe
> [ 81000000, 8100f5a3] { f5a4} Boot bootstrap
> [ 81100000, 81a3bfff] { 93c000} Root Module
> found kernel options (via ELF) at 80003000
> API Version: (87) experimental
> Sigma0 config ip:800c0100 sp:00000000
> Roottask config ip:80140260 sp:00000000
> Starting kernel fiasco at 80001350
> Hello from Startup::stage2
> FPU: Initialize
> FPU0: Subarch: 3, Part: 30, Rev: 3, Var: c, Impl: 41
> SERIAL ESC: allocated IRQ 72 for serial uart
> Not using serial hack in slow timer handler.
> Welcome to L4/Fiasco.OC!
> L4/Fiasco.OC microkernel on arm
> Rev: unknown compiled with gcc 4.7.3 for AM33xx []
> Build: #1 Mon Jun 26 12:21:04 EDT 2017
>
> Calibrating timer loop... done.
> MDB: use page size: 20
> MDB: use page size: 12
> SIGMA0: Hello!
> KIP @ 80002000
> allocated 4KB for maintenance structures
> SIGMA0: Dump of all resource maps
> RAM:------------------------
> [4:80000000;80000fff]
> [0:8008f000;800bffff]
> [0:800ca000;800cffff]
> [0:800d7000;8013ffff]
> [4:80140000;8016efff]
> [0:8016f000;810fffff]
> [4:81100000;81a3bfff]
> [0:81a3c000;8effffff]
> IOMEM:----------------------
> [0:0;7fffffff]
> [0:90000000;ffffffff]
> MOE: Hello world
> MOE: found 235476 KByte free memory
> MOE: found RAM from 80000000 to 8f000000
> MOE: allocated 240 KByte for the page array @0x800d7000
> MOE: virtual user address space [0-bfffffff]
> MOE: rom name space cap -> [C:103000]
> BOOTFS: [81100000-81100300] [C:105000] l4linux.cfg
> BOOTFS: [81101000-811012bf] [C:107000] l4linux.io
> BOOTFS: [81102000-811029d1] [C:109000] l4linux.devs
> BOOTFS: [81103000-8111c464] [C:10b000] l4re
> BOOTFS: [8111d000-811766ac] [C:10d000] ned
> BOOTFS: [81177000-812e98c8] [C:10f000] io
> BOOTFS: [812ea000-8173b47c] [C:111000] vmlinuz
> BOOTFS: [8173c000-81a3c000] [C:113000] ramdisk-arm.rd
> MOE: cmdline: moe rom/l4linux.cfg
> MOE: Starting: rom/ned rom/l4linux.cfg
> MOE: loading 'rom/ned'
> Ned says: Hi World!
> Ned: loading file: 'rom/l4linux.cfg'
> IO | Io service
> IO | Verboseness level: 4
> IO | unused physical memory space:
> IO | [00000000000000-0000007fffffff]
> IO | [00000090000000-000000ffffffff]
> IO | no 'iommu' capability found use CPU-phys for DMA
> IO | Loading: config 'rom/l4linux.devs'
> IO | Loading: config 'rom/l4linux.io'
> IO | WARNING: device 'mmc1' already assigned to another virtual bus.
> IO | WARNING: device 'mmc1' already assigned to another virtual bus.
> IO | WARNING: device 'mmc2' already assigned to another virtual bus.
> IO | WARNING: device 'mmc2' already assigned to another virtual bus.
> IO | WARNING: device 'mmc3' already assigned to another virtual bus.
> IO | WARNING: device 'mmc3' already assigned to another virtual bus.
> IO | WARNING: device 'mmc1' already assigned to another virtual bus.
> IO | WARNING: device 'mmc1' already assigned to another virtual bus.
> IO | WARNING: device 'mmc2' already assigned to another virtual bus.
> IO | WARNING: device 'mmc2' already assigned to another virtual bus.
> IO | WARNING: device 'mmc3' already assigned to another virtual bus.
> IO | WARNING: device 'mmc3' already assigned to another virtual bus.
> IO | WARNING: device 'i2c0' already assigned to another virtual bus.
> IO | WARNING: device 'i2c0' already assigned to another virtual bus.
> IO | Real Hardware -----------------------------------
> IO | System Bus: hid=
> IO | Resources: ==== start ====
> IO | DMADOM [00000000000000-00000000000000 1] non-pref (32bit) (align=0 flags=6)
> IO | Resources: ===== end =====
> IO | mmc1: hid=MMC1
> IO | Clients: ===== start ====
> IO | mmc3[1]: [N2Vi9Proxy_devE]
> IO | mmc2[1]: [N2Vi9Proxy_devE]
> IO | mmc1[1]: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [00000048060000-00000048060fff 1000] non-pref (32bit) (align=fff flags=2)
> IO | IRQ [00000000000040-00000000000040 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | i2c1: hid=omap4-i2c1
> IO | Clients: ===== start ====
> IO | i2c1[1]: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [0000004802a000-0000004802afff 1000] non-pref (32bit) (align=fff flags=2)
> IO | IRQ [00000000000047-00000000000047 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | mmc2: hid=MMC2
> IO | Clients: ===== start ====
> IO | mmc3[2]: [N2Vi9Proxy_devE]
> IO | mmc2[2]: [N2Vi9Proxy_devE]
> IO | mmc1[2]: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [000000481d8000-000000481d8fff 1000] non-pref (32bit) (align=fff flags=2)
> IO | IRQ [0000000000001c-0000000000001c 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | mmc3: hid=MMC3
> IO | Clients: ===== start ====
> IO | mmc3[3]: [N2Vi9Proxy_devE]
> IO | mmc2[3]: [N2Vi9Proxy_devE]
> IO | mmc1[3]: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [00000047810000-00000047810fff 1000] non-pref (32bit) (align=fff flags=2)
> IO | IRQ [0000000000001d-0000000000001d 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | edma: hid=EDMA
> IO | Clients: ===== start ====
> IO | edma: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [00000044e10f90-00000044e10fcf 40] non-pref (32bit) (align=3f flags=2)
> IO | IRQ [0000000000000e-0000000000000e 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | i2c0: hid=omap4-i2c0
> IO | Clients: ===== start ====
> IO | i2c1[2]: [N2Vi9Proxy_devE]
> IO | i2c0: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [00000044e0b000-00000044e0bfff 1000] non-pref (32bit) (align=fff flags=2)
> IO | IRQ [00000000000046-00000000000046 1] none (32bit) (align=0 flags=1)
> IO | Resources: ===== end =====
> IO | prcm: hid=
> IO | Clients: ===== start ====
> IO | prcm: [N2Vi9Proxy_devE]
> IO | Clients: ===== end ====
> IO | Resources: ==== start ====
> IO | IOMEM [00000044e00000-00000044e03fff 4000] non-pref (32bit) (align=3fff flags=2)
> IO | Resources: ===== end =====
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc2[1]
> IO | /l4linux/mmc3[1]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[1]
> IO | /l4linux/mmc3[1]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[1]
> IO | /l4linux/mmc2[1]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc2[2]
> IO | /l4linux/mmc3[2]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[2]
> IO | /l4linux/mmc3[2]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[2]
> IO | /l4linux/mmc2[2]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc2[3]
> IO | /l4linux/mmc3[3]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[3]
> IO | /l4linux/mmc3[3]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/mmc1[3]
> IO | /l4linux/mmc2[3]
> IO | warning: conflicting virtual clients:
> IO | /l4linux/i2c0
> IO | /l4linux/i2c1[2]
> IO | warning: could not register control interface at cap 'platform_ctl'
> IO | Ready. Waiting for request.
> PH 0 offs=00008000 flags=rwx PH-type=0x1
> virt=02000000 evirt=024bd81c
> phys=02000000 ephys=024bd81c
> f_sz=00435512 memsz=004bd81c
> PH 1 offs=003eb0c8 flags=r-x PH-type=0x4
> virt=023e30c8 evirt=023e30ec
> phys=023e30c8 ephys=023e30ec
> f_sz=00000024 memsz=00000024
> PH 2 offs=00000000 flags=rwx PH-type=0x6474e551
> virt=00000000 evirt=00000000
> phys=00000000 ephys=00000000
> f_sz=00000000 memsz=00000000
> Starting binary at 0x2000318, argc=7 argv=0xafff4f8c *argv=0xb1007ff4 argv0=rom/vmlinuz
> External resolver is at 0xa80007fc
> Symbol 'l4x_srv_init' not found
> L4Re[rm]: unhandled read page fault at 0x4 pc=0x0
> L4Re: unhandled exception: pc=0x0 (pfa=0)
> L4Re: Global::l4re_aux->ldr_flags=0
>
> At this point I have no idea what to do any help will be much appreciated! Thank you very much!
Ok, now that's strange, that should not happen. In L4Linux, do you have
CONFIG_L4_SERVER enabled or disabled? Does arch/l4/kernel/main.o contain
the l4x_srv_init symbol or not
(check with 'nm arch/l4/kernel/main.o | grep l4x_srv_init')?
Adam
>
> Thanks
> -Dan
> > On Jun 29, 2017, at 3:39 PM, Matthias Lange <matthias.lange at kernkonzept.com> wrote:
> >
> > Hi,
> >
> > On 06/29/2017 10:11 PM, Daniel (Xiaolong) Wang wrote:
> >> Hi all,
> >>
> >> I want to give L4Linux access to SD card, and ethernet driver.
> >> Initially I thought by run L4Linux kernel on top of L4re, drivers
> >> built with L4Linux kernel can just work. After trying and reading the
> >> email archive, seems like I need to configure the corresponding
> >> capability in cfg. I’m very new to L4re environment is there any
> >> tutorials or references that can help me understand it better? (I’m
> >> currently reading the manual, my development board is a beagle bone
> >> black)
> >
> > In case of ARM platforms this is (still) not an easy undertaking. What
> > you have to do is basically this:
> >
> > 1. Enable the desired device drivers in your kernel configuration.
> > 2. Make L4Linux compile.
> > 3. Create a device tree which contains the device nodes of the desired
> > devices.
> > 4. Create an io configuration for L4Re with the devices and their
> > resources and assign the desired devices to a vbus which is eventually
> > given to L4Linux. You can read about io and its configuration here [1].
> > 5. Boot your setup on the target. At this stage, you usually you have to
> > instrument the device driver to debug the reasons why it is failing.
> >
> > Best,
> > Matthias.
> >
> > [1] http://l4re.org/doc/io.html <http://l4re.org/doc/io.html>
> >
> >>
> >> Also I’m trying to build a L4Linux with MMC driver. My configuration
> >> is based on default arm_defconfig. I enabled
> >>
> >> * Make Linux be a Server * Bus driver for L4vbus * L4shm based
> >> network driver * MMC/SD/SDIO card support -> HW reset support for
> >> eMMC, MMC block device driver, Use bounce buffer for simple hosts,
> >> SDIO UART/GPS class support, Secure Digital Host Controller Interface
> >> Support, SDHCI platform and OF driver helper, MediaTek SD/MMC Card
> >> Interface support * DOS/FAT/NT Filesystem -> MSDOS fs support, VFAT
> >> fs support
> >>
> >> however, when it build the following errors show did I do something
> >> wrong?
> >>
> >> LD drivers/i2c/busses/built-in.o LD
> >> drivers/i2c/muxes/built-in.o LD drivers/i2c/built-in.o LD
> >> drivers/idle/built-in.o CC drivers/input/input.o CC
> >> drivers/input/input-compat.o CC drivers/input/input-mt.o CC
> >> drivers/input/ff-core.o LD drivers/input/input-core.o CC
> >> drivers/input/mousedev.o CC drivers/input/evdev.o LD
> >> drivers/input/built-in.o LD drivers/iommu/built-in.o CC
> >> drivers/irqchip/irqchip.o LD drivers/irqchip/built-in.o LD
> >> drivers/leds/built-in.o LD drivers/lguest/built-in.o LD
> >> drivers/macintosh/built-in.o LD
> >> drivers/media/common/b2c2/built-in.o LD
> >> drivers/media/common/saa7146/built-in.o LD
> >> drivers/media/common/siano/built-in.o LD
> >> drivers/media/common/v4l2-tpg/built-in.o LD
> >> drivers/media/common/built-in.o LD
> >> drivers/media/firewire/built-in.o LD
> >> drivers/media/i2c/soc_camera/built-in.o LD
> >> drivers/media/i2c/built-in.o LD
> >> drivers/media/mmc/siano/built-in.o LD
> >> drivers/media/mmc/built-in.o LD
> >> drivers/media/pci/b2c2/built-in.o LD
> >> drivers/media/pci/ddbridge/built-in.o LD
> >> drivers/media/pci/dm1105/built-in.o LD
> >> drivers/media/pci/mantis/built-in.o LD
> >> drivers/media/pci/netup_unidvb/built-in.o LD
> >> drivers/media/pci/ngene/built-in.o LD
> >> drivers/media/pci/pluto2/built-in.o LD
> >> drivers/media/pci/pt1/built-in.o LD
> >> drivers/media/pci/pt3/built-in.o LD
> >> drivers/media/pci/saa7146/built-in.o LD
> >> drivers/media/pci/smipcie/built-in.o LD
> >> drivers/media/pci/ttpci/built-in.o LD
> >> drivers/media/pci/built-in.o LD
> >> drivers/media/platform/omap/built-in.o LD
> >> drivers/media/platform/built-in.o LD
> >> drivers/media/rc/keymaps/built-in.o LD
> >> drivers/media/rc/built-in.o LD drivers/media/tuners/built-in.o
> >> LD drivers/media/usb/b2c2/built-in.o LD
> >> drivers/media/usb/dvb-usb/built-in.o LD
> >> drivers/media/usb/dvb-usb-v2/built-in.o LD
> >> drivers/media/usb/s2255/built-in.o LD
> >> drivers/media/usb/siano/built-in.o LD
> >> drivers/media/usb/stkwebcam/built-in.o LD
> >> drivers/media/usb/ttusb-budget/built-in.o LD
> >> drivers/media/usb/ttusb-dec/built-in.o LD
> >> drivers/media/usb/zr364xx/built-in.o LD
> >> drivers/media/usb/built-in.o LD drivers/media/built-in.o LD
> >> drivers/mfd/built-in.o LD drivers/misc/cb710/built-in.o LD
> >> drivers/misc/eeprom/built-in.o LD
> >> drivers/misc/lis3lv02d/built-in.o LD
> >> drivers/misc/mic/bus/built-in.o LD drivers/misc/mic/built-in.o
> >> LD drivers/misc/ti-st/built-in.o LD
> >> drivers/misc/built-in.o CC drivers/mmc/card/block.o CC
> >> drivers/mmc/card/queue.o LD drivers/mmc/card/mmc_block.o CC
> >> drivers/mmc/card/sdio_uart.o LD drivers/mmc/card/built-in.o CC
> >> drivers/mmc/core/core.o CC drivers/mmc/core/bus.o CC
> >> drivers/mmc/core/host.o CC drivers/mmc/core/mmc.o CC
> >> drivers/mmc/core/mmc_ops.o CC drivers/mmc/core/sd.o CC
> >> drivers/mmc/core/sd_ops.o CC drivers/mmc/core/sdio.o CC
> >> drivers/mmc/core/sdio_ops.o CC drivers/mmc/core/sdio_bus.o CC
> >> drivers/mmc/core/sdio_cis.o CC drivers/mmc/core/sdio_io.o CC
> >> drivers/mmc/core/sdio_irq.o CC drivers/mmc/core/quirks.o CC
> >> drivers/mmc/core/slot-gpio.o CC drivers/mmc/core/pwrseq.o CC
> >> drivers/mmc/core/debugfs.o LD drivers/mmc/core/mmc_core.o CC
> >> drivers/mmc/core/pwrseq_simple.o CC
> >> drivers/mmc/core/pwrseq_emmc.o LD drivers/mmc/core/built-in.o CC
> >> drivers/mmc/host/sdhci.o CC drivers/mmc/host/mtk-sd.o CC
> >> drivers/mmc/host/sdhci-pltfm.o CC
> >> drivers/mmc/host/sdhci-of-arasan.o CC
> >> drivers/mmc/host/sdhci-of-at91.o LD drivers/mmc/host/built-in.o
> >> LD drivers/mmc/built-in.o CC drivers/net/Space.o CC
> >> drivers/net/loopback.o CC drivers/net/l4shmnet.o LD
> >> drivers/net/built-in.o LD drivers/nfc/built-in.o LD
> >> drivers/nvme/host/built-in.o LD drivers/nvme/built-in.o CC
> >> drivers/of/base.o CC drivers/of/device.o CC
> >> drivers/of/platform.o CC drivers/of/fdt.o CC
> >> drivers/of/fdt_address.o CC drivers/of/address.o CC
> >> drivers/of/irq.o CC drivers/of/of_reserved_mem.o LD
> >> drivers/of/built-in.o LD drivers/platform/built-in.o LD
> >> drivers/power/built-in.o LD drivers/pwm/built-in.o CC
> >> drivers/rtc/rtc-lib.o LD drivers/rtc/built-in.o LD
> >> drivers/soc/bcm/built-in.o LD drivers/soc/fsl/built-in.o LD
> >> drivers/soc/built-in.o CC drivers/tty/tty_io.o CC
> >> drivers/tty/n_tty.o CC drivers/tty/tty_ioctl.o CC
> >> drivers/tty/tty_ldisc.o CC drivers/tty/tty_buffer.o CC
> >> drivers/tty/tty_port.o CC drivers/tty/tty_mutex.o CC
> >> drivers/tty/tty_ldsem.o CC drivers/tty/pty.o CC
> >> drivers/tty/sysrq.o LD drivers/tty/ipwireless/built-in.o CC
> >> drivers/tty/serial/serial_core.o CC drivers/tty/serial/l4ser.o
> >> CC drivers/tty/serial/l4ser_shm.o LD
> >> drivers/tty/serial/built-in.o CC drivers/tty/vt/vt_ioctl.o CC
> >> drivers/tty/vt/vc_screen.o CC drivers/tty/vt/selection.o CC
> >> drivers/tty/vt/keyboard.o CC drivers/tty/vt/consolemap.o CC
> >> drivers/tty/vt/consolemap_deftbl.o CC drivers/tty/vt/vt.o CC
> >> drivers/tty/vt/defkeymap.o LD drivers/tty/vt/built-in.o LD
> >> drivers/tty/built-in.o LD drivers/video/backlight/built-in.o CC
> >> drivers/video/console/dummycon.o CC
> >> drivers/video/console/fbcon.o CC
> >> drivers/video/console/bitblit.o CC
> >> drivers/video/console/softcursor.o LD
> >> drivers/video/console/built-in.o CC
> >> drivers/video/fbdev/core/fb_cmdline.o CC
> >> drivers/video/fbdev/core/fb_notify.o CC
> >> drivers/video/fbdev/core/fbmem.o CC
> >> drivers/video/fbdev/core/fbmon.o CC
> >> drivers/video/fbdev/core/fbcmap.o CC
> >> drivers/video/fbdev/core/fbsysfs.o CC
> >> drivers/video/fbdev/core/modedb.o CC
> >> drivers/video/fbdev/core/fbcvt.o LD
> >> drivers/video/fbdev/core/fb.o LD
> >> drivers/video/fbdev/core/built-in.o LD
> >> drivers/video/fbdev/omap2/omapfb/displays/built-in.o LD
> >> drivers/video/fbdev/omap2/omapfb/dss/built-in.o LD
> >> drivers/video/fbdev/omap2/omapfb/built-in.o LD
> >> drivers/video/fbdev/omap2/built-in.o LD
> >> drivers/video/fbdev/built-in.o CC drivers/video/logo/logo.o LOGO
> >> drivers/video/logo/logo_linux_mono.c CC
> >> drivers/video/logo/logo_linux_mono.o LOGO
> >> drivers/video/logo/logo_linux_vga16.c CC
> >> drivers/video/logo/logo_linux_vga16.o LOGO
> >> drivers/video/logo/logo_linux_clut224.c CC
> >> drivers/video/logo/logo_linux_clut224.o LD
> >> drivers/video/logo/built-in.o LOGO
> >> drivers/video/logo/logo_superh_mono.c LOGO
> >> drivers/video/logo/clut_vga16.c LOGO
> >> drivers/video/logo/logo_blackfin_vga16.c LOGO
> >> drivers/video/logo/logo_superh_vga16.c LOGO
> >> drivers/video/logo/logo_blackfin_clut224.c LOGO
> >> drivers/video/logo/logo_dec_clut224.c LOGO
> >> drivers/video/logo/logo_m32r_clut224.c LOGO
> >> drivers/video/logo/logo_mac_clut224.c LOGO
> >> drivers/video/logo/logo_parisc_clut224.c LOGO
> >> drivers/video/logo/logo_sgi_clut224.c LOGO
> >> drivers/video/logo/logo_spe_clut224.c LOGO
> >> drivers/video/logo/logo_sun_clut224.c LOGO
> >> drivers/video/logo/logo_superh_clut224.c LD
> >> drivers/video/built-in.o LD drivers/built-in.o LD
> >> sound/built-in.o LD firmware/built-in.o CC
> >> arch/l4/drivers/vbus/l4vbus.o LD
> >> arch/l4/drivers/vbus/built-in.o CC arch/l4/drivers/events.o LD
> >> arch/l4/drivers/built-in.o CC net/socket.o LD
> >> net/802/built-in.o CC net/core/sock.o CC
> >> net/core/request_sock.o CC net/core/skbuff.o CC
> >> net/core/datagram.o CC net/core/stream.o CC net/core/scm.o
> >> CC net/core/gen_stats.o CC net/core/gen_estimator.o CC
> >> net/core/net_namespace.o CC net/core/secure_seq.o CC
> >> net/core/flow_dissector.o CC net/core/sysctl_net_core.o CC
> >> net/core/dev.o CC net/core/ethtool.o CC
> >> net/core/dev_addr_lists.o CC net/core/dst.o CC
> >> net/core/netevent.o CC net/core/neighbour.o CC
> >> net/core/rtnetlink.o CC net/core/utils.o CC
> >> net/core/link_watch.o CC net/core/filter.o CC
> >> net/core/sock_diag.o CC net/core/dev_ioctl.o CC
> >> net/core/tso.o CC net/core/sock_reuseport.o CC
> >> net/core/flow.o CC net/core/net-sysfs.o CC
> >> net/core/net-procfs.o LD net/core/built-in.o CC
> >> net/ethernet/eth.o LD net/ethernet/built-in.o CC
> >> net/ipv4/route.o CC net/ipv4/inetpeer.o CC
> >> net/ipv4/protocol.o CC net/ipv4/ip_input.o CC
> >> net/ipv4/ip_fragment.o CC net/ipv4/ip_forward.o CC
> >> net/ipv4/ip_options.o CC net/ipv4/ip_output.o CC
> >> net/ipv4/ip_sockglue.o CC net/ipv4/inet_hashtables.o CC
> >> net/ipv4/inet_timewait_sock.o CC
> >> net/ipv4/inet_connection_sock.o CC net/ipv4/tcp.o CC
> >> net/ipv4/tcp_input.o CC net/ipv4/tcp_output.o CC
> >> net/ipv4/tcp_timer.o CC net/ipv4/tcp_ipv4.o CC
> >> net/ipv4/tcp_minisocks.o CC net/ipv4/tcp_cong.o CC
> >> net/ipv4/tcp_metrics.o CC net/ipv4/tcp_fastopen.o CC
> >> net/ipv4/tcp_recovery.o CC net/ipv4/tcp_offload.o CC
> >> net/ipv4/datagram.o CC net/ipv4/raw.o CC net/ipv4/udp.o CC
> >> net/ipv4/udplite.o CC net/ipv4/udp_offload.o CC
> >> net/ipv4/arp.o CC net/ipv4/icmp.o CC net/ipv4/devinet.o CC
> >> net/ipv4/af_inet.o CC net/ipv4/igmp.o CC
> >> net/ipv4/fib_frontend.o CC net/ipv4/fib_semantics.o CC
> >> net/ipv4/fib_trie.o CC net/ipv4/inet_fragment.o CC
> >> net/ipv4/ping.o CC net/ipv4/ip_tunnel_core.o CC
> >> net/ipv4/gre_offload.o CC net/ipv4/sysctl_net_ipv4.o CC
> >> net/ipv4/proc.o CC net/ipv4/xfrm4_mode_beet.o CC
> >> net/ipv4/xfrm4_mode_transport.o CC net/ipv4/xfrm4_mode_tunnel.o
> >> CC net/ipv4/ipconfig.o CC net/ipv4/inet_diag.o CC
> >> net/ipv4/tcp_diag.o CC net/ipv4/tcp_cubic.o CC
> >> net/ipv4/xfrm4_policy.o CC net/ipv4/xfrm4_state.o CC
> >> net/ipv4/xfrm4_input.o CC net/ipv4/xfrm4_output.o CC
> >> net/ipv4/xfrm4_protocol.o LD net/ipv4/built-in.o CC
> >> net/ipv6/addrconf_core.o CC net/ipv6/exthdrs_core.o CC
> >> net/ipv6/ip6_checksum.o CC net/ipv6/ip6_icmp.o CC
> >> net/ipv6/output_core.o CC net/ipv6/protocol.o CC
> >> net/ipv6/ip6_offload.o CC net/ipv6/tcpv6_offload.o CC
> >> net/ipv6/exthdrs_offload.o LD net/ipv6/built-in.o CC
> >> net/netlink/af_netlink.o CC net/netlink/genetlink.o LD
> >> net/netlink/built-in.o CC net/packet/af_packet.o LD
> >> net/packet/built-in.o CC net/sched/sch_generic.o CC
> >> net/sched/sch_mq.o LD net/sched/built-in.o CC
> >> net/unix/af_unix.o CC net/unix/garbage.o CC
> >> net/unix/sysctl_net_unix.o LD net/unix/unix.o LD
> >> net/unix/built-in.o CC net/xfrm/xfrm_policy.o CC
> >> net/xfrm/xfrm_state.o CC net/xfrm/xfrm_hash.o CC
> >> net/xfrm/xfrm_input.o CC net/xfrm/xfrm_output.o CC
> >> net/xfrm/xfrm_sysctl.o CC net/xfrm/xfrm_replay.o LD
> >> net/xfrm/built-in.o CC net/sysctl_net.o LD net/built-in.o
> >> CC lib/lockref.o CC lib/bcd.o CC lib/div64.o CC
> >> lib/sort.o CC lib/parser.o CC lib/halfmd4.o CC
> >> lib/debug_locks.o CC lib/random32.o CC
> >> lib/bust_spinlocks.o CC lib/kasprintf.o CC lib/bitmap.o CC
> >> lib/scatterlist.o CC lib/gcd.o CC lib/lcm.o CC
> >> lib/list_sort.o CC lib/uuid.o CC lib/flex_array.o CC
> >> lib/iov_iter.o CC lib/clz_ctz.o CC lib/bsearch.o CC
> >> lib/find_bit.o CC lib/llist.o CC lib/memweight.o CC
> >> lib/kfifo.o CC lib/percpu-refcount.o CC lib/percpu_ida.o CC
> >> lib/rhashtable.o CC lib/reciprocal_div.o CC lib/once.o CC
> >> lib/string_helpers.o CC lib/hexdump.o CC lib/kstrtox.o CC
> >> lib/pci_iomap.o CC lib/iomap_copy.o CC lib/devres.o CC
> >> lib/hweight.o CC lib/bitrev.o CC lib/crc16.o HOSTCC
> >> lib/gen_crc32table GEN lib/crc32table.h CC lib/crc32.o CC
> >> lib/genalloc.o CC lib/fonts/fonts.o CC
> >> lib/fonts/font_8x8.o CC lib/fonts/font_8x16.o LD
> >> lib/fonts/font.o LD lib/fonts/built-in.o CC
> >> lib/lz4/lz4_decompress.o LD lib/lz4/built-in.o CC
> >> lib/lzo/lzo1x_decompress_safe.o LD lib/lzo/lzo_decompress.o LD
> >> lib/lzo/built-in.o CC lib/xz/xz_dec_syms.o CC
> >> lib/xz/xz_dec_stream.o CC lib/xz/xz_dec_lzma2.o CC
> >> lib/xz/xz_dec_bcj.o LD lib/xz/xz_dec.o LD
> >> lib/xz/built-in.o CC lib/zlib_inflate/inffast.o CC
> >> lib/zlib_inflate/inflate.o CC lib/zlib_inflate/infutil.o CC
> >> lib/zlib_inflate/inftrees.o CC lib/zlib_inflate/inflate_syms.o
> >> LD lib/zlib_inflate/zlib_inflate.o LD
> >> lib/zlib_inflate/built-in.o CC lib/swiotlb.o CC
> >> lib/iommu-helper.o CC lib/iommu-common.o CC lib/syscall.o
> >> CC lib/nlattr.o CC lib/dynamic_queue_limits.o CC
> >> lib/net_utils.o LD lib/built-in.o CC lib/argv_split.o CC
> >> lib/bug.o CC lib/cmdline.o CC lib/ctype.o CC
> >> lib/dec_and_lock.o CC lib/decompress.o CC
> >> lib/decompress_bunzip2.o CC lib/decompress_inflate.o CC
> >> lib/decompress_unlz4.o CC lib/decompress_unlzma.o CC
> >> lib/decompress_unlzo.o CC lib/decompress_unxz.o CC
> >> lib/dma-noop.o CC lib/dump_stack.o CC lib/earlycpio.o CC
> >> lib/extable.o CC lib/fdt.o CC lib/fdt_empty_tree.o CC
> >> lib/fdt_ro.o CC lib/fdt_rw.o CC lib/fdt_strerror.o CC
> >> lib/fdt_sw.o CC lib/fdt_wip.o CC lib/flex_proportions.o CC
> >> lib/idr.o CC lib/int_sqrt.o CC lib/ioremap.o CC
> >> lib/irq_regs.o CC lib/is_single_threaded.o CC lib/klist.o
> >> CC lib/kobject.o CC lib/kobject_uevent.o CC lib/md5.o
> >> CC lib/nmi_backtrace.o CC lib/nodemask.o CC
> >> lib/plist.o CC lib/radix-tree.o CC lib/ratelimit.o CC
> >> lib/rbtree.o CC lib/seq_buf.o CC lib/sha1.o CC
> >> lib/show_mem.o CC lib/string.o CC lib/timerqueue.o CC
> >> lib/vsprintf.o AR lib/lib.a CC
> >> arch/l4/lib/arch-arm/../proc.o CC
> >> arch/l4/lib/arch-arm/../debugfs.o LD
> >> arch/l4/lib/arch-arm/built-in.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/ashldi3.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/ashrdi3.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/backtrace.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/bswapsdi2.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/call_with_stack.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/changebit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/clearbit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/copy_page.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/csumipv6.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/csumpartial.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/csumpartialcopy.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/delay-loop.o CC
> >> arch/l4/lib/arch-arm/../../../arm/lib/delay.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/div64.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/findbit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-readsb.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-readsl.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-readsw-armv4.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-writesb.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-writesl.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/io-writesw-armv4.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/lib1funcs.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/lshrdi3.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/memchr.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/memcpy.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/memmove.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/memset.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/memzero.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/muldi3.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/setbit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/strchr.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/strrchr.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/testchangebit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/testclearbit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/testsetbit.o AS
> >> arch/l4/lib/arch-arm/../../../arm/lib/ucmpdi2.o CC
> >> arch/l4/lib/arch-arm/../csumpartialcopyuser.o CC
> >> arch/l4/lib/arch-arm/../memcpy_user.o CC
> >> arch/l4/lib/arch-arm/../pte.o CC
> >> arch/l4/lib/arch-arm/../uaccess.o AR arch/l4/lib/arch-arm/lib.a
> >> LD arch/l4/l4lxlib/generic/built-in.o CC
> >> arch/l4/l4lxlib/generic/irq_gen.o CC
> >> arch/l4/l4lxlib/generic/legacy.o CC
> >> arch/l4/l4lxlib/generic/thread_gen.o AR
> >> arch/l4/l4lxlib/generic/lib.a LD
> >> arch/l4/l4lxlib/l4env/built-in.o CC
> >> arch/l4/l4lxlib/l4env/irq_vcpu.o CC
> >> arch/l4/l4lxlib/l4env/memory.o CC arch/l4/l4lxlib/l4env/misc.o
> >> CC arch/l4/l4lxlib/l4env/task.o CC
> >> arch/l4/l4lxlib/l4env/thread.o AR arch/l4/l4lxlib/l4env/lib.a LD
> >> virt/lib/built-in.o LD virt/built-in.o LINK vmlinux LD
> >> vmlinux.o MODPOST vmlinux.o GEN .version CHK
> >> include/generated/compile.h UPD include/generated/compile.h CC
> >> init/version.o LD init/built-in.o drivers/built-in.o: In
> >> function `sdhci_at91_probe':
> >> /home/daniel/Desktop/l4re-snapshot/src/l4linux/build-arm/../drivers/mmc/host/sdhci-of-at91.c:212:
> >> undefined reference to `clk_set_rate' make[1]: *** [vmlinux] Error 1
> >> make[1]: Leaving directory
> >> `/home/daniel/Desktop/l4re-snapshot/src/l4linux/build-arm' make: ***
> >> [sub-make] Error 2
> >>
> >>
> >> _______________________________________________ l4-hackers mailing
> >> list l4-hackers at os.inf.tu-dresden.de <mailto:l4-hackers at os.inf.tu-dresden.de>
> >> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers <http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers>
> _______________________________________________
> l4-hackers mailing list
> l4-hackers at os.inf.tu-dresden.de
> http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers
Adam
--
Adam adam at os.inf.tu-dresden.de
Lackorzynski http://os.inf.tu-dresden.de/~adam/
More information about the l4-hackers
mailing list