Full Linux distributions
I'm looking for advice into what Linux distributions (rootfs) people are using for the PowerPC. Specifically, I'm currently using busybox for my core rootfs, but I'm looking for an alternative that will allow me to: - easily add new packages - is binary compatible with the PPC405. 440, and Freescale 85xx cores. - can be large (compared to the usual embedded devices), say in the 100MB to 1GB range. It will sit on an SD card. - Can be built/maintained under cygwin, and can generate a ext2 image (e.g. with gen2extfs) I've been looking at: 1) rolling my own 2) Mainstream distributions (e.g. Debian/Ubuntu have lingering support from PowerBook days; Gentoo seems like a possibility) 3) OpenEmbedded (doesn't seem to currently support cygwin) Anybody have any preferences based on what they've used? -- Brian Silverman Concept X, LLC ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: Full Linux distributions
Thanks for your response... Leon Woestenberg wrote: - is binary compatible with the PPC405. 440, and Freescale 85xx cores. binary compatible? You mean it can build binaries for those cores? What I meant (but said poorly) was that it has pre-compiled binaries. But its fine if I can build it under cygwin. And I am thinking that I may drop the cygwin requirement, because its painful to do linux builds under it. My preference is to use OpenEmbedded and do so under a Linux host system (any will do). As I don't want to be tied to a certain host OS, Emdebian or Gentoo-Embedded are no-go for me. I have used tools and rootfs systems like crosstool, buildroot, LFS before. There is also LTIB by Freescale, tried that? I need to look closer at LITB - but I was guessing it didn't have PPC4xx support. Thanks! -- Brian Silverman Concept X, LLC ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
EABI
Is it possible to compile a Linux application using an EABI compiler (specfically, Xilinx's EDK powerpc-eabi-gcc.exe)? The issue at hand is that we'd like for our customers to be able to use the Xilinx EDK toolchain (which we know they will have) to compile Linx apps without having to install another toolchain (crosstool, ELDK, etc). So, what I'm hoping is that the EDK toolchain can be configured to be Linux compatible binaries, or that there is some kind of wrapper that will handle the incompatible interfaces. Searching around, I've seen some mention of Linux EABI compatibility (for Debian ARM releases), but I haven't found any clear concensus... P.S. My apologies if this message appears on the mailing list twice... -- Brian Silverman Concept X, LLC ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
EABI
Is it possible to compile a Linux application using an EABI compiler (specfically, Xilinx's EDK powerpc-eabi-gcc.exe)? The issue at hand is that we'd like for our customers to be able to use the Xilinx EDK toolchain (which we know they will have) to compile Linx apps without having to install another toolchain (crosstool, ELDK, etc). So, what I'm hoping is that the EDK toolchain can be configured to be Linux compatible binaries, or that there is some kind of wrapper that will handle the incompatible interfaces. Searching around, I've seen some mention of Linux EABI compatibility (for Debian ARM releases), but I haven't found any clear concensus... Brian Silverman Principal Engineer iVeia ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: ML403 Linux port questions
I am currently building under cygwin for the Virtex-4. Yes, it's likely more of a pain, but its doable. But any way you slice it, its not instantaneous to get a build environment up and running. Anyway, here's what I'm using right now: crosstool 0.42 (gcc3.4.1, glibc2.3.3) (possibly patched) Linux 2.6.24-rc8-xlnx (git.xilinx.com) - with patch for building under cygwin: http://lkml.org/lkml/2007/2/22/421 - A missing elf.h file, not in my cygwin distribution. Also a pain with cygwin is the NFS server - I had difficulty getting it to work with more recent cygwin install, and have been unable to downgrade it. Finally, with no loopback device in cygwin, if you want to create initrd's, you have to do this on a Linux box. But this is now less of an issue in 2.6 with initramfs. -bri Phil Hochstetler wrote: I'm setting up a new development environment to get a working port of Linux on the Xilinx Virtex-4 chip (I have a Xilinx ML403 board). I'm looking for the quickest way to get a working development environment for the 2.6 kernel without paying thousands of $$ (what happened to MontaVista?). My first attempt was to use google and found lots of resources. The problem is that much of the info is dated or makes assumptions about your environment. I read Grants write-up at http://wiki.secretlab.ca/index.php/Linux_on_Xilinx_Virtex. Because I want to use Windows XP SP2 as the host if possible, I went down the path of installing the current Cygwin and was able to create cross tools (gcc 4.1) successfully. The problem I am having is that the Linux build process requires a newer gcc than 3.4.4-3 which is what Cygwin provides. I have used the EDK to build a bsp package successfully so that is not a problem. I tried to compile the 2.6.24.2 mainline kernel but it fails to compile using the Cygwin tools (it never gets as far as using them). I guess what I am looking for is advise on the lowest risk, easiest to set up environment to setup that will just work. Also advise on which kernel to use. I don't need a detailed tutorial but a high level direct that is known to work. I am thinking of using either the secret lab tree or the Xilinx tree as recommended in Grants wiki page. Should I just forget using XP and install a Linux (x86 processor so I must use cross tools)? If so, what is the recommend distro and what version? Thanks for all your sharing of experience. I hope to contribute back as soon as I can. --phil ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- Brian Silverman Concept X, LLC ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
MMC over SPI on Virtex-4
Hello all, I'm attempting to get MMC over xilinx_spi working on a custom Xilinx Virtex-4 board (that has a working SD/SPI interface, tested with a standalone app). I'm having issues mounting the device, and after doing a bit of debugging, I'm confused about how things are supposed to work. I'm using 2.6.24-rc8-xlnx from git.xilinx.com, with some patches (for the uartlite (Grant Likely), and other minor things). In addition, I'm using some of a patch from Andrei Konovalov ( list?person=202id=11577http://patchwork.ozlabs.org/linuxppc-embedded/patch?id=11577) for Xilinx SPI support in virtex_devices.c (BTW, will this patch hit the main git.xilinx.com tree at some point?) Here's what I do, and what I see: - Create a block device: mknod /dev/m0 b 179 0 - Access that device (cat /dev/m0) - I see the calls into the kernel: blkdev_open() do_open() get_gendisk() kobj_lookup(bdev_map, ...) - The device is not found (bdev_map has been initialized, but the only probe at major 179 is base_probe(). - kobj_lookup() returns NULL, and the open returns ENXIO (No such device or address). Here's what I don't understand: In order for kobj_lookup to successfully return non-NULL, a probe has to have been added to bdev_map using kobj_map(). But, kobj_map(bdev_map,...) is called only by blk_register_region(), which is never called by the MMC driver. I'm clearly missing something here. Has anyone successfully used MMC over SPI or xilinx_spi? How is the MMC driver supposed to work in regards to opening a device? Also, for reference: I've added the following configs: CONFIG_SPI=y CONFIG_SPI_DEBUG=y CONFIG_SPI_MASTER=y CONFIG_SPI_BITBANG=y CONFIG_SPI_XILINX=y CONFIG_MMC=y CONFIG_MMC_BLOCK=y CONFIG_MMC_BLOCK_BOUNCE=y CONFIG_MMC_SPI=y And, /proc/devices does report the mmc device: # cat /proc/devices Character devices: 1 mem 4 /dev/vc/0 4 tty 5 /dev/tty 5 /dev/console 5 /dev/ptmx 7 vcs 10 misc 13 input 128 ptm 136 pts 204 ttyUL Block devices: 1 ramdisk 179 mmc -- Brian Silverman Concept X, LLC ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded