Re: MPC832xEMDS: ttyS0 output stops mid boot
Hi, For the record, I've just merged powerpc.git from kernel.org and it has started working now! Clearly this means it was a kernel issue rather than a bootloader issue. Regards, Alex Alex Zeffertt wrote: Hi, Sorry about the cross posting, but I'm not sure which list I should send to I'm trying to boot an up-to-date kernel on my MPC8323E-MDS-PB board, but I the console output stops early on during the kernel boot. I'm running the latest u-boot (git://www.denx.de/git/u-boot-mpc83xx.git) with its default environment. The kernel is built from Paulus' powerpc.git, after checking out tag 2.6.21-rc5. The dtb is build from arch/powerpc/boot/dts/mpc832x_mds.dts with the latest compiler (git://www.jdl.com/software/dtc.git). Has anyone else been here before...? If so I'd appreciate any help you can offer. TIA, Alex ---my ttyS0 output-- = = printenv bootcmd=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$baudrate $othbootargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr ramboot=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othbootargs;tftp $ramdiskaddr $ramdiskfile;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr $ramdiskaddr $fdtaddr nfsboot=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$baudrate $othbootargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr bootdelay=6 baudrate=115200 loads_echo=1 ethaddr=00:04:9f:ef:03:01 eth1addr=00:04:9f:ef:03:02 loadaddr=20 netdev=eth0 consoledev=ttyS0 ramdiskaddr=100 ramdiskfile=ramfs.83xx fdtaddr=40 fdtfile=mpc832xemds.dtb stdin=serial stdout=serial stderr=serial ethact=FSL UEC0 Environment size: 979/8188 bytes = setenv ramdiskfile uRamdisk = setenv fdtfile mpc832x_mds.dtb = setenv bootfile uImage = setenv serverip 10.0.0.107 = setenv ipaddr 10.0.6.65 = run ramboot Using FSL UEC0 device TFTP from server 10.0.0.107; our IP address is 10.0.6.65 Filename 'uRamdisk'. Load address: 0x100 Loading: # # # # # # # # # ### done Bytes transferred = 3296770 (324e02 hex) Using FSL UEC0 device TFTP from server 10.0.0.107; our IP address is 10.0.6.65 Filename 'uImage'. Load address: 0x20 Loading: # # # ## done Bytes transferred = 1212615 (1280c7 hex) Using FSL UEC0 device TFTP from server 10.0.0.107; our IP address is 10.0.6.65 Filename 'mpc832x_mds.dtb'. Load address: 0x40 Loading: ### done Bytes transferred = 12288 (3000 hex) ## Booting image at 0020 ... Image Name: Linux-2.6.21-rc5 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size:1212551 Bytes = 1.2 MB Load Address: Entry Point: Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Loading RAMDisk Image at 0100 ... Image Name: uboot ext2 ramdisk rootfs Image Type: PowerPC Linux RAMDisk Image (gzip compressed) Data Size:3296706 Bytes = 3.1 MB Load Address: Entry Point: Verifying Checksum ... OK Booting using flat device tree at 0x40 Loading Ramdisk to 07c87000, end 07fabdc2 ... OK Using MPC832x MDS machine description Linux version 2.6.21-rc5 ([EMAIL PROTECTED]) (gcc version 3.4.3) #2 Thu May 3 16:42:54 BST 2007 Found initrd at 0xc7c87000:0xc7fabdc2 setup_arch: bootmem mpc832x_sys_setup_arch() Found MPC83xx PCI host bridge at 0xe0008500. Firmware bus number: 0-0 arch: exit Zone PFN ranges: DMA 0 -32768 Normal 32768 -32768 early_node_map[1] active PFN ranges 0:0 -32768 Built 1 zonelists. Total pages: 32512 Kernel command line: root=/dev/ram rw console=ttyS0,115200 IPIC (128 IRQ sources) at fddf3700 QEIC (64 IRQ sources) at fddf2080 PID
Re: [U-Boot-Users] Where do you find *.dtb files?
Jerry Van Baren wrote: Alex Zeffertt wrote: Hi all, I'm trying to boot linux-2.6.21-rc5 on my mpc832xemds board which is running u-boot 1.2.0. According to u-boot I need a device tree blob: = help bootm bootm [addr [arg ...]] - boot application image stored in memory passing arguments 'arg ...'; when booting a Linux kernel, 'arg' can be the address of an initrd image When booting a Linux kernel which requires a flat device-tree a third argument is required which is the address of the of the device-tree blob. To boot that kernel without an initrd image, use a '-' for the second argument. If you do not pass a third a bd_info struct will be passed instead Can anybody tell me where I can find one for this board? TIA, Alex Kernel tree under arch/powerpc/boot/dts? http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=arch/powerpc/boot/dts;h=2591d25045401b8beea474a1b4e117527e478521;hb=HEAD Best regards, gvb Thanks Jerry. I've found powerpc/arch/powerpc/boot/dts/mpc832x_mds.dts ... but when I try to compile it I get an error: $ /opt/freescale/ltib/usr/bin/dtc -I dts -O dtb powerpc/arch/powerpc/boot/dts/mpc832x_mds.dts DTC: dts-dtb on file powerpc/arch/powerpc/boot/dts/mpc832x_mds.dts syntax error at line 14 FATAL ERROR: Couldn't read input tree Perhaps my dtc is out of date - it came with the BSP from freescale which uses the 2.6.11 kernel. Do you know where I can find an up to date dtc? Is there any documentation regarding its use? Regards, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: Anyone using mpc832x_mds freescale's GIT repo?
Kim Phillips wrote: On Mon, 30 Apr 2007 16:15:41 +0100 Alex Zeffertt [EMAIL PROTECTED] wrote: Hi list, I've got an MPC8323E-MDS-PB development board, which is running a year-old BSP from freescale. I wanted to track the most current developments so I cloned http://opensource.freescale.com/pub/scm/linux-2.6-83xx.git that tree is obsolete; I'll label it so to avoid confusion. and rebuilt with ARCH=powerpc and using the mpc832x_mds_defconfig. I now don't get any serial console output after u-boot has started the kernel. My questions are: 1. Is anyone else using this GIT repo with this board? please use the mpc83xx custodian tree on denx.de: {git-,cg-}{clone,pull} git://www.denx.de/git/u-boot-mpc83xx.git Hi Kim, Thanks for your reply. I am already using the *u-boot* repo you mention above. Do you know which *linux* repository is the most current for the MPC8323E-MDS-PB board? Best regards, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Anyone using mpc832x_mds freescale's GIT repo?
Hi list, I've got an MPC8323E-MDS-PB development board, which is running a year-old BSP from freescale. I wanted to track the most current developments so I cloned http://opensource.freescale.com/pub/scm/linux-2.6-83xx.git and rebuilt with ARCH=powerpc and using the mpc832x_mds_defconfig. I now don't get any serial console output after u-boot has started the kernel. My questions are: 1. Is anyone else using this GIT repo with this board? 2. Is there an example u-boot environment for starting the latest kernels on this board? 3. Am I using the right ARCH. (I chose ARCH=powerpc because there's no defconfig file for this board under arch/ppc!) TIA, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: Accessng phy registers
DI BACCO ANTONIO - technolabs wrote: I saw that both in phy,c and mii.c (linux 2.6.19) there is support to handle ioctls to read PHY registers. Why? And what should be used from a user application? I have both CONFIG_MII and CONFIG_PHYLIB set to y. Try mii-tool -vv. This uses the ioctls to extract the PHY registers. If your ethernet driver doesn't support mii-tool it may support ethtool instead. Some drivers support both. Alex -- Cambridge Broadband appoints telecoms industry veteran John Cronin as chairman http://www.cambridgebroadband.com/mi20feb07.htm Maxis to upgrade its backhaul network using Cambridge Broadband; Alcatel-Lucent selected to manage entire upgrade project http://www.cambridgebroadband.com/mi12feb07.htm -- Cambridge Broadband Networks Limited Registered in England and Wales under company number: 03879840 Registered office: Selwyn House, Cambridge Business Park, Cowley Road, Cambridge CB4 0WZ, UK This email and any attachments are private and confidential. If you believe you have received this email in error please inform the sender and delete it from your mailbox or any other storage mechanism. Cambridge Broadband Networks Limited cannot accept liability for any statements made which are clearly the individual sender's own and not expressly made on behalf of Cambridge Broadband Networks Limited. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: enabling two eths
Manjunath AM wrote: Hi, We are using MPC8272 based target board, we use montavista Linux version 2.6.10 kernel image (with NFS enabled) to our target board, Our board has 2 FCCs (eth0 and eth1). bot the eth's works perfectly when we use them independently, but when we are trying to enable second one after the kernel is up using linux command ifconfig eth1 192.168.33.64 up(IP address)nothing is working. Please suggest how to enable second eth (either 0 or 1) once the kernel is up with NFS file system Have you made sure that eth0 and eth1 are on *different* IP subnets? If they are on the same subnet, or intersecting subnets, your routing will get confused. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: multiple devices using ELDK NFS mounts
Daniel Ng wrote: Hi, I am working on multiple ELDK devices. So far, I just have one copy of the ELDK NFS mount per device. This gets unwieldly when we have more than a few devices, especially considering the size of one NFS mount being over 800Mb. Can you suggest a more efficient way? Something like sharing part of a single NFS mount across multiple devices? Or some other way? Cheers, Daniel I assume you are mounting the NFS as the *root* filesystem, and you don't want the devices to overwrite eachothers files. Why not build a ramdisk root filesystem and boot that. Then mount the NFS filesystem somewhere else, e.g. /usr. This is very well described in the ELDK wiki. Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: local_irq_save not masking interrupts
Liu Dave-r63238 wrote: snip I'm having a strange problem with interrupts. My platform is the MPC832xEMDS and the BSP I'm using (from Freescale) uses Linux-2.6.11. In the code below I enter a critical section with local_irq_save(), call request_irq() (from mpc832xemds_phy_interrupt_enable) 4 times, then exit the critical section using local_irq_restore. /* Enable interrupts from PHYs */ local_irq_save(flags); for (i = 0; i driver_data-num_phys; i++) { struct atm_dev *dev = driver_data-dev_data[i]-dev; printk(%s/%d\n,__FUNCTION__,__LINE__); RETURN_ON_ERROR(mpc832xemds_phy_interrupt_enable(dev)); } local_irq_restore(flags); The problem is that I get an interrupt *before* exiting the critical section. This causes a problem for me, because the interrupts are shared and the correct handler has not yet been registered, so the interrupt never gets deasserted. My question is: why is local_irq_save()/local_irq_restore() not working? Really? local_irq_save not working? I don't believe it. Please check if exist any re-enable the interrupt in the critical section. -DAve Well, mpc832xemds_phy_interrupt_enable() does nothing except call request_irq(,,SA_SHIRQ,,). I suspect that request_irq() is somehow reenabling interrupts, but I can't see where it might be doing so. Is this a possible? Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
local_irq_save not masking interrupts
Hi list, I'm having a strange problem with interrupts. My platform is the MPC832xEMDS and the BSP I'm using (from Freescale) uses Linux-2.6.11. In the code below I enter a critical section with local_irq_save(), call request_irq() (from mpc832xemds_phy_interrupt_enable) 4 times, then exit the critical section using local_irq_restore. /* Enable interrupts from PHYs */ local_irq_save(flags); for (i = 0; i driver_data-num_phys; i++) { struct atm_dev *dev = driver_data-dev_data[i]-dev; printk(%s/%d\n,__FUNCTION__,__LINE__); RETURN_ON_ERROR(mpc832xemds_phy_interrupt_enable(dev)); } local_irq_restore(flags); The problem is that I get an interrupt *before* exiting the critical section. This causes a problem for me, because the interrupts are shared and the correct handler has not yet been registered, so the interrupt never gets deasserted. My question is: why is local_irq_save()/local_irq_restore() not working? TIA, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: MPC8360E USB Host Controller Driver
Li Yang wrote: On 9/7/06, Alex Zeffertt [EMAIL PROTECTED] wrote: Li Yang-r58472 wrote: i have a MPC8347E running with the Freescale E(F)HCI driver and Kernel 2.6.17 (Freescale LTIB). Because of this mail, i checked, if there are any periodical interrupts, without real USB payload. The result is: NO If i attach a USB-mouse, i get 5 interrupts. If i remove it again, 1 additional. Nothing else, silence ! USB works well with USB 1.1 and 2.0 devices (This was not the case with earlier Kernels, e.g. 2.6.13, because for the switching between 1.1 and 2.0 you need a transaction translator driver). MPC834x USB is very different from the USB of CPM/QE. It is an integrated EHCI controller. So, the question is still open, does the QuiccEngine HCI (a.k.a. FHCI) generate loading on the PPC core when there is no traffic on the USB? Yes, but no. If the bus is idle for some time, you can put the bus into suspend state. Then there will be no extra load to the core. Is that what Freescale's linux driver does then? Can it detect new USB devices in suspend state? Regards, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Re: MPC8360E USB Host Controller Driver
Li Yang-r58472 wrote: i have a MPC8347E running with the Freescale E(F)HCI driver and Kernel 2.6.17 (Freescale LTIB). Because of this mail, i checked, if there are any periodical interrupts, without real USB payload. The result is: NO If i attach a USB-mouse, i get 5 interrupts. If i remove it again, 1 additional. Nothing else, silence ! USB works well with USB 1.1 and 2.0 devices (This was not the case with earlier Kernels, e.g. 2.6.13, because for the switching between 1.1 and 2.0 you need a transaction translator driver). MPC834x USB is very different from the USB of CPM/QE. It is an integrated EHCI controller. So, the question is still open, does the QuiccEngine HCI (a.k.a. FHCI) generate loading on the PPC core when there is no traffic on the USB? Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
What is this flat device tree
Can anybody explain to me what the flat device tree is? The phrase comes up often but I can't find a definition for it anywhere on the web. TIA, Alex
MAC driver issue
FWIW, in my experience the hardware independent parts of the networking stack are very stable and the problem is almost always with the drivers, or with the IP configuration (e.g. two interfaces on the same subnet). I have no doubt it is with the driver. I am somewhat fortunate in this instance that I have a nearly identical setup - this is an FPGA based system I can swap the FPGA firmware, get an almost identical kernel with a slightly different NIC, and everything works - same cables, same IP's, Same switch, The only things different are the NIC and its driver. Even the Linux kernels are identical - except the NIC driver. BUT so is the data received and passed on to the kernel (outside random differences in the padding of the ARP packet) One works the other doesn't. Well ethernet device drivers contain multiple arp supporting methods, e.g. header_cache, header_cache_update, hard_header_parse, etc etc. Generally driver writers don't need to concern themselves about these as they are assigned to generic handlers by ether_setup(). However, your problematic driver may do something different. Given this problem appears to be driver specific rather than PPC specific your best bet is to try and contact the author. BTW, I don't think you've said which driver you are using, a key piece of info Alex
m8260_cpm_dpalloc - m8260_cpm_dpfree ?
Keinen Namen wrote: Hi Simple Question, I allocate Memory for my BDs with m8260_cpm_dpalloc, but there are no dpfree in Linux 2.4.25. In Linux 2.6 are a funktion to free dp memory. Are there no funktion in Linux 2.4 ? I've implemented the free function for my own benefit. See attached patch which should work against ELDK 3.1 Alex -- next part -- An embedded and charset-unspecified text was scrubbed... Name: patch-2006-08-25-m8260_cpm_dpfree Url: http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060825/a6da508d/attachment.txt
m8260_cpm_dpalloc - m8260_cpm_dpfree ?
Alex Zeffertt wrote: Keinen Namen wrote: Hi Simple Question, I allocate Memory for my BDs with m8260_cpm_dpalloc, but there are no dpfree in Linux 2.4.25. In Linux 2.6 are a funktion to free dp memory. Are there no funktion in Linux 2.4 ? I've implemented the free function for my own benefit. See attached patch which should work against ELDK 3.1 On the other hand I may have just ported it from somewhere else. I can't remember now, but anyway it works for me. Alex
ioremap() fails for 64 MB
Phil Nitschke wrote: Hi all, I have 2 GB memory on a 7448 processor, and want to reserve a huge chunk of it at boot-time, then ioremap() it into the kernel space inside a device driver. So far I've succeeded with 64 MB, but can't go any higher, as mm/vmalloc.c tells me: allocation failed: out of vmalloc space - use vmalloc=size to increase size. I remember reading in Linux Device Drivers that you can use the bigphysarea patch to allocate large memory, as long as you do it at boot time. It seems it's been ported to 2.6 too: http://lwn.net/Articles/32/ Alex
mpc8360sar
Hi lists, I'm writing to announce a new project http://mpc8360sar.sourceforge.net . This is an ATM driver for the QUICC Engine (QE) of the PowerQUICC II Pro range of processors. It is based on Tony Li's fsl-atm driver and my mpc8260sar driver. I've basically used Tony's driver for the most low level stuff and ported a lot of extra functionality from my PQII driver. You will need the Linux BSP from Freescale to build this driver. I have only tested this driver on mpc832xe-mds, but it should also work on the mpc8360e-pb board. If you use mpc8360sar, please let me know how you get on. In particular let me know if you work out how to stop the QE occaisionally corrupting the TCT when using external channels. Regards, Alex
[Linux-ATM-General] mpc8360sar
Hi, Yes, UBR and AAL0 work. I've also added support for the qos parameters min_pcr, pcr, and max_pcr. I used ltib-mpc832xemds-20060615 as my base. More details are on the website. BTW, I left all your code in. There's a simple config option now which allows you to choose between the two drivers. Alex PS Thanks! Li Tony-r64360 wrote: Hi, alex I am tony li. I am glad to know that you add many features support. Do you have test the UBR and AAL0 ? I am lack of enviroment test them now. I have not read your code detailly.:) And which ltib release version is your base ? I have updated my code a little which contain a workaround for a bug. Tony.li -Original Message- From: linux-atm-general-bounces at lists.sourceforge.net [mailto:linux-atm-general-bounces at lists.sourceforge.net] On Behalf Of Alex Zeffertt Sent: Thursday, July 20, 2006 6:40 PM To: linuxppc-embedded at ozlabs.org; linux-atm-general at lists.sourceforge.net Subject: [Linux-ATM-General] mpc8360sar Hi lists, I'm writing to announce a new project http://mpc8360sar.sourceforge.net . This is an ATM driver for the QUICC Engine (QE) of the PowerQUICC II Pro range of processors. It is based on Tony Li's fsl-atm driver and my mpc8260sar driver. I've basically used Tony's driver for the most low level stuff and ported a lot of extra functionality from my PQII driver. You will need the Linux BSP from Freescale to build this driver. I have only tested this driver on mpc832xe-mds, but it should also work on the mpc8360e-pb board. If you use mpc8360sar, please let me know how you get on. In particular let me know if you work out how to stop the QE occaisionally corrupting the TCT when using external channels. Regards, Alex - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDE V ___ Linux-atm-general mailing list Linux-atm-general at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-atm-general
[Linux-ATM-General] mpc8360sar
Any reason we dont try to get your work up stream into the mainline kernel? - kumar I'd like to see it upstreamed - the more people who use it the more help I get! However, mpc8360sar is built on Freescale's BSP which adds basic support for the board, the MPC832xE-MDS, to the stock linux kernel. This support consists of the following patches: Patch0 : patch-2.6.11.bz2 Patch1 : linux-2.6.11-mpc8349e-general-20060414.patch Patch2 : linux-2.6.11-mpc8349e-pci-3.patch Patch3 : linux-2.6.11-mpc8349e-pci-agent.patch Patch4 : linux-2.6.11-mpc8349e-watchdog.patch Patch5 : linux-2.6.11-mpc83xx-sec2.patch Patch6 : mpc832x-sec2v15-config-1.patch Patch7 : linux-2.6.11-mpc8349e-usb-gadget.patch Patch8 : linux-2.6.11-mpc8349e-usb-host.patch Patch9 : linux-2.6.11-mpc8360-general-1.patch Patch10 : linux-2.6.11-mpc8360-pci-agent.patch Patch11 : linux-2.6.11-mpc832x-basic-4.patch Patch12 : linux-2.6.11-mpc832x-pci-agent.patch Patch13 : linux-2.6.11-mpc832x-spi-1.patch Patch14 : linux-2.6.11-mpc832x-BIT.patch Patch15 : linux-2.6.11-mpc83xx-ct-1.patch Patch16 : linux-2.6.11-mpc832x-usb-gadget.patch Patch17 : linux-2.6.11-mpc832x-atm-1.patch I guess there's no point upstreaming mpc8360sar until freescale have upstreamed these patches (and ported them to the current kernel). Alex PS It's probable that mpc8360sar actually only requires a handful of the above patches to be applied.
[Linux-ATM-General] mpc8360sar
Kumar Gala wrote: On Jul 20, 2006, at 8:33 AM, Alex Zeffertt wrote: Any reason we dont try to get your work up stream into the mainline kernel? - kumar I'd like to see it upstreamed - the more people who use it the more help I get! However, mpc8360sar is built on Freescale's BSP which adds basic support for the board, the MPC832xE-MDS, to the stock linux kernel. This support consists of the following patches: Patch0 : patch-2.6.11.bz2 Patch1 : linux-2.6.11-mpc8349e-general-20060414.patch Patch2 : linux-2.6.11-mpc8349e-pci-3.patch Patch3 : linux-2.6.11-mpc8349e-pci-agent.patch Patch4 : linux-2.6.11-mpc8349e-watchdog.patch Patch5 : linux-2.6.11-mpc83xx-sec2.patch Patch6 : mpc832x-sec2v15-config-1.patch Patch7 : linux-2.6.11-mpc8349e-usb-gadget.patch Patch8 : linux-2.6.11-mpc8349e-usb-host.patch Patch9 : linux-2.6.11-mpc8360-general-1.patch Patch10 : linux-2.6.11-mpc8360-pci-agent.patch Patch11 : linux-2.6.11-mpc832x-basic-4.patch Patch12 : linux-2.6.11-mpc832x-pci-agent.patch Patch13 : linux-2.6.11-mpc832x-spi-1.patch Patch14 : linux-2.6.11-mpc832x-BIT.patch Patch15 : linux-2.6.11-mpc83xx-ct-1.patch Patch16 : linux-2.6.11-mpc832x-usb-gadget.patch Patch17 : linux-2.6.11-mpc832x-atm-1.patch I guess there's no point upstreaming mpc8360sar until freescale have upstreamed these patches (and ported them to the current kernel). True, a large number of these patches are upstream, and if I had access to MPC836x or MPC832x HW I'd work on getting the others that are reasonable. Alex PS It's probable that mpc8360sar actually only requires a handful of the above patches to be applied. Agreed. - kumar Tony, can you let me know when CONFIG_MPC832XE_MDS support is upstreamed to a kernel.org kernel. I'll then try to get the mpc8360sar working with this kernel and then upstream it. Alex PS I'm not entirely sure how upstreaming is done.
how to get individual patches
David H. Lynch Jr. wrote: The bsp I am working on works with 2.6.16.21 but fails with 2.6.17. How can I find the individual patches that make up the transition from 2.6.16.21 to 2.6.17 ? I guess I can use interdiff to create single patch to go from 2.6.16.21 to 2.6.17 but I am really looking to get all the individual patches so I can try to isolate exactly what is giving me trouble. For diffs of individual files between official kernel releases you can use http://www.linuxhq.com/kernel/ It's really good! Alex
No ttyS device at I/O port 0xfe004500 for console
Kumar Gala wrote: On Jun 13, 2006, at 11:48 AM, Alex Zeffertt wrote: Hi list, I'm trying to boot a linux-2.6.11 kernel on a MPC83xx based board. Through some experimentation I have found I need console=uart,io,0xfe004500 in the kernel command line in order to get any output over the serial port. Half way through initialisation the kernel appears to swap from its early 8250 serial driver to a full 8250 serial driver. At this point it prints No ttyS device at I/O port 0xfe004500 for console and there is no further output. Does anyone have any idea what I may be doing wrong? BTW, here's the output that I do get. Alex, where did you get this 2.6.11 kernel? The public tree didn't have support for 83xx in 2.6.11. I'd suggest looking at using something newer like 2.6.16 and see if you have the same issue. - k Hi Kumar, I got it from Freescale's MPC8323EMDS linux BSP. As far as I am aware this is the only source which has support for this board. (Hopefully they will eventually upstream their changes!) I'll have a look at 2.6.11 and see whether it is feasable to port the board support to it. Thanks, Alex
No ttyS device at I/O port 0xfe004500 for console
Joakim Tjernlund wrote: -Original Message- From: linuxppc-embedded-bounces+joakim.tjernlund=lumentis.se at ozlabs. org [mailto:linuxppc-embedded-bounces+joakim.tjernlund=lumentis.se @ozlabs.org] On Behalf Of Alex Zeffertt Sent: den 13 juni 2006 18:48 To: linuxppc-embedded at ozlabs.org Subject: No ttyS device at I/O port 0xfe004500 for console Hi list, I'm trying to boot a linux-2.6.11 kernel on a MPC83xx based board. Through some experimentation I have found I need console=uart,io,0xfe004500 in the kernel command line in order to get any output over the serial port. Alex, can you post your complete u-boot env(printenv). I am trying to do the same as you but I havn't gotten any output yet. I managed to wipe my u-boot u-boot env and the docs arent that great :( Jocke No problem. I just had to try absolutely *every* possible option for the console parameter. Eventually this worked (for the early serial output only, not for /dev/console output.) See attached for my u-boot environment Alex -- next part -- An embedded and charset-unspecified text was scrubbed... Name: u-boot.log Url: http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20060614/a67f05a6/attachment.txt
No ttyS device at I/O port 0xfe004500 for console
Kumar Gala wrote: Here you go: Let me know if this fixes the issues you guys are seeing with your 83xx boards. If so, I'll clean up this patch and push it upstream. - k Great, thank you! Your patch and the params console=uart,io,0xfe004500 console=ttyS0 in the kernel command line do the trick. Alex --- mpc83xx_sys.c-ORIG2006-06-13 17:54:36.577339832 -0400 +++ mpc83xx_sys.c2006-06-13 17:56:02.394293672 -0400 @@ -136,6 +136,23 @@ struct ppc_sys_spec ppc_sys_specs[] = { #endif }, }, +{ +.ppc_sys_name= 8323E, +.mask= 0x, +.value= 0x8062, +#ifdef CONFIG_QE +.num_devices= 4, +#else +.num_devices= 2, +#endif +.device_list= (enum ppc_sys_devices[]) +{ +MPC83xx_IIC1, MPC83xx_DUART, +#ifdef CONFIG_QE +MPC83xx_QE_UCC3, MPC83xx_QE_UCC4, +#endif +}, +}, {/* default match */ .ppc_sys_name= , .mask = 0x, Regards, Chuck
No ttyS device at I/O port 0xfe004500 for console
Hi list, I'm trying to boot a linux-2.6.11 kernel on a MPC83xx based board. Through some experimentation I have found I need console=uart,io,0xfe004500 in the kernel command line in order to get any output over the serial port. Half way through initialisation the kernel appears to swap from its early 8250 serial driver to a full 8250 serial driver. At this point it prints No ttyS device at I/O port 0xfe004500 for console and there is no further output. Does anyone have any idea what I may be doing wrong? BTW, here's the output that I do get. ---/snip-- U-Boot 1.1.3 (FSL Development) (Jun 13 2006 - 14:01:25) MPC83XX Clock configuration: Coherent System Bus: 132 MHz Core: 264 MHz QE: 198 MHz Local Bus Controller: 132 MHz Local Bus: 66 MHz DDR: 264 MHz SEC: 132 MHz I2C1: 132 MHz CPU: MPC8323E, Rev: 10 at 264 MHz Board: Freescale MPC832XEPB I2C: ready DRAM: DDR RAM: 128 MB FLASH: 16 MB In:serial Out: serial Err: serial Net: FSL GETH0 Hit any key to stop autoboot: 0 geth: PHY is Davicom DM9161A (181b8a0) FSL GETH0: Full Duplex FSL GETH0: Speed 100BT FSL GETH0: Link is up Using FSL GETH0 device TFTP from server 10.0.0.107; our IP address is 10.0.6.65 Filename 'uImage'. Load address: 0x20 Loading: # # # ## done Bytes transferred = 1046491 (ff7db hex) ## Booting image at 0020 ... Image Name: Linux-2.6.11 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size:1046427 Bytes = 1021.9 kB Load Address: Entry Point: Verifying Checksum ... OK Uncompressing Kernel Image ... OK Linux version 2.6.11 (ajz at zambia) (gcc version 3.4.3) #5 Tue Jun 13 17:36:46 BST 2006 Built 1 zonelists Kernel command line: root=/dev/nfs rw nfsroot=10.0.0.107:/opt/eldk/ppc_6xx ip=10.0.6.65:10.0.0.107:10.0.0.1:255.255.0.0:eth0:off console=uart,io,0xfe004500 IPIC (128 IRQ sources, 8 External IRQs) at fe000700 QE IC (64 IRQ sources) at fe100080 PID hash table entries: 1024 (order: 10, 16384 bytes) Early serial console at I/O port 0xfe004500 (options '134') Dentry cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 127488k available (1724k kernel code, 432k data, 100k init, 0k highmem) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) NET: Registered protocol family 16 SCSI subsystem initialized JFFS2 version 2.2. (C) 2001-2003 Red Hat, Inc. Generic RTC Driver v1.07 Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered RAMDISK driver initialized: 16 RAM disks of 32768K size 1024 blocksize loop: loaded (max 8 devices) MPC832XE MDS flash device: 100 at ff00 Partition number 5 MPC832XE PB Flash Map Info: Found 1 x16 devices at 0x0 in 16-bit bank Intel/Sharp Extended Query Table at 0x0031 Using buffer write method cfi_cmdset_0001: Erase suspend on write enabled Creating 5 MTD partitions on MPC832XE PB Flash Map Info: 0x-0x0002 : HRCW 0x0002-0x0090 : JFFS2 0x0090-0x00d0 : Ramdisk 0x00d0-0x00f0 : Kernel 0x00f0-0x0100 : U-Boot MPC832XE MDS flash device initialized i2c /dev entries driver NET: Registered protocol family 2 IP: routing cache hash table of 1024 buckets, 8Kbytes TCP established hash table entries: 8192 (order: 4, 65536 bytes) TCP bind hash table entries: 8192 (order: 3, 32768 bytes) TCP: Hash tables configured (established 8192 bind 8192) NET: Registered protocol family 1 NET: Registered protocol family 17 No ttyS device at I/O port 0xfe004500 for console ---/snip-- TIA, Alex
Viable PPC platform?
On Tue, 9 May 2006 10:15:20 -0700 Eugene Surovegin ebs at ebshome.net wrote: On Tue, May 09, 2006 at 05:41:01PM +0100, Alex Zeffertt wrote: On Tue, 09 May 2006 10:38:19 -0400 geneSmith gd.smth at gmail.com wrote: I have a ppc405gpr system with 64M ram and 4Meg flash in a AM29LV320. Is this a viable platform for linux? Can a filesystem (JFFS2?) be put this flash type? I would create an initrd and put every file that doesn't need to be changed persistently into it instead of JFFS2. After many years of doing embedded Linux stuff I still don't understand why people are so fond of initrd. For temporary stuff - tempfs is much better and flexible. For r/o stuff - just make separate MTD partition (cramfs, squashfs) and mount it directly as root. Both options will waste significantly less memory. Okay, let me qualify my answer. It depends on whether you need to make persistent changes to the filesystem in flash. If so, and given that your flash is only 4MB, I would recommend moving files to somewhere else, e.g. an initrd, because if when a JFFS2 FS is approaching full, you often find that writes to flash hang while JFFS2 searches for blocks to use as a scratchpad. This has been my experience anyway. If you don't need to make persistent changes to files, then I'm sure cramfs in flash as a rootfs would work well, with a tmpfs partition mounted on /tmp and /var. Alex
Viable PPC platform?
On Tue, 09 May 2006 10:38:19 -0400 geneSmith gd.smth at gmail.com wrote: I have a ppc405gpr system with 64M ram and 4Meg flash in a AM29LV320. Is this a viable platform for linux? Can a filesystem (JFFS2?) be put this flash type? I would create an initrd and put every file that doesn't need to be changed persistently into it instead of JFFS2. The reason for this is that if JFFS2 becomes too full (less than 5 free blocks) you may find that writes to it hang. Alex -- Lit up like Levy's ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
QUICC Engine ATM driver
Hi all, Has anybody ported, or started to port, the mpc8260sar ATM driver for the PowerQUICC II to the PowerQUICC II Pro (e.g. the MPC8360). If so I'd love to hear from you :) Regards, Alex PS: For the record: PowerQUICC I contains a CPM1 which needs the mpc860sar driver PowerQUICC II III contain a CPM2 which needs the mpc8260sar driver PowerQUICC II Pro contains a QUICC Engine
Freescale 8272ADS configuration
Carlos, You need to load u-boot using the following BDI2000 config file: ftp://ftp.denx.de/pub/BDI2000/MPC8260ADS.cfg u-boot itself needs to be configured with make MPC8272ADS_config before it is built. The kernel needs to be configured with make ads8272_config make oldconfig before it is built. And most importantly you should read the user manual on http://www.denx.de/wiki/DULG/Manual It's a bit 8xx centric but most of it applies to the 82xx as well. Alex On Wed, 12 Apr 2006 18:22:33 -0700 Carlos Munoz carlos at kenati.com wrote: Hi all, I have a new Freescale 8272ADS board that I need to load uboot and linux on. I have read all the documentation that came with the board but unfortunately it doesn't explain how to bring up the board from scratch. Does anyone know what I need to do to load uboot and linux on this board ? Thanks, Carlos ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
UTOPIA support for MPC885 with 2.6.15 kernel
Hi Dave, I maintain the mpc860sar project - although it hasn't required much maintenance for the past year or so. Nobody has told me about any linux-2.6 port, so it's possible you are the first to do this. If you are happy with your port I'd appreciate it if you sent me a patch which I would then consider adding to the site. FYI, I also maintain a PQII driver called mpc8260sar, and I have been sent a patch which added support for linux-2.6 without breaking linux-2.4, so I added this to the sourceforge project. If you like I'll send you the PQII linux-2.6 patch as a guide for how to do it for the original PQI driver. Alex On Fri, 24 Feb 2006 00:54:39 -0500 Pelton, Dave dpelton at ciena.com wrote: Hello, I am currently working with a MPC885ADS board running a 2.6.15 kernel build. I have been attempting to get the UTOPIA interface working, but I have not been able to find kernel code (or patches) to do this. The closest I have found so far is the MPC860/862 ATM driver on SourceForge. Unfortunately this driver was written for the 2.4 kernel, and does not include MPHY support for ESAR mode. I have been able to get this code to compile and run on my kernel, and now I am digging into the ESAR/MPHY support stuff. I was wondering if anyone else has already done anything along these lines (either a ESAR/MPHY driver or MPC855 UTOPIA support on the 2.6 kernel), as I would prefer to build on existing code rather than gluing this stuff together myself. - Thanks, David Pelton. ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
mpc8260sar linux-2.6 and PQ2FADS support
Hi all, This email is just to announce that I've added linux-2.6 and PQ2FADS support to the ATM driver on http://mpc8260sar.sourceforge.net/ . This new support was submitted by Fabien Clement, to whom I am very grateful. I have not tested linux-2.6 or the PQ2FADS myself, but the code looks good and is still working on linux-2.4 and the other platforms supported by the driver(PM828 and MPC8272ADS). Alex
How to enable PHY
On Fri, 6 Jan 2006 18:43:08 +0530 batsayan.das at tcs.com wrote: Hi, I found that ADS8260 board enables PHY by the following lines of code #ifndef CONFIG_ADS8260 /* Enable the PHY. */ *(volatile uint *)(BCSR_ADDR + 4) = ~BCSR1_FETHIEN; *(volatile uint *)(BCSR_ADDR + 4) |= BCSR1_FETH_RST; #endif Our board does not have BCSR. My question is how to enable PHY for MPC8260 based customs board without BCSR? You have to take your PHY out of reset. How to do this depends on your board. On the ADS8260 the PHY reset line goes to the BCSR and you must write the above to BCSR register 1 to tell it to change the pin level. On your board you may need to use GPIO, or you may need to do nothing at all. Read your schematics! Regards, Alex
MPC8272ADS stability issues
Thanks everybody. I was hoping to hear that others had seen this problem and that it is probably hardware, not software. My ADS is just about stable enough to use for development till our custom hardware arrives, at which point - hopefully - the problems will disappear! Alex
compact flash driver
On Tue, 25 Oct 2005 11:44:08 -0700 Bizhan Gholikhamseh \(bgholikh\) bgholikh at cisco.com wrote: Hello All, Are there any compact flash driver supported for Linux 2.6? If there is where can i get the source code. Thanks, Bizhan I think that CF cards just get treated the same as any other IDE disk by linux. No special driver needed.
m82xxhci USB driver problems
On Mon, 24 Oct 2005 20:15:08 +0400 Vitaly Bordug vbordug at ru.mvista.com wrote: Maybe there's something with SOF generation - check if RCCR[EIE] is set. Just a pure guess... No, it is set.
m82xxhci USB driver problems
Hi list, I'm trying to get the m82xxhci USB host controller driver working on my MPC8272ADS board, and linux-2.4.25. I can compile and modprobe the module. When I insert a USB pen drive I get the following message: # hub.c: new USB device m8xxhci-1, assigned address 4 Manufacturer: Product: USB Disk Pro SerialNumber: 07531E630012 scsi0 : SCSI emulation for USB Mass Storage devices Which looks okay. But after a long delay I get: # usb_control/bulk_msg: timeout Then after another delay: # usb-storage: host_reset() requested but not implemented # Then after another delay: # scsi: device set offline - command error recover failed: host 0 channel 0 id 0 lun 0 After this final message, but not before, the pen drive device appears in /proc/bus/usb/devices: # cat /proc/bus/usb/devices T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 1 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor= ProdID= Rev= 0.00 S: Product=USB MPC8xx Root Hub S: SerialNumber=f0011b60 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0d7d ProdID=0120 Rev= 1.00 S: Manufacturer= S: Product=USB Disk Pro S: SerialNumber=07531E630012 C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=100mA I: If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=04 Prot=00 Driver=usb-storage E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=03(Int.) MxPS= 2 Ivl=1ms Does anybody have any idea what could be causing this problem? The HCI is clearly able to communicate with the device because it identifies it. But I don't know why the timeout should occur! Alex PS A possibly related problem: I have built sd_mod.o as a module, and I can modprobe sd_mod okay. However, after I have run modprobe I still do not see an sd block device in /proc/devices. I have no idea why though
Announce: MPC8272ADS platform support added to mpc8260sar project.
On Mon, 17 Oct 2005 11:44:41 -0700 Mark A. Greer mgreer at mvista.com wrote: On Mon, Oct 17, 2005 at 12:35:43PM +0100, Alex Zeffertt wrote: Hi lists, I'm writing to let anybody (who may be interested) know that I've added support for the MPC8272ADS platform to the mpc8260sar ATM device driver: http://mpc8260sar.sourceforge.net There is already an ads8272_defconfig in the kernel.org tree and AFAIK it works. Did you add some functionality or change something? Or am I missing something? I've added support for this platform to the ATM driver. ^ Alex
Announce: MPC8272ADS platform support added to mpc8260sar project.
Hi lists, I'm writing to let anybody (who may be interested) know that I've added support for the MPC8272ADS platform to the mpc8260sar ATM device driver: http://mpc8260sar.sourceforge.net Regards, Alex
How to porting U-Boot to MPC852T
On Fri, 14 Oct 2005 17:41:32 +0530 gokul kn.gokul at gdatech.co.in wrote: Hi I have to Port U Boot for MPC852T .Is there u boot code is available ? Can u send me the link ? With Regards Gokul First of all: you need to ask on the u-boot-users mailing list, not here. Second, u-boot already supports MPC852T. What you really want is for u-boot to be ported to your board. Ask the u-boot-users list if your board is supported. If not, maybe you can pay someone to do it for you. Alex
MPC8555 USB host support
On Wed, 12 Oct 2005 09:27:56 +0200 Stefan Roese sr at denx.de wrote: Mike, On Wednesday 12 October 2005 09:11, Mike Rapoport wrote: I don't know if Pantelis found a volo^H^H^Hictim, but I've made some porting of the USB HCI driver for 82xx (I afraid 8xx support was broken during the port). But the code is*very* ugly and still buggy. I am currently collecting information about the porting effort, and your ugly and buggy driver would be very helpful. So, please send me your version as well. Thanks. Yes me too please. Also Russell McGuire was asking earlier about this. Maybe the best thing to do would be to create a sourceforge project and post the latest patches there. I have an 8272ads board and I'd be happy to test it out and provide feedback. Regards, Alex
Oops accessing BCSR on 8272ADS
Hi list, I've just downloaded linux-2.4.31 from kernel.org and compiled it for the mpc8272ads board. When I boot the kernel it oopses in fcc_enet.c:init_fcc_startup() at the point where it tries to write to the BCSR. Does anybody know why writing to the BCSR should cause a machine check? TIA, Alex
Oops accessing BCSR on 8272ADS
It depends on which u-boot you're using and there I'm aware of issues when BCSR resides somewhere different... Try 0xF800. Don't you have btw Thanks Vitaly. You were right. In my u-boot - version 1.1.1 - it was 0xf800 not 0xf450. I just modified BCSR_ADDR and that stopped the oops. Cheers, Alex
CPM2 early console
On Tue, 04 Oct 2005 10:13:10 +0200 Kalle Pokki kalle.pokki at iki.fi wrote: I found it. It's in the MPC8272 family errata. When setting pipeline depth to one everything works. Can you Alex confirm this works also for you? Hi Kalle, I've just checked and it makes no difference to the ATM driver. In fact, on my platform (PM828+u-boot-1.1.3) the pipeline depth was already set to 1. You are probably right that the pipeline depth was the cause of your problem- but my problem is something else. I think that Freescale simply overlooked the ATM external connection table case when designing the cache coherency protocol - because they offered no way to assert GBL when external connection tables are accessed. Alex
CPM2 early console
On Thu, 29 Sep 2005 14:24:07 +0200 Kalle Pokki kalle.pokki at iki.fi wrote: Kalle Pokki wrote: I guess Linux remaps the RAM as copy-back. But snooping should work with copy-back caches, shouldn't it? Oh, well. The kernel boots just fine if I add flags |= _PAGE_WRITETHRU | _PAGE_COHERENT; in setbat() in arch/ppc/mm/ppc_mmu.c. But this should not depend on this kind of a hack, should it? I was experiencing a similar problem with the mpc8260sar ATM driver, and Kalle's hack seems to fix the problem. On the 8260 ATM SAR you can specify that the CPM asserts the GBL signal whenever it accesses buffers, BDs, or interrupt queues. This allows the cache to snoop accesses to these areas and invalidate cache lines to keep the cache coherent. However, there seems to be no way of telling the CPM to assert the GBL signal when it is accessing External Connection Tables, or Second Level lookup Tables - both of which are also accessed by the core. Because of this the cache does not know when the CPM is accessing these areas. It seems to me that whilst the CPM was designed to be cache coherent Freescale have overlooked some areas! Till now I have worked around this problem by calling dcache_invalidate_range() and dcache_flush_range() before and after accesses to these areas. I'm now considering changing to Kalle's way of doing it. Are there any drawbacks to this approach? TIA, Alex Zeffertt
CPM2 early console
On Fri, 30 Sep 2005 14:22:18 +0100 Alex Zeffertt ajz at cambridgebroadband.com wrote: Till now I have worked around this problem by calling dcache_invalidate_range() and dcache_flush_range() before and after accesses to these areas. I'm now considering changing to Kalle's way of doing it. Are there any drawbacks to this approach? To answer my own question: yes there is a drawback. I've just done some performance tests on my driver. In the first test the driver uses invalidate/flush calls to keep the cache coherent. In the second test I just use Kalle's mod to setbat(). In the second test the perfomance of the driver is roughly 1/3 of the performance in the first test. What I really want is a way of asserting GBL whenever the CPM accesses ANY memory area other than DPRAM. Hm. Alex
Help on 8260 board
On Tue, 13 Sep 2005 09:48:26 +0530 prabha.j at tcs.com wrote: With default settings i have built both the kernel and u-boot image. But i want to do according to the board. Please give me some advice on this. Don't use the defaults. The configuration is already done for you - In u-boot-version: make MPC8260_config ... In linux-version: make ads8260_config make oldconfig Also, I suggest you read the DULG wiki on using linux with u-boot in PPC environments. It's mostly aimed at the 8xx but it all still applies to the 82xx: http://www.denx.de/twiki/bin/view/DULG/Manual Alex
Help on 8260 board
I wrote: In u-boot-version: make MPC8260_config ... Sorry that should be make MPC8260ADS_config
Can't run 8M ramdisk at 2.4.20 linux
EMAIL rober at opnet.com.tw wrote: Hi All: I build a 8M ramdisk file, it works fine at 2.4.25 linux but fail in 2.4.20.Why? I do follow command to make 8M ramdsik, all files in the ramdisk is from pRamdisk (download from denx ftp site). Possibly a kernel config error. Look for CONFIG_BLK_DEV_RAM_SIZE in your .config. You need CONFIG_BLK_DEV_RAM_SIZE=8192 Alex
PCI on MPC827x
Hi list, Does the linuxppc kernel support PCI on PowerQUICC II chips? If so, in which patch/release was it added? Thanks in advance, Alex
PCI on MPC827x
On Tue, 06 Sep 2005 16:45:15 +0400 Vitaly Bordug vbordug at ru.mvista.com wrote: Alex Zeffertt wrote: Hi list, Does the linuxppc kernel support PCI on PowerQUICC II chips? If so, in which patch/release was it added? The PCI bridge for 8272ADS has been added in 2.6.12-rc6. This stuff should work on PQ2FADS as well. Thanks Vitaly. Unfortunately we're using linux-2.4.25. Has anybody backported the PCI bridge to 2.4? If not, do you think it's a lot of work? Alex
linux kernel does not bring up!!
VFS: Mounted root (ext2 filesystem). Freeing unused kernel memory: 76k init init started: BusyBox v0.60.5 (2005.06.06-14:19+) multi-call binary rm: cannot remove `/www/log/seriald_started.log': No such file or directory but this message just print once ,what's the problem with the board ,does it destroy
linux kernel does not bring up!!
On Wed, 31 Aug 2005 15:05:24 +0800 lily lichanjuan04 at st.lzu.edu.cn wrote: ET4: Unix domain sockets 1.0/SMP for Linux NET4.0. RAMDISK: Compressed image found at block 0 Freeing initrd memory: 1691k freed VFS: Mounted root (ext2 filesystem). Freeing unused kernel memory: 76k init init started: BusyBox v0.60.5 (2005.06.06-14:19+) multi-call binary rm: cannot remove `/www/log/seriald_started.log': No such file or directory but this message just print once ,what's the problem with the board ,does it destroy there is somebody give me some suggestion what i do next.Thanks !! This question is off topic here. You need to read man init and man inittab and your /etc/inittab to find out which startup scripts are being called. You can then find the script which is attempting to remove the nonexistent file, and fix it (e.g. by using rm -f instead). This list cannot help any further as this is not related to the PPC port of linux. Alex
827x/8x Linux USB Host driver
Hello Russell, I'm interested to know if you got anywhere with this? Did you find an OS USB driver for the 827x? Or did you write one yourself? TIA, Alex On Sat, 16 Jul 2005 08:55:52 -0700 Russell McGuire rmcguire at uwbt.com wrote: Does anyone know of the existence of an open source USB host driver for the 827x/8x PowerQUIC II processors for Linux 2.4.2x? This CPU introduced a USB host controller inside the CPU vs the 8260, which doesn't have one. Thanks, -Russ
Linux Kernel MTD question
Before doing a write to /dev/mtd1 try running ~# eraseall /dev/mtd1 (eraseall is from the mtd-utils package.) Alex On Wed, 24 Aug 2005 13:02:31 +0800 JohnsonCheng johnsoncheng at qnap.com.tw wrote: Dear Ricardo and Wolfgang, Very thanks for your kindly support. I am sorry I made a mistake. Before you mount /dev/mtdblock4, you have to use mke2fs to format it. Now I think my MTD function is almost ready, except write. When I run dd if=/dev/mtd1 of=kernel.img, it's OK. But when I run dd if=kernel.img of=/dev/mtd1, it's failed. No error message printed, and the process time is shortly, cause Bad CRC. Thanks, Johnson Cheng -Original Message- From: linuxppc-embedded-bounces at ozlabs.org [mailto:linuxppc-embedded-bounces at ozlabs.org] On Behalf Of Ricardo Scop Sent: Wednesday, August 24, 2005 3:17 AM To: JohnsonCheng; 'Robert P. J. Day' Cc: linuxppc-embedded at ozlabs.org Subject: Re: Linux Kernel MTD question Hi Johnson, On Tuesday 23 August 2005 02:31, JohnsonCheng wrote: It doesn't work, too. Error message: Invalid argument. Well, do you have an mtdblock4 entry in /dev? Also, you should specify your filesystem type to mount, like in: mount -t jffs2 /dev/mtdblock4 /mnt BTW, -t jffs2 is just an example. HTH, -Scop. ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
unresolved symbol
At compile time the compiler assumed these symbols would be defined externally, either by the kernel or by another module loaded prior to hello.o. The error message says that these symbols are not exported by the kernel (or any currently loaded modules) prior to running insmod hello.o. Either: 1. You need to insmod another module first (or use modprobe hello which may do this automatically) 2. The module defining these symbols has not used the EXPORT_SYMBOL() macro to make them exported. 3. These symbols are not defined in either the kernel or any modules. Alex On Wed, 24 Aug 2005 15:07:58 +0800 zhonglei zhonglei at RCS-9000.COM wrote: hi My mod has no error or warning during compiling.But when I insmod hello.o , it shows: hello.o : unresolved symbol TaskStart hello.o : unresolved symbol TaskLoadImage hello.o : unresolved symbol TaskInitAPI ... What's the problem? BestRegards zhonglei ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
PPC860 board and PPCBoot verifying Checksum ... Bad Data CRC
On Tue, 2 Aug 2005 11:26:30 +0800 FCG WANG Baohua Baohua.WANG at alcatel-sbell.com.cn wrote: Dear All: I build the ELDK3.1.1 kernel 2.4.25, When bootm or imi it shows the verifying Checksum ... Bad Data CRC, then stop. But the vmlinux.UBoot is right in Host, How can I do? I use tftpboot to download it. Thanks! You may have a RAM error. Try running mtest in uboot. (And make sure CFG_MEMTEST_START and CFG_MEMTEST_END cover the region to which you are downloading uImage.) Alex
request_8xxirq
On Fri, 29 Jul 2005 14:01:21 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: But this code doesn't help to find request_8xxirq. It just do the opposite. This code defines request_irq to be request_8xxirq when CONFIG_8xx is defined. But where is located the implementation of request_8xxirq? See the code snippet in my last email. The C preprocessor replaces 'int request_irq(...' with 'int request_8xxirq(...' prior to compilation. Alex Zeffertt wrote: Maybe you're using a really old kernel. In linux-2.4.4 it's in arch/ppc/kernel/irq.c: -- snip -- #if (defined(CONFIG_8xx) || defined(CONFIG_8260)) /* Name change so we can catch standard drivers that potentially mess up * the internal interrupt controller on 8xx and 8260. Just bear with me, * I don't like this either and I am searching a better solution. For * now, this is what I need. -- Dan */ #define request_irq request_8xxirq ... ... ... int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *), unsigned long irqflags, const char * devname, void *dev_id) { --/snip -- I don't know why it was done like this Alex On Fri, 29 Jul 2005 10:52:33 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: Thank you Alex. But in my linux, this is different. What I have in that file is just extern int request_8xxirq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *), unsigned long flags, const char *device, void *dev_id); And the request_8xxirq is declared as a EXPORT_SYMBOL(request_8xxirq); in arch/ppc/kernel/ppc_ksyms.c. I already tried to find out where the code that implements the function is located, but it seems that it doesn't exist in my distribuction. Maybe is it a binary version? Any other information will be apreciated ;-) Best Regards, Tiago Alex Zeffertt wrote: In linux-2.4 it's in include/asm-ppc/mpc8xx.h -- snip -- #define request_8xxirq request_irq --/snip -- And request_irq is in arch/ppc/kernel/irq.c Alex On Fri, 29 Jul 2005 10:07:58 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: Hi, I had some problems with irq in my embedded system. I'm interested in this function source code, but I didn't find it in my linux distribuction? Does anyone know where I can find it? Thanks a lot Tiago Manish Joshi wrote: Hi, I am working on an old code which uses request_8xxirq() call which I can't find in latest kernel. Has this been replaced by something else ? I see the references on net about replacing request_8xxirq() with request_irq(). Can I do it ? TIA, Manish Start your day with Yahoo! - make it your home page http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- Tiago Dall'Agnol Pesquisa e Desenvolvimento Tel.: +55.51.470.05.64 Fax.: +55.51.470.05.70 e-mail: tdallagnol at parks.com.br www.parks.com.br ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- -- Tiago Dall'Agnol Pesquisa e Desenvolvimento Tel.: +55.51.470.05.64 Fax.: +55.51.470.05.70 e-mail: tdallagnol at parks.com.br www.parks.com.br
request_8xxirq
In linux-2.4 it's in include/asm-ppc/mpc8xx.h -- snip -- #define request_8xxirq request_irq --/snip -- And request_irq is in arch/ppc/kernel/irq.c Alex On Fri, 29 Jul 2005 10:07:58 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: Hi, I had some problems with irq in my embedded system. I'm interested in this function source code, but I didn't find it in my linux distribuction? Does anyone know where I can find it? Thanks a lot Tiago Manish Joshi wrote: Hi, I am working on an old code which uses request_8xxirq() call which I can't find in latest kernel. Has this been replaced by something else ? I see the references on net about replacing request_8xxirq() with request_irq(). Can I do it ? TIA, Manish Start your day with Yahoo! - make it your home page http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- Tiago Dall'Agnol Pesquisa e Desenvolvimento Tel.: +55.51.470.05.64 Fax.: +55.51.470.05.70 e-mail: tdallagnol at parks.com.br www.parks.com.br ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
request_8xxirq
Maybe you're using a really old kernel. In linux-2.4.4 it's in arch/ppc/kernel/irq.c: -- snip -- #if (defined(CONFIG_8xx) || defined(CONFIG_8260)) /* Name change so we can catch standard drivers that potentially mess up * the internal interrupt controller on 8xx and 8260. Just bear with me, * I don't like this either and I am searching a better solution. For * now, this is what I need. -- Dan */ #define request_irq request_8xxirq ... ... ... int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *), unsigned long irqflags, const char * devname, void *dev_id) { --/snip -- I don't know why it was done like this Alex On Fri, 29 Jul 2005 10:52:33 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: Thank you Alex. But in my linux, this is different. What I have in that file is just extern int request_8xxirq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *), unsigned long flags, const char *device, void *dev_id); And the request_8xxirq is declared as a EXPORT_SYMBOL(request_8xxirq); in arch/ppc/kernel/ppc_ksyms.c. I already tried to find out where the code that implements the function is located, but it seems that it doesn't exist in my distribuction. Maybe is it a binary version? Any other information will be apreciated ;-) Best Regards, Tiago Alex Zeffertt wrote: In linux-2.4 it's in include/asm-ppc/mpc8xx.h -- snip -- #define request_8xxirq request_irq --/snip -- And request_irq is in arch/ppc/kernel/irq.c Alex On Fri, 29 Jul 2005 10:07:58 -0300 Tiago Dall'Agnol tdallagnol at parks.com.br wrote: Hi, I had some problems with irq in my embedded system. I'm interested in this function source code, but I didn't find it in my linux distribuction? Does anyone know where I can find it? Thanks a lot Tiago Manish Joshi wrote: Hi, I am working on an old code which uses request_8xxirq() call which I can't find in latest kernel. Has this been replaced by something else ? I see the references on net about replacing request_8xxirq() with request_irq(). Can I do it ? TIA, Manish Start your day with Yahoo! - make it your home page http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- Tiago Dall'Agnol Pesquisa e Desenvolvimento Tel.: +55.51.470.05.64 Fax.: +55.51.470.05.70 e-mail: tdallagnol at parks.com.br www.parks.com.br ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded --
CPM MCC sample driver?
On Wed, 27 Jul 2005 12:09:25 -0500 bbosch at iphase.com wrote: A couple of years ago, Adam Kaczynski announced a sample MCC HDLC and Transparent mode driver. Both the URL Adam posted and Adam's email address are no longer valid. Is this code or any other Linux MCC driver available anywhere? I need to develop an MCC driver for a project I am working on and it would be very helpful to have an example to start with. I'm not sure what you mean by MCC. I've got an PQI SCC tranparent mode driver which implements a character device for reading from/writing to a PCM bus. I wrote it a couple of years ago and tested it using an external loopback - but I've never used it in anger. Would this be useful to you? Alex
Porting Linux On MPC8266 custom board
On Wed, 27 Jul 2005 11:46:05 +0530 apoorv sangal apoorvsangal at gmail.com wrote: Hi Alex, Thanks a lot for your reply. I have been able to procedd further and now I am facing problem in mounting root file system. As suggested by you in earlier mail about the following :- 1. linux/init/main.c (which contains the following code #endif #ifdef CONFIG_MTD { mtdblock, 0x1f00 }, #endif { NULL, 0 } }; ) I am not able to find the above mention code snippet in the linux/init/main.c. I am using Linux Kerne 2.4.24 which came with eldk. Does that mean that i have to deifne CONFIG_MTD myself as i am trying to JFFS2 file system ? The code is definitely in there! You need to define CONFIG_MTD using make menuconfig (make sure you define it as kernel resident not as a module). If you are new to all this read the README in the kernel source directory first. Alex
mpc8540 SK board FEC not work!
I think there are two possibilities: i) You are probing the wrong phy address. Since the MDIO line is pulled high you get a phyID of 0x. Try changing the phy address probed. From the source it looks like this is done in the BIOS. If this fails scope the MDIO/MDC bus. ii) The phy id has changed between the 88E1101 and the 88E. If this is the case you may get away with just modifying phy_info_marvell.name and phy_info_marvell.phy_id_mask. But you may have to add a new phy_info struct to deal with the new phy if there are any incompatibilities between the new and old phys, or if the phy_ids differ in more than just their lower bits. Or maybe both Alex On Mon, 25 Jul 2005 19:16:50 +0800 KylongMu mqy at 263.net.cn wrote: Hello, team I'm testing the 2.6.13-rc3 kernel on my board, all is work well except the FEC. Board type: PQ3SK REVB Kernel : 2.6.13-rc3 toolchain: ELDK 3.1.1 PHY type : Marvell 88ES Compile with make mpc8540ads_defconfig, change with nothing. download uImage file into my board and boot with it, all is ok ! But when I config the eth0 , it can't work , same with eth1, both of them are Giga-eth, but eth2 is work well, and eth2 is a 10/100-eth. I checked the 8540ADS's hardware message , it's use 88E1011 PHY not 88E PHY . And I checked the kernel code driver/net/gianfar_phy.c it takes 88E1011 and 88E as same PHY , so I think this is not a hardware problem, and my board work well with a 2.4.18 DEMO kernel. Here is the output message of 2.6.13-rc3 kernel: PuffLinux:root$ifconfig eth0 192.168.1.77 eth0: PHY is Generic MII () If the PHY config is correct it will recognize my PHY ID, but here is a wrong ID number . Please help me solve this problem! Thanks a lot! KylongMu
help: FCC_ENET OF MPC8250?
On Wed, 13 Jul 2005 10:42:52 +0800 (CST) gqbenjamin at 21cn.com wrote: Hi, I use a device, like SMARTBITS, to test the Ethernet rate of mpc8250. The kernel is linux-2.4.20 with CONFIG_FCC_LXT971 and CONFIG_USE_MDIO, and do 'cat 1/proc/sys/net/ipv4/ip_forward'. If the rate of sending IP packet been set too high, for example 100 Mbps Full Duplex and each packet is 1514 Bytes. Later, the kernel print '... Memory squeeze, dropping packet' on uart. Stop sending IP packet and do 'cat /proc/meminfo', the *MemFree* become small. Try again, the *MemFree* become smaller, just look like some allocated memory (skbuf) do not be free. Final, the kernel break down, because all memory have been used. It sounds to me like the problem may be that fcc_enet_rx() is consuming all the memory. This function is called in interrupt context and spins round the rx buffer descriptor ring until it finds an empty buffer descriptor. There is no check to stop it going round more than once and each time it finds a BD it does a dev_alloc_skb(). It is possible that you are receiving data at a high enough rate that fcc_enet_rx() never exits. What is more likely is that there isn't enough time between rx interrupts for the CPU to tx all the queued packets. Q. How can I do to let kernel do not break down? Is it a kernel promblem? This is just a guess, but... it may help to move fcc_enet_rx() from the interrupt handler to a bottom half. If you do this you should also ensure that it cannot process the rx buffer descriptor ring more than once per call. This may give the CPU *more* chance to tx queued packets by lowering the rx priority a little. I don't know if this would work but I'd be interested to find out. Alex
Porting Linux On MPC8266 custom board
Apoorv, You need to look in two places: 1. linux/init/main.c (which contains the following code #endif #ifdef CONFIG_MTD { mtdblock, 0x1f00 }, #endif { NULL, 0 } }; ) and 2. http://www.denx.de/twiki/bin/view/DULG/LinuxKernelArgs It looks to me that you're trying to use an mtdblock device for your root filesystem. For this to work you need CONFIG_MTD defined and - obviously - a root file system image in the appropriate place in your flash. It also appears that you are losing output shortly after the ttyS0 drivers are created. Maybe the problem is that your serial console program (e.g. minicom) is not configured for 11520 .. or for some reason the driver is selecting another rate. Strangely, on my 82xx board I don't need the console argument on the kernel command line, it just automatically uses ttyS0 at 9600. Probably this is because it detects u-boot is also using this, but I don't know. Alex On Thu, 7 Jul 2005 09:48:53 +0530 apoorv sangal apoorvsangal at gmail.com wrote: Hi All, I am porting Linux on MPC8266 custom board, after getting in to Linux the system seems to be struck at a point. Saved Environment variable:- bootargs console=ttyS0,11520 root=1f00 and downloaded the Kernel image at address 0x0200 in the RAM. From the u-boot prompt the bootm command is invoked as:- bootm 0x0200 After that what I get on the terminal is pasted below for your reference. I couldn't make out any thing from the output, can any body tell me where I am doing wrong, and also I don't have any idea about the bootargs argument root. Can any body give the precise description of this argument? = bootm 0200 ## Booting image at 0200... Image Name: 2.4.24 MPC8260ADS Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size:725838 Bytes = 708.8 kB Load Address: Entry Point: Verifying Checksum ... OK Uncompressing Kernel Image ... OK Memory BAT mapping: BAT2=128Mb, BAT3=0Mb, residual: 0Mb Linux version 2.4.24-pre2 (root at pmcserver) (gcc version 3.3.4) #2 Tue Jul 5 15:05:10 IST 2005 On node 0 totalpages: 32768 zone(0): 32768 pages. zone(1): 0 pages. zone(2): 0 pages. Kernel command line: console=ttyS0,115200 root=1f00 Warning: real time clock seems stuck! Calibrating delay loop... 131.89 BogoMIPS Memory: 127812k available (1232k kernel code, 412k data, 64k init, 0k highmem) Dentry cache hash table entries: 16384 (order: 5, 131072 bytes) Inode cache hash table entries: 8192 (order: 4, 65536 bytes) Mount cache hash table entries: 512 (order: 0, 4096 bytes) Buffer cache hash table entries: 8192 (order: 3, 32768 bytes) Page-cache hash table entries: 32768 (order: 5, 131072 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket Starting kswapd JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB. i2c-core.o: i2c core module version 2.6.1 (20010830) i2c-dev.o: i2c /dev entries driver module version 2.6.1 (20010830) CPM UART driver version 0.01 ttyS0 on SMC1 at 0x, BRG7 ttyS1 on SMC2 at 0x0040, BRG8 ttyS2 on SCC1 at 0x8000, BRG1 ttyS3 on SCC2 at 0x8100, BRG2 pty: 256 Unix98 ptys configured Waiting eagerly, Regards, VB ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
mpc823 scc2 as eth0, nfs slow with linuxppc-2.4.25, but ok with linuxppc-2.4.4, why?
Your .config has probably changed when you upgraded your kernel. It may be that you've lost NFS v3 support and it's falling back on v1 support. Check you have v3 configured. You need CONFIG_NFS_FS=y CONFIG_NFS_V3=y CONFIG_ROOT_NFS=y Alex On Tue, 5 Jul 2005 18:09:07 +0800 debora deboralh at fel.com.cn wrote: Hello All, My board uses a MPC823 and SCC2 as its ethernet interface. display nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK when boot with linux-2.4.25, but ok with linux-2.4.4 Below is what it looks like when booting. boot with linux-2.4.25: eth0: CPM ENET Version 0.2 on SCC2, 42:dd:0c:46:e8:b8 RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 2048 bind 4096) IP-Config: Complete: device=eth0, addr=192.168.0.182, mask=255.255.255.0, gw=192.168.0.1, host=192.168.0.182, domain=, nis-domain=(none), bootserver=192.168.0.82, rootserver=192.168.0.82, rootpath= NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. Looking up port of RPC 13/2 on 192.168.0.82 Looking up port of RPC 15/1 on 192.168.0.82 VFS: Mounted root (nfs filesystem). Freeing unused kernel memory: 52k init nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK nfs: server 192.168.0.82 OK Welcome to Sinovee Linux 2.0 (Overlord) Press 'I' to enter interactive startup. Mounting proc filesystem: nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK [ OK ] Configuring kernel parameters: [ OK ] Setting clock (utc): Wed Jun 22 17:36:00 CST 2005 [ OK ] Activating swap partitions: [ OK ] Setting hostname 192.168.0.182: [ OK ] Starting watchdog: [OK] Watchdog daemon ver 0.1, (c) 2002, FEL co. ltd. watchdog: No such device INIT: Entering runlevel: 3 Entering non-interactive startup Starting xinetd: nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK [ OK ] Sinovee Linux 2.0 (Overlord) Kernel 2.4.4 on an MPC8xx 192 login: root nfs: server 192.168.0.82 not responding, still trying nfs: server 192.168.0.82 OK sh-2.04# sh-2.04# boot with linux-2.4.4: NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. Kernel command line: root=/dev/nfs rw console=ttyS0,19200 nfsroot=192.168.0.82:/ prj/sc8xx/root ip=192.168.0.182:192.168.0.82:192.168.0.1:255.255.255.0::eth0:off Decrementer Frequency: 4687500 Calibrating delay loop... 74.75 BogoMIPS Memory: 30744k available (1004k kernel code, 376k data, 48k init, 0k highmem) Dentry-cache hash table entries: 4096 (order: 3, 32768 bytes) Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 8192 (order: 3, 32768 bytes) Inode-cache hash table entries: 2048 (order: 2, 16384 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Starting kswapd v1.8 CPM UART driver version 0.03 ttyS0 on SMC1 at 0x0280, BRG1 ttyS1 on SMC2 at 0x0380, BRG2 pty: 256 Unix98 ptys configured WDT_8xx: SWT not enabled by firmware, SYPCR=0xff88 block: queued sectors max/low 20357kB/6785kB, 64 slots per queue RAMDISK driver initialized: 16 RAM disks of 6144K size 1024 blocksize eth0: CPM ENET Version 0.21 on SCC2, 42:dd:0c:46:e8:b8 loop: loaded (max 8 devices) Using configured DiskOnChip probe address 0x8000 DiskOnChip 2000 found at address 0x8000 Flash chip found: Manufacturer ID: 98, Chip ID: 75 (Toshiba TC58256FT/DC) 1 flash chips found. Total DiskOnChip size: 32 MiB NFTL driver: nftlcore.c $Revision: 1.83 $, nftlmount.c $Revision: 1.23 $ Cannot calculate an NFTL geometry to match size of 0xf760. Using C:989 H:16 S:4 (== 0xf740 sects) Partition check: nftla: nftla1 NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 2048 bind 2048) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. Looking up port of RPC 13/2 on 192.168.0.82 Looking up port of RPC 15/2 on 192.168.0.82 VFS: Mounted root (nfs filesystem). Freeing unused kernel memory: 48k init INIT: version 2.78 booting Welcome to Sinovee Linux 2.0 (Overlord) Press 'I' to enter interactive startup. Mounting proc filesystem: [ OK ] Configuring kernel parameters: [ OK ] Setting clock (utc): Fri Jun 24 02:00:28 CST 2005 [ OK ] Activating swap partitions: [ OK ] Setting hostname 192.168.0.182: [ OK ] Starting watchdog: Watchdog daemon ver 0.1, (c) 2002, FEL co. ltd. watchdog: No such device [OK] INIT:
eth0 autonegotation 8260
We are using a 8260 processor with ELDK 3.1.1, kernel 2.4.25 patched with lck1. We have configured the kernel with USE_MDIO and LXT971. The problem we face is that the boot process stops after displaying the configuration of the card: eth0: config: autonegotiation on, 100FDX,... and after the board seems to freeze. Can anybody provide some feedback on how to check what can be misconfigured or where to look for the error??? Check that the interrupt from the LXT971 is configured correctly. The code is probably waiting for this interrupt to tell it that negotiation is complete On a similar note... I've noticed that the fcc_enet driver does not appear to detect when the link goes down, or re-autonegotiate when it comes back up. I wonder if anybody has a fix for this? PS I too am using the ELDK 3.1.1 linux-2.4.25 kernel, but with a PM828 devel board.
eth0 autonegotation 8260
On a similar note... I've noticed that the fcc_enet driver does not appear to detect when the link goes down, or re-autonegotiate when it comes back up. I wonder if anybody has a fix for this? PS I too am using the ELDK 3.1.1 linux-2.4.25 kernel, but with a PM828 devel board. Sorry all, I think I've spotted the problem now. From fcc_enet.c: /* Some boards don't have the MDIRQ line connected (PM826 is such a board) */ Alex
Announcing mpc8260sar.sourceforge.net
Hi all, This email is to announce a new project on sourceforge.net Homepage: http://mpc8260sar.sourceforge.net Summary:an ATM driver for the PowerQUICCII Notes: This driver was based on code taken from http://atm8260.sourceforge.net which is a port of my orignal PQI driver - http://mpc860sar.sourceforge.net - to the PQII. The driver is presented in the form of a patch against Denx's linuxppc_2_4_devel tree. Currently the only supported platforms are the PM826/PM828 miriac power modules with CR826 carrier. However, I've added a framework which I hope will allow for support of other platforms in the future. I chose to create a new project rather than attempt to join the old atm8260 project. I did this because I felt that the changes I made to the code were large enough to warrant a new project rather than sending a patch to the old one. I also found that the code in atm8260 CVS seemed to have a lot missing and wouldn't compile. Anyway, having said this, I found that project enormously helpful and I hope that I do not offend anybody by starting a new project. Please see the site for a list of features added. Alex
MPC885 interruptions : help !
Pins on the 8xx are highly configurable. I recommend that you check that the pin has not been configured for another function. For example on the 862 the SIU_IRQ7 pin doubles as the MII tx clock. Alex On Wed, 15 Jun 2005 10:35:41 +0200 scarayol at assystembrime.com wrote: Hi all, I wrote a module driver to manage interruptions. I have an interruption on MPC885 IRQ7 activated by a push button that provides a negative pulse of 200 ns width. When the device is open, i call request_irq() to install the interrupt handler: int ret = request_irq(SIU_IRQ7, fpgadriver_irq_save_handler, SA_INTERRUPT, FPGA_ID, NULL); void fpgadriver_irq_save_handler(int irq, void *dev_id, struct pt_regs *regs) { fpga_it_source=FPGA_IRQ_SAVE; printk( fpgadriver: fpgadriver_irq_save_handler for device \n); /* Prepare a task */ PREPARE_TQUEUE(fpgadriver_bh_task, fpgadriver_bh_handler, dev_id); /* Add a task to the immediate bottom half and mark it for schedule */ queue_task(fpgadriver_bh_task, tq_immediate); mark_bh(IMMEDIATE_BH); } my read() is like that : static ssize_t fpgadriver_read(struct file *file, char *buf, size_t count, loff_t *ppos) { //mise a jour de l'indicateur d'etat d'endormissement wakeups++; interruptible_sleep_on(readq); buf[0]=fpga_it_source; printk(fpgadriver_read \n); return 0; } I have the wake_up_interruptible(reaq) in fpgadriver_bh_handler(). My problem is that fpgadriver_irq_save_handler() is never called as if there is no interruption. Is there something else to modify to validate the interruption ? Is SIU_IRQ7 the right value for my interruption ? What have i to check ? Thanks for your reply. Sophie CARAYOL ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Anyone got drivers/mtd/maps/pm828.c?
Hi Clemens, Thanks for your help. I've done it now (see attached). The partitioning is specific to our application but it is easily modified. I noticed a buggette in the mtd code while doing this. If you build everything as a module then the sub-module loading doesn't work properly. For example in gen_probe.c it says #ifdef CONFIG_MTD_CFI_INTELEXT case 0x0001: case 0x0003: return cfi_cmdset_0001(map, primary); #endif where it should really say #if defined(CONFIG_MTD_CFI_INTELEXT) || defined(CONFIG_MTD_CFI_INTELEXT_MODULE) case 0x0001: case 0x0003: return cfi_cmdset_0001(map, primary); #endif There are several problems like this. In the end I gave up and just built everything except the actual mapping driver as kernel resident. Alex On Wed, 15 Jun 2005 15:18:37 +0200 Clemens Koller clemens.koller at anagramm.de wrote: Hi, Alex! Hmm, I don't know the PM828 much in detail, but have you tried the generic physmap driver which is in the kernel? Just give it the base address and the size, and it should probe the cfi and you are done (well, it was working fine for me on my PM854). Of course, you need to make sure, that your hardware / memory mapping is initialized properly (which happens usually in the boot loader). If it's not, let me know and I can give you some code to mess around with the registers in a kernel module. Best greets, Clemens Koller ___ RD Imaging Devices Anagramm GmbH Rupert-Mayer-Str. 45/1 81379 Muenchen Germany http://www.anagramm.de Phone: +49-89-741518-50 Fax: +49-89-741518-19 Alex Zeffertt wrote: Hi there, I need to get flash partitions working on my PM828 development board. Has anybody already written a pm828.c? If so I'd appreciate a look at it. TIA, Alex ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- next part -- A non-text attachment was scrubbed... Name: pm828-icu.c.gz Type: application/x-gzip Size: 2480 bytes Desc: not available Url : http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050615/e2c5eea3/attachment.bin
Anyone got drivers/mtd/maps/pm828.c?
Hi there, I need to get flash partitions working on my PM828 development board. Has anybody already written a pm828.c? If so I'd appreciate a look at it. TIA, Alex
consistent_alloc() on 82xx
Hi Dan, You need to be more clear with your terms. Only the 60x core uses the cache. The CPM is a DMA device that can utilize cache coherency protocols if you enable that with the GBL flags. Ah, I see. If the CPM DMA is configured to snoop the cache then that doesn't mean it uses the cache - it just tells the cache when data needs to flush - namely before DMA writes. I have seen this causing problems. When I map a VPI/VCI to a connection table using the address compression table, Where are you placing the VP-level and VC-level tables? I assume you are properly configuring the GMODE to indicate their locations? Does it work properly if the tables are in DP RAM? I've got the VP-level tables in DPRAM (as recommended by the UM) and the VC-level tables in external memory (as required by UM). The EVPT bit in GMODE is cleared to indicate VP tables in DPRAM. The first few cells received after writing the mapping are definitely going to the raw cell queue. This doesn't happen if I flush the cache line following core writes to the VC-level table. This suggests to me that the CPM DMA is not employing the cache coherency protocol when accessing the address compression tables. This is not a surprise since the UM only claims to be able to do snooping for buffers, BDs, and interrupt tables. With external connection tables the problem is more severe. There are some very subtle assumptions made by the ATM controller regarding all channel data structures. There aren't configuration location flags for every level of table, and assumptions are made that tables for a connection are either internal or external. Be careful with that. I either entirely use DP RAM for everything or external memory for everything, which seemed to work for me in the past. Maybe I was just lucky :-) The UM definitely claims you can have a mixture of internal channels and external channels. If you want a lot of simultaneous channels open you are forced to use both since the number of internal channels is limited by (a) the amount of DPRAM available, and (b) the design limit of 256. During frame transmission, the core is constantly having to read and write to the Transmit Connection Table in order to use Auto-VC-ofF. I couldn't get this to work until I added lots of invalidate_dcache_range andflush_dcache_range calls. Are you sure this is really a cache problem and not a race condition with CPM access to the CTs? The CPM does atomic burst read/write of the RCT/TCT entries, and buy doing cache flush operations, the 60x core does the same. Well it looks to me that for address compression tables and external connection tables the CPM DMA is not employing it's cache coherency mechanisms. This mechanism probably just boils down to the CPM saying to the cache I want to write to ptr, please flush any pending writes then invalidate the line. By adding calls to flush/invalidate_dcache_range in my code I am doing the cache coherency mechanism in software instead. It would be a lot easier though if I could just allocate uncached memory Thanks for your help, Alex
consistent_alloc() on 82xx
On Thu, 09 Jun 2005 09:15:17 +0300 Pantelis Antoniou panto at intracom.gr wrote: Dan Malek wrote: On Jun 8, 2005, at 5:29 AM, Alex Zeffertt wrote: Does anybody know why it isn't built for 6xx cores? Because 6xx cores are cache coherent and there shouldn't be any need for uncached memory regions. I'm working on the ATM driver and it seems that certain external memory areas accessed by the PQII CPM by-pass the cache. That's news to me, and I've written lots of CPM drivers, including ATM. Do you have a specific example? I may also need consistent_alloc for some testing reasons Dan. :) Thanks. -- Dan If I build arch/ppc/mm/cachemap.c will it work for 82xx? Any reason not to? Hi Pantelis, I tried this in an attempt to work around my problem of the CPM bypassing the cache but it didn't work for me Alex
Missing m8260_cpm_dpfree()
Hi, A while ago I posted a patch which added the m8260_cpm_dpfree() function. I've just noticed a bug in this which is fixed in the attached patch. Alex On Wed, 18 May 2005 10:28:14 +0100 Alex Zeffertt ajz at cambridgebroadband.com wrote: Hi, I'm replying to my own message. I've got around to porting the 8xx version of ...cpm_dpfree() to the 8260 now. I've attached the patch on the off chance anyone else might want it. The patch is against the 2005-03-06 version of denx's linuxppc_2_4_devel, which is a 2.4.25 kernel. Alex On Mon, 16 May 2005 16:15:03 +0100 Alex Zeffertt ajz at cambridgebroadband.com wrote: Hi all, I have a question about the MPC8260 dual port RAM allocation routines. In arch/ppc/8260_io/commproc.c this is a m8260_cpm_dpalloc() routine, but the m8260_cpm_dpfree() routine is missing. Does anybody know where I can find this? I am using denx's linuxppc_2_4_devel tree from 2005-03-06. TIA, Alex -- next part -- A non-text attachment was scrubbed... Name: linux-m8260_cpm_dpfree.patch-2 Type: application/octet-stream Size: 7423 bytes Desc: not available Url : http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050602/3e21fb9a/attachment.obj
How to allocate uncached memory on 82xx?
Hi all, Can anybody tell me how to make uncached a region of memory on the PowerQUICCII (MPC8280). The region is allocated with kmalloc(size,GFP_KERNEL | GFP_DMA); TIA, Alex
depmod.pl fails with base directory does not match (2_4_devel)
Use something like the following: make INSTALL_MOD_PATH=/opt/eldk/ppc_6xx modules_install Where /opt/eldk/ppc_6xx should be replaced with the base of your target root filesystem. Alex On Wed, 25 May 2005 13:59:08 +0200 (MEST) Peter Gehirnforce Gehirnmann at gmx.de wrote: Hi all, since now I used modules compiled into the kernel for ppc_6xx. for debugging I'd like to use dynamic loading, but when doing: make modules_install the depmod.pl fails with base directory does not match /lib/modules As far as I could find out, the modules get copied to the base /lib path, even with $PATH and $CROSS_COMPILE set correctly (I used compiled modules successfully). Whats wrong with my attempt? is there some cross-compile tool to do the job of depmod.pl? GM -- 5 GB Mailbox, 50 FreeSMS http://www.gmx.net/de/go/promail +++ GMX - die erste Adresse f_r Mail, Message, More +++ ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
[Linux-ATM-General] Memory mapping the PHY on CR826
Hi Koen, Well spotted! Unfortunately this is not the problem. I got the base address and mask the wrong way round in my email but they are the right way round in my code. Oops. I tried your OR8 settings but they didn't work either. I think there may be a problem with the addressing on the CR826 board as the PM5350 address line 0 doesn't seem to go anywhere on the schematics! Alex On Mon, 23 May 2005 22:43:29 +0200 Koen Peeters atm at cellink.net wrote: Hi Alex, I have got the Microsys board but I believe you sort of mixed up the 2 registers : try : memctl-memc_br8 = 0xe0400821; // base 0xe040; default timings; // bank valid; 8bit port; GPCM local; memctl-memc_or8 = 0x8820; // min banksize; addressline config Please verify the or8 setting with the actual board configuration. Alex Zeffertt wrote: Hi all, Does anyone here have *any* code for memory mapping the PM5350 ATM phy on the Microsys CR826 board? I've just purchased this board from Microsys and I'm trying to get the atm8260 ATM device driver to work on it - unfortunately I cannot seem to memory map the phy. My current settings are: memctl-memc_or8 = 0xe0400ef4; // base 0xe040; default timings memctl-memc_br8 = 0x8821; // min banksize; 8bit port; GPCM local; // bank valid Has anybody done this already? TIA, Alex --- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_id=7412alloc_id=16344op=click ___ Linux-atm-general mailing list Linux-atm-general at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-atm-general -- - Koen Peeters Cellink bvba Catherinalaan 37, 3110 Rotselaar, Belgium web : http://www.cellink.net/ --- This SF.Net email is sponsored by Oracle Space Sweepstakes Want to be the first software developer in space? Enter now for the Oracle Space Sweepstakes! http://ads.osdn.com/?ad_id=7412alloc_id=16344op=click ___ Linux-atm-general mailing list Linux-atm-general at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-atm-general
Memory mapping the PHY on CR826
Hi all, Does anyone here have *any* code for memory mapping the PM5350 ATM phy on the Microsys CR826 board? I've just purchased this board from Microsys and I'm trying to get the atm8260 ATM device driver to work on it - unfortunately I cannot seem to memory map the phy. My current settings are: memctl-memc_or8 = 0xe0400ef4; // base 0xe040; default timings memctl-memc_br8 = 0x8821; // min banksize; 8bit port; GPCM local; // bank valid Has anybody done this already? TIA, Alex
regarding kernel for montavista
You haven't said a lot of things. 1. What board are you using (and how did you create .config) 2. What was the last thing the kernel said (i.e. where did it crash) 3. Did it oops? If so where did the oops say it crashed (read man ksymoops; generate output; post it to the list) Alex On Fri, 20 May 2005 09:55:57 +0530 Gopala Krishnam Raju graju at facetime.com wrote: hello 1. I have compiled the montavista kernel 2. I have done made the make dep 3. I have done make install 4. I have done makeinitrd-pxe also Every thing went well but when i boot this on the target it is giving the kernel panic error. I tried with enforcing=0 also then also the problem is not solved. please help me out Thanks in advance Regards GGKRAJU ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
regarding kernel for montavista
presently i am using x86 board. Then you won't get much help from a linuxPPC (PowerPC) mailing list.
Missing m8260_cpm_dpfree()
Hi, I'm replying to my own message. I've got around to porting the 8xx version of ...cpm_dpfree() to the 8260 now. I've attached the patch on the off chance anyone else might want it. The patch is against the 2005-03-06 version of denx's linuxppc_2_4_devel, which is a 2.4.25 kernel. Alex On Mon, 16 May 2005 16:15:03 +0100 Alex Zeffertt ajz at cambridgebroadband.com wrote: Hi all, I have a question about the MPC8260 dual port RAM allocation routines. In arch/ppc/8260_io/commproc.c this is a m8260_cpm_dpalloc() routine, but the m8260_cpm_dpfree() routine is missing. Does anybody know where I can find this? I am using denx's linuxppc_2_4_devel tree from 2005-03-06. TIA, Alex -- next part -- A non-text attachment was scrubbed... Name: linux-m8260_cpm_dpfree.patch Type: application/octet-stream Size: 8053 bytes Desc: not available Url : http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20050518/2bef96a7/attachment.obj
Missing m8260_cpm_dpfree()
Hi all, I have a question about the MPC8260 dual port RAM allocation routines. In arch/ppc/8260_io/commproc.c this is a m8260_cpm_dpalloc() routine, but the m8260_cpm_dpfree() routine is missing. Does anybody know where I can find this? I am using denx's linuxppc_2_4_devel tree from 2005-03-06. TIA, Alex
2.4.18: CPM1 stops when initializing ATM/UTOPIA.
It may be that you're getting a conflict in SCC usage. Make sure you have CONFIG_SERIAL_ATM undefined. But if you really need it make sure CONFIG_SERIAL_ATM_SCC is not used by anything else. You may also want to disable CONFIG_PTP_SWITCHING if you don't need it. Finally you probably want CONFIG_PHY_OTHER instead of CONFIG_PHY_SUNI_155 or CONFIG_PHY_ATM_25. These latter options make assumptions about the memory mapping of your phy. Note: a long while ago we had problems with PTP switching causing hangs but this was fixed by a ucode patch from motorola. If you really need PTP switching you should get this. Alex On Fri, 06 May 2005 20:41:53 +0200 Theo Gjaltema gjalt007 at chello.nl wrote: Hi, Last week I was trying to integrate the atm/utopia driver (sourceforce) into a 2.4.18 kernel build for a 862, but mij attemtps failed. It appeared that wen on the first location of the SCC4 (now used for utopia) a buffer address is written, most CPM activities are halted, including the SCM1 which I used as console port. The console driver did write in the allocated buffer descriptors, but the tranmission of the data was never acknowledged, thus hanging the kernel. Anyone an idea what happened? Theo. ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
ATM driver for 8260 (linux 2.4.x) working!
Hi, I would be interested in any patch you may have. Please could you let me know which release the patch is against. Thanks On Thu, 05 May 2005 11:19:48 +0200 Theo Gjaltema gjalt007 at chello.nl wrote: We once did a port of a ATM driver on the 8260 for a linux 2.2.20 kernel. For this, we patched a pre-release of the driver build by ? If interested, I could send you our results. Greetings, Theo. ___ Linuxppc-embedded mailing list Linuxppc-embedded at ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
Port to port switching on the MPC8260 ATM SAR
Hi all, Aparently the MPC8260 CPM can do port to port switching (PTP). Has anybody got this working? I've looked at atm8260.sourceforge.net and there's a userspace program mpc8260_user.c which appears to allow creation of PTP connections, but the support in the device driver appears to be missing. I would be very gratefull for any help, Alex Zeffertt
PPC Linux painic problem!
On Mon, 2004-04-26 at 08:20, Marius Groeger wrote: Jeffy, On Mon, 26 Apr 2004, jeffy wrote: Hi all, I hit on a problem about PPC Linux version 2.4.4 on a MPC855T board. The kernel can start up ok normally, but when another PC continous sending UDP packets to it(about 8Mbps) when kernel is starting up, the kernel failed start up and printf the following messages: This is just a VERY wild guess: check the driver source (arch/ppc/8xx_io/fec.c in your case) and make sure the driver only forwards received packets to the IP stack when the interface is configured UP. There once was a similar problem with the 826x driver. Another reason could be that the FEC channel is not properly shut down by the firmware/bootloader before entering the kernel. Next time try to add more information about your system, especially about the kernel and bootloader version you are using. Regards, Marius Hi all, I think Marius' wild guess is correct! Until 5 minutes ago I had the same problem as Jeffy. My fix is to disable rx interrupts until fec_enet_open() is called. See the patch below. Thanks Marius. BTW, the patch may not apply because of other changes to fec.c, so here's a description: 1st block: add int allow_rx to fec_enet_private struct 2nd block: set allow_rx in fec_enet_open() 3rd block: unset allow_rx in fec_enet_stop() 4th block: in fec_restart() only set IMASK[RXF] if allow_rx set Alex === RCS file: /newcvs/ppc-linux/kernel/arch/ppc/8xx_io/fec.c,v retrieving revision 1.41 diff -u -r1.41 fec.c --- fec.c 22 Apr 2004 13:32:01 - 1.41 +++ fec.c 26 Apr 2004 10:34:28 - @@ -220,6 +220,7 @@ struct net_device_stats stats; uinttx_full; spinlock_t lock; +int allow_rx; #ifdef CONFIG_USE_MDIO uintphy_id; @@ -1932,6 +1933,7 @@ { struct fec_enet_private *fep = dev-priv; +fep-allow_rx = 1; /* I should reset the ring buffers here, but I don't yet know * a simple way to do that. */ @@ -1971,11 +1973,12 @@ static int fec_enet_close(struct net_device *dev) { + struct fec_enet_private *fep = dev-priv; /* Don't know what to do yet. */ netif_stop_queue(dev); fec_stop(dev); - +fep-allow_rx = 0; return 0; } @@ -2661,7 +2664,7 @@ /* Enable interrupts we wish to service. */ - fecp-fec_imask = ( FEC_ENET_TXF | FEC_ENET_RXF | FEC_ENET_MII ); + fecp-fec_imask = ( FEC_ENET_TXF | ((fep-allow_rx)?FEC_ENET_RXF:0) | FEC_ENET_MII ); /* And last, enable the transmit and receive processing. */ ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
[Linux-ATM-General] Announcement: MPHY now supported inmpc860sar
Zoran I wouldn't imagine that the patch would apply to the mpc8260 driver and work. However, it would probably be useful to look at it for pointers if you were thinking of porting MPHY support to the mpc8260. BTW, to get the patch try cvs -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/mpc860sar checkout -A atm # Top of tree is now MPHY cd atm cvs -d:pserver:anonymous at cvs.sourceforge.net:/cvsroot/mpc860sar diff -u -r single-utopia-phy # compare with SPHY branch Alex On Thu, 2004-02-05 at 12:54, Zoran Stojsavljevic wrote: Quick question to you all... I walked through Pete's 8260 ATM driver, and I saw (as far as I can understand) that Pete's driver is set to support single PHY mode. So, the question here is: do we need Rodolfo Giometti's patch to be applied to mpc8260 ATM driver? It is obvious that different set-up should be applied for mpc8260 ATM driver MPHY mode anyway... Thank you for answers in advance. Regards, Zoran Stojsavljevic DKTS Pupin Telecom - Original Message - From: Gilad Rom gilad at romat.com To: Alex Zeffertt ajz at cambridgebroadband.com Cc: linux-atm-general at lists.sourceforge.net; linuxppc-embedded at lists.linuxppc.org Sent: Monday, January 26, 2004 3:03 PM Subject: Re: [Linux-ATM-General] Announcement: MPHY now supported inmpc860sar Okay. Thanks. And now for my next question - Do you think the driver should run on the 82xx family of chips? (e.g. 8260 and the likes) these guys have 2 Utopia-II ports with support for up to 31 devices per port. Coupled with this software, it could make for a highly efficient DSLAM. Gilad. - Original Message - From: Alex Zeffertt ajz at cambridgebroadband.com To: Gilad Rom gilad at romat.com Cc: linux-atm-general at lists.sourceforge.net; linuxppc-embedded at lists.linuxppc.org Sent: Monday, January 26, 2004 3:59 PM Subject: Re: [Linux-ATM-General] Announcement: MPHY now supported inmpc860sar It is currently only supported in SAR mode, and in that mode there is an upper limit of 4 UTOPIA phys. However, there's no reason that support can't be added for MPHY in ESAR mode - in which the limit is 31 phys. I suspect that adding such support would be easier now that Rodolfo has done most of the work. Alex PS I'm not the expert on this. Rodolfo's sourceforge username is zaigor. On Mon, 2004-01-26 at 13:51, Gilad Rom wrote: This is very exciting news! (well, for me it is) How many PHY's in parallel are we talking about here? Thanks, Gilad. - Original Message - From: Alex Zeffertt ajz at cambridgebroadband.com To: linux-atm-general at lists.sourceforge.net; linuxppc-embedded at lists.linuxppc.org Sent: Monday, January 26, 2004 1:41 PM Subject: [Linux-ATM-General] Announcement: MPHY now supported in mpc860sar Just a quick note to say that multi-phy is now supported by the mpc860sar ATM driver, thanks to a patch by Rodolfo Giometti. Page: http://sourceforge.net/projects/mpc860sar/ Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Is there any way for user space program to get IRQ from kernel space?
Hi, I am sure that user space program can't install ISR or get IRQ from hardware directly. I'd like to know there is any way a user space program to get waked up by a specific hardware IRQ. Create a character device which implements the poll() method,, and use select() in userspace. Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Announcement: MPHY now supported in mpc860sar
Just a quick note to say that multi-phy is now supported by the mpc860sar ATM driver, thanks to a patch by Rodolfo Giometti. Page: http://sourceforge.net/projects/mpc860sar/ Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
[Linux-ATM-General] Announcement: MPHY now supported in mpc860sar
It is currently only supported in SAR mode, and in that mode there is an upper limit of 4 UTOPIA phys. However, there's no reason that support can't be added for MPHY in ESAR mode - in which the limit is 31 phys. I suspect that adding such support would be easier now that Rodolfo has done most of the work. Alex PS I'm not the expert on this. Rodolfo's sourceforge username is zaigor. On Mon, 2004-01-26 at 13:51, Gilad Rom wrote: This is very exciting news! (well, for me it is) How many PHY's in parallel are we talking about here? Thanks, Gilad. - Original Message - From: Alex Zeffertt ajz at cambridgebroadband.com To: linux-atm-general at lists.sourceforge.net; linuxppc-embedded at lists.linuxppc.org Sent: Monday, January 26, 2004 1:41 PM Subject: [Linux-ATM-General] Announcement: MPHY now supported in mpc860sar Just a quick note to say that multi-phy is now supported by the mpc860sar ATM driver, thanks to a patch by Rodolfo Giometti. Page: http://sourceforge.net/projects/mpc860sar/ Alex --- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn ___ Linux-atm-general mailing list Linux-atm-general at lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-atm-general ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
chip select initialization - mbx860
On Tue, 2003-11-11 at 15:35, Amit.Lubovsky at infineon.com wrote: Hi, I try to set up the qspan bridge on the mbx860 board and from my understanding I have to initialize chip select 2 to an address that will be used later by the cpu. Any idea how this should be done ? I use kernel 2.4 from www.denx.de Thanks, Amit. Amit, Here's some example code. At the end reg is a pointer containing a kernel virtual address, and it points at 0x100 bytes starting at physical address PHYSADDR. You will need to choose a PHYSADDR, and modify the OR2 and BR2 settings (these registers are covered in the MPC860UM.) Alex // Get a usable virtual address corresponding to PHYSADDR if ((result = check_mem_region(PHYSADDR,0x100))) { printk(KERN_ERR Error: memory already in use\n); return result; } request_mem_region(PHYSADDR,0x100,__FUNCTION__); // These are very relaxed timings - but who cares ;-| immap-im_memctl.memc_or2 = 0xff000ff4; barrier(); immap-im_memctl.memc_br2 = PHYSADDR | 0x0401; barrier(); if ((regs = ioremap_nocache(PHYSADDR,0x100)) == NULL) { printk(KERN_ERR Error: ioremap failed\n); return -EFAULT; } ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
MPC860 - interfacing SCC to PCM bus
Hi all, I need to write a character driver for the 860 which relays data between userland and a PCM channel. I *think* I need to connect the PCM bus to the TDMa pins and then put SCC in transparent mode - but I'm not sure. Has anyone done anything similar? And, if so, can I borrow their code? Thanks, Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
SMC2 synchronous driver for 8xx
Hi Dmytro, This is probably not very close to what you want, but If you want to see an example of how to configure the TSA, SIRAM, and the signals L1RSYNCx, and L1TSYNCx, you could have a look at the source for the tsa.o module on my site http://mpc860sar.sourceforge.net. This code sets up the serial interface to carry ATM traffic generated by SCC1. Although this is not what you want to do, the code may be helpful as an example for setting up the low level stuff. Alex On Wed, 2003-07-30 at 07:03, Dmytro Bablinyuk wrote: I have kernel 2.4.21 and MPC866ADS eval board. The sync should work through TSA using signals L1RSYNCx, L1TSYNCx etc. I've been suggested to use syncppp.c module in my kernel and hdlcppp.c which I could not find anywhere, the ftp://qslinux.org is not working. If this is right could somebody please email me a hdlcppp and give me a clue where to start. I will very much appreciate if anybody already done something similar to give me a clue where to look at, and I will very much appreciate any code, examples. Thank you very much for any help. ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
m8260_cpm_dpfree( )
Sanjay, 1. where can I get m8260_cpm_dpfree() function implementation ? You could try porting the dpfree function in arch/ppc/8xx_io/commproc.c. However, this function should only really be necessary if you wish to rmmod the driver. 2. For using the m8260_cpm_dpalloc(uint size, uint align) function I have included #include asm/cpm_8260.h and having CC_OPTION -D__KERNEL__ -DMODULE -DCONFIG_8260 in my Makefile. But when I tried to load this driver on motorola-mtx-ppc_7xx target it gives unresolved symbol for m8260_cpm_dpalloc(). I have kernel Monatavista 2.4.17 Anything I am missing in this case ? Try adding #ifdef CONFIG_8260 EXPORT_SYMBOL(m8260_cpm_dpalloc); #endif to arch/ppc/kernel/ppc_ksyms.c 3. I am including file #include asm/mpc8260.h for using define request_8xxirq.But I am not able to include this define. 4. I am including file asm/irq.h for using define SIU_INT_FCC1. But I am not able to include this define. Do I am missing something ? I have same CC_OPTION as mentioned above. Does anything matter with kernel version? Not sure about these problems, but it sounds like you are trying to build the module standalone, instead of as part of the kernel's make modules. I would recommend the latter as it makes it easier to pick up the correct gcc flags. Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
MPC850SAR with SPI support
Li, Why are you combining an SPI driver with an ATM driver? Shouldn't you create two separate drivers instead? Alex On Sun, 2003-06-29 at 17:31, li wrote: Hi all, I am implementing SPI interface with MPC850SAR and linux kernel 2.4.18. The following is what i have done: 1. set the SPI related registers 2. allocate the dpram and memory for SPI buffer descriptor and RX/TX buffer. 3. enable all possible interrupts for SPI After writing to SPI interface, i can get transmit interrupt from cpm, since SPI performs write and read simultaneously, the BD_SC for READ will be set with not EMPTY, but in fact it is not. And what i get in the SPI dev is not correct. ps: i select the I2C and SPI UCODE PATCH when making menuconfig. Any comment please go ahead! regards! Li ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
MPC860SAR question
Li, By default the driver uses the ESAR interface (and assumes the firmware supports it). All mpc860s support the original SAR interface. If you want to use this instead just uncomment the line #define GOT_ESAR in mpc860sar.c Alex On Wed, 2003-06-25 at 16:53, li wrote: Hi all, Does anybody know about if the mpc860sar has an Enhanced SAR? Regards! Li ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
RTAI module install problem
Hi, I use the depmod.pl perl script that comes with busybox to create modules.dep. This appears to be platform independent. You need to apply the patch below to your linux/Makefile (and then change the definition of DEPMOD to the path of your depmod.pl). Then you just run make -C linux INSTALL_MOD_PATH=path/to/target/root/fs modules_install on your build machine. This will create the path/to/target/root/fs/lib/modules tree which includes the modules.dep file. modprobe should then work on your target. Alex diff -u -r1.2 -r1.3 --- Makefile2003/04/30 12:35:27 1.2 +++ Makefile2003/05/08 14:32:44 1.3 @@ -38,7 +38,7 @@ OBJDUMP= $(CROSS_COMPILE)objdump MAKEFILES = $(TOPDIR)/.config GENKSYMS = /sbin/genksyms -DEPMOD = /sbin/depmod +DEPMOD = $(TOPDIR)/../ramdisk/busybox/scripts/depmod.pl MODFLAGS = -DMODULE CFLAGS_KERNEL = PERL = perl @@ -409,11 +409,11 @@ ifeq $(strip $(INSTALL_MOD_PATH)) depmod_opts:= else -depmod_opts:= -b $(INSTALL_MOD_PATH) -r +depmod_opts:= -b $(INSTALL_MOD_PATH)/lib/modules -k $(TOPDIR)/vmlinux $(INSTALL_MOD_PATH)/lib/modules/$(KERNELRELEASE)/modules.dep endif .PHONY: _modinst_post _modinst_post: _modinst_post_pcmcia - if [ -r System.map ]; then $(DEPMOD) -ae -F System.map $(depmod_opts) $(KERNELRELEASE); fi + if [ -r System.map ]; then $(DEPMOD) -F System.map $(depmod_opts); fi # Backwards compatibilty symlinks for people still using old versions # of pcmcia-cs with hard coded pathnames on insmod. Remove On Wed, 2003-05-14 at 10:07, wolfgang.grandegger at bluewin.ch wrote: Hi, the problem is that depmod is for x86 and it can therefore not handle PPC binaries. But the errors should not harm. On the target you may need to install the modules with insmod because module.dep is not correct. Typically, on an embedded target you link the drivers statically into the kernel. Hope it helps, Wolfgang. -- Original Message -- Subject: RTAI module install problem From: Toni Van Remortel t.vanremortel at ha.be Reply-To: t.vanremortel at ha.be To: linuxppc-embedded at lists.linuxppc.org Date: 14 May 2003 10:39:55 +0200 Hi all. I'll first tell you in short what I use. Kernel: linuxppc_2_4_devel (from CVS on may 7th 2003) RTAI Patch: ppc_devel_patch_2003_05_04_1125 Patch went perfect. Cross-compiler: ELDK ppc_4xx Target: EP405 Host: x86 INSTALL_MOD_PATH: /tmp/rmdisk_large Config and vmlinux-compile don't give errors, RTAI is enabled. Modules compile OK. When installing the modules, I get this error: cd /tmp/rmdisk_large/lib/modules/2.4.20-rthal5; \ mkdir -p pcmcia; \ find kernel -path '*/pcmcia/*' -name '*.o' | xargs -i -r ln -sf ../{} pcmcia if [ -r System.map ]; then /sbin/depmod -ae -F System.map -b /tmp/rmdisk_large -r 2.4.20-rthal5; fi depmod: ELF file /tmp/rmdisk_large/lib/modules/2.4.20-rthal5/kernel/drivers/i2c/i2c-core.o not for this architecture depmod: ELF file /tmp/rmdisk_large/lib/modules/2.4.20-rthal5/kernel/drivers/i2c/i2c-dev.o not for this architecture depmod: ELF file /tmp/rmdisk_large/lib/modules/2.4.20-rthal5/kernel/drivers/i2c/i2c-proc.o not for this architecture ... depmod: ELF file /tmp/rmdisk_large/lib/modules/2.4.20-rthal5/kernel/net/ipv4/netfilter/iptable_filter.o not for this architecture depmod: ELF file /tmp/rmdisk_large/lib/modules/2.4.20-rthal5/kernel/net/ipv4/netfilter/iptable_nat.o not for this architecture make: *** [_modinst_post] Error 1 OK, this tells me that I'm using a somewhat wrong architecture (probably wrong configured). Does anybody know how I can solve this? Thnx. -- Toni Van Remortel t.vanremortel at ha.be D-science lab ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
FEC on MPC862P freezes CPM
I don't understand what you mean by SCC1 is used for ethernet. You already said that you're using the FEC! Either use FEC for ethernet or use an SCC. You cannot use both - after all there's only one MII bus! Alex On Mon, 2003-05-12 at 18:45, Willy Jacobs wrote: We are using a MPC862P (XPC862PCZP80B, 2K26A silicon) in a system with UTOPIA (master) and FEC simultaneously in UTOPIA muxed bus mode. The processor runs at 50 MHz (CPM and bus). For references in the MPC862 Users' Manual, see figure 35-1 (page 35-4), table 41-6 (page 41-7), and figure 42-3 (page 42-7). The FEC MII signals are mapped on PCMCIA port A. For testing we are using Linux. The Linux console is mapped onto SCC3, and SCC1 is used for ethernet. Initialization for SCC3 is done first, followed by the initialization of the FEC (as described on paragraph 41.3 (page 41-8)): ECNTRL[FEC_PINMUX]=1; setup the buffer descriptors; UTMODE[SPLIT]=0, PDPAR[UT]=1; PDPAR[8]=1 (MDII_MDC). A printk to SCC3 in above situation will freeze the CPM in the transmit of the SCC3 buffers. More concrete it will never pass this while loop: while (bdp-cbd_sc BD_SC_READY) ; The UTIOPIA initialization will be done later. With PDPAR[UT]=0 SCC3 and UTOPIA works without any problem. Note that above CPM freeze problem also occurs using another RTOS (VRTX) and a similar use of SCCs, FEC, and UTOPIA. Is this problem known? Is there another initialization sequence needed? -- willy ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
MPC860SAR MPHY try!!!
On Wed, 2003-04-23 at 12:51, li wrote: Hi ajz, I have implemented the native ATM communication with MPC860SAR and ppclinux(kernel 2.4.4), Now i want to try multiple PHY support on MPC860SAR. I have two PHYs, PHYA only for transmit and PHYB only for receive. Err, MPHY means two BI-DIRECTIONAL PHYs! Why have different PHYs for rx and tx? Followed the MPC8xx_ATM doc, each PHY in multi-phy mode has a dedicated APC, that is i should allocate 2 APC parameter table for 2 PHYs and 2 APC table for 2 PHYs, is it right? Sounds right. You will really have to read the MPC862UM quite closely to implement MPHY since the APC layout is quite different. Another question: Is there any problem with dev_data-ectbase, i think it should be (dev_data-ectbase[NUM_INT_CONN_TABLES]); but your version is (dev_data-ectbase[-NUM_INT_CONN_TABLES]); No, there's no problem. Read the MPC862UM. the ectbase pointer takes into account the fact that the channel numbers start at 32. Regards! Li ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/
Can software discover MPC8xx variant?
Thank you everyone for your suggestions. It looks like I can't determine the 8xx variant from software in a reliable way. The idea about using pull up/pull down resistors is a good one - but the boards have already been manufactured, so I am not in the position to be able to hard-wire the information in this way. The reason I want to know the 8xx variant, however, is to optimise s/w for the performance of the chip. So, I guess I can get away with just knowing the clock speeds, and the cache sizes. I know how to determine the clock speeds (they're in /proc/cpuinfo), but can anybody tell me how to determine the cache sizes (in a non-destructive manner such as is used by ppcboot). Thanks, Alex ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/