-
|
I'm attempting to make an image with buildroot, but /dev/sr0 and /dev/hda (or /dev/sda) are missing. I tried to tweak my kernel parameters (see here) to no avail. Do you know which parameters are necessary for cdroms or hard drives to be supported? I note the same is true in the Buildroot image available in the demos: inserting a cdrom doesn't seem to work (or I'm not looking at the right place, maybe?). |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
|
Can you show |
Beta Was this translation helpful? Give feedback.
-
|
I think these parameters should do: https://www.linuxtopia.org/online_books/linux_kernel/kernel_configuration/ch09.html#lkn_ide (note the section "IDE CD-ROM drives"). We need support for a PCI IDE controller, ATA for harddisks and ATAPI for CD-RWs (which pulls in some support for SCSI). The PCI controller in V86 declares itself to be a "Intel 82371SB PIIX3 IDE [Natoma/Triton II]" in the PCI space. I could give it a try on the weekend unless you get it to work. EDIT: That guide is completely outdated. However, I played around with The kernel detects both our drives at their correct IDE locations: but for some reason nothing shows up under EDIT 2: Just noticed that ~% ls /dev/sr0
/dev/sr0
~% mount /dev/sr0 /media/
~% ls /media/
Copyright Solaris_11
JDS-THIRDPARTYLICENSEREADME installer
~% |
Beta Was this translation helpful? Give feedback.
-
|
All right, here is what needs to be changed in the linux kernel configuration for floppy, harddisk and cdrom support. Run
I tested I added file system support as needed (CONFIG_NLS_CODEPAGE_437 is needed for DOS images, CONFIG_JOLIET is rare but doesn't hurt). I did not add any automount extras, from what I understand that would be done using Output of See here for the buildroot bzImage and config files. EDIT: Here is the diff of the linux kernel's diff config-linux_20250210.txt config-linux_20251011.txt$ diff config-linux_20250210.txt config-linux_20251011.txt
1000c1000,1002
< # CONFIG_BLK_DEV_FD is not set
---
> CONFIG_BLK_DEV_FD=y
> # CONFIG_BLK_DEV_FD_RAWCMD is not set
> CONFIG_CDROM=y
1074c1076
< # CONFIG_BLK_DEV_SD is not set
---
> CONFIG_BLK_DEV_SD=y
1076c1078
< # CONFIG_BLK_DEV_SR is not set
---
> CONFIG_BLK_DEV_SR=y
1151c1153,1250
< # CONFIG_ATA is not set
---
> CONFIG_ATA=y
> CONFIG_SATA_HOST=y
> CONFIG_PATA_TIMINGS=y
> CONFIG_ATA_VERBOSE_ERROR=y
> CONFIG_ATA_FORCE=y
> CONFIG_ATA_ACPI=y
> CONFIG_SATA_PMP=y
>
> #
> # Controllers with non-SFF native interface
> #
> # CONFIG_SATA_AHCI is not set
> # CONFIG_SATA_AHCI_PLATFORM is not set
> # CONFIG_AHCI_DWC is not set
> # CONFIG_SATA_INIC162X is not set
> # CONFIG_SATA_ACARD_AHCI is not set
> # CONFIG_SATA_SIL24 is not set
> CONFIG_ATA_SFF=y
>
> #
> # SFF controllers with custom DMA interface
> #
> # CONFIG_PDC_ADMA is not set
> # CONFIG_SATA_QSTOR is not set
> # CONFIG_SATA_SX4 is not set
> CONFIG_ATA_BMDMA=y
>
> #
> # SATA SFF controllers with BMDMA
> #
> CONFIG_ATA_PIIX=y
> # CONFIG_SATA_MV is not set
> # CONFIG_SATA_NV is not set
> # CONFIG_SATA_PROMISE is not set
> # CONFIG_SATA_SIL is not set
> # CONFIG_SATA_SIS is not set
> # CONFIG_SATA_SVW is not set
> # CONFIG_SATA_ULI is not set
> # CONFIG_SATA_VIA is not set
> # CONFIG_SATA_VITESSE is not set
>
> #
> # PATA SFF controllers with BMDMA
> #
> # CONFIG_PATA_ALI is not set
> # CONFIG_PATA_AMD is not set
> # CONFIG_PATA_ARTOP is not set
> # CONFIG_PATA_ATIIXP is not set
> # CONFIG_PATA_ATP867X is not set
> # CONFIG_PATA_CMD64X is not set
> # CONFIG_PATA_CS5520 is not set
> # CONFIG_PATA_CS5530 is not set
> # CONFIG_PATA_CS5535 is not set
> # CONFIG_PATA_CS5536 is not set
> # CONFIG_PATA_CYPRESS is not set
> # CONFIG_PATA_EFAR is not set
> # CONFIG_PATA_HPT366 is not set
> # CONFIG_PATA_HPT37X is not set
> # CONFIG_PATA_HPT3X2N is not set
> # CONFIG_PATA_HPT3X3 is not set
> # CONFIG_PATA_IT8213 is not set
> # CONFIG_PATA_IT821X is not set
> # CONFIG_PATA_JMICRON is not set
> # CONFIG_PATA_MARVELL is not set
> # CONFIG_PATA_NETCELL is not set
> # CONFIG_PATA_NINJA32 is not set
> # CONFIG_PATA_NS87415 is not set
> # CONFIG_PATA_OLDPIIX is not set
> # CONFIG_PATA_OPTIDMA is not set
> # CONFIG_PATA_PDC2027X is not set
> # CONFIG_PATA_PDC_OLD is not set
> # CONFIG_PATA_RADISYS is not set
> # CONFIG_PATA_RDC is not set
> # CONFIG_PATA_SC1200 is not set
> # CONFIG_PATA_SCH is not set
> # CONFIG_PATA_SERVERWORKS is not set
> # CONFIG_PATA_SIL680 is not set
> # CONFIG_PATA_SIS is not set
> # CONFIG_PATA_TOSHIBA is not set
> # CONFIG_PATA_TRIFLEX is not set
> # CONFIG_PATA_VIA is not set
> # CONFIG_PATA_WINBOND is not set
>
> #
> # PIO-only SFF controllers
> #
> # CONFIG_PATA_CMD640_PCI is not set
> # CONFIG_PATA_MPIIX is not set
> # CONFIG_PATA_NS87410 is not set
> # CONFIG_PATA_OPTI is not set
> # CONFIG_PATA_RZ1000 is not set
>
> #
> # Generic fallback / legacy drivers
> #
> # CONFIG_PATA_ACPI is not set
> CONFIG_ATA_GENERIC=y
> # CONFIG_PATA_LEGACY is not set
1915c2014,2016
< # CONFIG_EXT2_FS is not set
---
> CONFIG_LEGACY_DIRECT_IO=y
> CONFIG_EXT2_FS=y
> # CONFIG_EXT2_FS_XATTR is not set
1920d2020
< CONFIG_EXT4_USE_FOR_EXT2=y
1962c2062
< # CONFIG_JOLIET is not set
---
> CONFIG_JOLIET=y
1970,1971c2070,2075
< # CONFIG_MSDOS_FS is not set
< # CONFIG_VFAT_FS is not set
---
> CONFIG_FAT_FS=y
> CONFIG_MSDOS_FS=y
> CONFIG_VFAT_FS=y
> CONFIG_FAT_DEFAULT_CODEPAGE=437
> CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
> # CONFIG_FAT_DEFAULT_UTF8 is not set
2010c2114
< # CONFIG_NLS_CODEPAGE_437 is not set
---
> CONFIG_NLS_CODEPAGE_437=y
2360a2465,2466
> CONFIG_GLOB=y
> # CONFIG_GLOB_SELFTEST is not set |
Beta Was this translation helpful? Give feedback.
I think these parameters should do: https://www.linuxtopia.org/online_books/linux_kernel/kernel_configuration/ch09.html#lkn_ide (note the section "IDE CD-ROM drives").
We need support for a PCI IDE controller, ATA for harddisks and ATAPI for CD-RWs (which pulls in some support for SCSI). The PCI controller in V86 declares itself to be a "Intel 82371SB PIIX3 IDE [Natoma/Triton II]" in the PCI space.
I could give it a try on the weekend unless you get it to work.
EDIT: That guide is completely outdated. However, I played around with
make linux-menuconfigand got this (booted with a mounted 64M blank HD and some CDROM disk):