[opensuse-arm] kiwi initrd drivers

Hello, In JeOS.kiwi for armv7hl I see the following: <drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers> but in the generated initrd I see that all drivers are present: lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio And I cannot understand how this is supposed to work. What <drivers> is used for? -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
Also, why do we need /usr/lib/ldscripts provided by binutils inside initrd? Who is going to link something? -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

Hi, Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
There is a predifined list of drivers to include (in kiwi) and we also had those within <drivers> and </drivers>.
Also, why do we need /usr/lib/ldscripts provided by binutils inside initrd? Who is going to link something?
Marcus ? Guillaume -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

2015-09-25 10:26 GMT+03:00 Guillaume Gardet <guillaume.gardet@free.fr>:
Hi,
Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
There is a predifined list of drivers to include (in kiwi) and we also had those within <drivers> and </drivers>.
I am sorry, I don't still understand. Both initrd and main image carries all existing kernel modules. Why do we need to specify something? Isn't it supposed that not all kernel modules have to be present inside initrd? For instance, initrd has parport/*.ko. Could you show me ARM board with LPT onboard, and explain why do we ever need LPT at boot time?
Also, why do we need /usr/lib/ldscripts provided by binutils inside initrd? Who is going to link something?
Marcus ?
I failed to learn how to build dependency graphs with zypper. binutils is pulled as requirement of some other package, but I don't know how to easily find what package. -- With best regards, Matwey V. Kornilov http://blog.matwey.name xmpp://0x2207@jabber.ru -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

25.09.2015 11:14, Matwey V. Kornilov пишет:
2015-09-25 10:26 GMT+03:00 Guillaume Gardet <guillaume.gardet@free.fr>:
Hi,
Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
There is a predifined list of drivers to include (in kiwi) and we also had those within <drivers> and </drivers>.
I am sorry, I don't still understand. Both initrd and main image carries all existing kernel modules. Why do we need to specify something?
Isn't it supposed that not all kernel modules have to be present inside initrd? For instance, initrd has parport/*.ko. Could you show me ARM board with LPT onboard, and explain why do we ever need LPT at boot time?
Also, why do we need /usr/lib/ldscripts provided by binutils inside initrd? Who is going to link something?
Marcus ?
I failed to learn how to build dependency graphs with zypper. binutils is pulled as requirement of some other package, but I don't know how to easily find what package.
I've tried to play using qemu binfmt but no luck: epsilon.local:/ # zypper install --debug-solver --dry-run --no-recommends atftp bc bind-libs bind-utils bootsplash btrfsprogs busybox bzip2 cryptsetup curl dialog diffutils dmraid dosfstools dtb-am335x e2fsprogs fbiterm file filesystem fribidi genisoimage gettext-runtime glibc glibc-locale hwinfo iproute2 iputils kbd kernel-default kiwi-tools kmod-compat kpartx lvm2 make net-tools netcfg parted pciutils procps psmisc squashfs sysconfig sysfsutils sysvinit-tools tar u-boot-pcm051rev3 udev util-linux which xfsprogs xz Loading repository data... Reading installed packages... qemu: uncaught target signal 11 (Segmentation fault) - core dumped Is it issue with qemu or zypper itself? -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

25.09.2015 10:26, Guillaume Gardet пишет:
Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
Also, why do we need /usr/lib/ldscripts provided by binutils inside initrd? Who is going to link something?
Marcus ?
So, dracut requires /usr/bin/strip and this is why another 30MB is pulled into initrd. Is it possible to drop everything but single file /usr/bin/strip ? -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

25.09.2015 10:26, Guillaume Gardet пишет:
Hi,
Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
There is a predifined list of drivers to include (in kiwi) and we also had those within <drivers> and </drivers>.
I think the following should be added to config.sh: #========================================== # remove unneded kernel files #------------------------------------------ suseStripKernel #========================================== # remove unneeded files #------------------------------------------ suseStripInitrd I am not sure and going to test whether it affects something. -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org

26.09.2015 13:07, Matwey V. Kornilov пишет:
25.09.2015 10:26, Guillaume Gardet пишет:
Hi,
Le 24/09/2015 21:30, Matwey V. Kornilov a écrit :
24.09.2015 20:27, Matwey V. Kornilov пишет:
Hello,
In JeOS.kiwi for armv7hl I see the following:
<drivers> <file name="drivers/ata/*"/> <!-- For SATA --> <file name="drivers/dma/*"/> <!-- For DMA --> <file name="drivers/gpio/*"/> <!-- Needed for TWL6040 GPO for MMC boot on pandaboard --> <file name="drivers/gpu/*"/> <!-- For display --> <file name="drivers/mmc/*"/> <!-- For SD/MMC --> <file name="drivers/phy/*"/> <!-- Various phy: sata, usb, video, ... --> </drivers>
but in the generated initrd I see that all drivers are present:
lib/modules/4.3.0-rc2-1.g2b75354-default/kernel/drivers> ls ata cdrom dma gpu hwmon input media mfd mmc ntb phy ptp soc thermal uwb video block char gpio hid iio md message misc net parport pps scsi ssb usb vhost virtio
And I cannot understand how this is supposed to work. What <drivers> is used for?
There is a predifined list of drivers to include (in kiwi) and we also had those within <drivers> and </drivers>.
I think the following should be added to config.sh:
#========================================== # remove unneded kernel files #------------------------------------------ suseStripKernel
#========================================== # remove unneeded files #------------------------------------------ suseStripInitrd
I am not sure and going to test whether it affects something.
Hm, It doesn't work -- To unsubscribe, e-mail: opensuse-arm+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-arm+owner@opensuse.org
participants (2)
-
Guillaume Gardet
-
Matwey V. Kornilov