summaryrefslogtreecommitdiff
path: root/cleopatre/linux-2.6.25.10-spc300
AgeCommit message (Collapse)Author
2012-11-06cleo/linux/drv/eth: don't netif_wake_queue() on link upYacine Belkadi
In the Synop3504 Ethernet driver, there is no reason to wake the queue on link up, because it's already started on open() and it's not stopped on link down.
2012-11-06cleo/linux/drv/eth: don't txdesc_reset() on link up, refs #3195, (ind.) ↵Yacine Belkadi
closes #3439 In the Synop3504 Ethernet driver, the Tx descriptors were reset on link up. That's not necessary because the MAC TxDMA will process (fetch and close) the Tx descriptors even if the link is down. So letting the normal process happen will take care of the pending descriptors. This Tx descriptor reset already caused problems when it was performed on link_down. It was then moved to link up. In link up, this reset is one of the causes of #3439*. So removing the reset of the Tx descriptors on link up also indirectly closes the ticket #3439. *#3439 is a kernel oops that happens when booting in "single mode" on a board with an IP75D PHY: The IP175D driver declares its readiness to the Linux PHY Layer in a particular way, probably to skip the Auto-Negotiation step. As a consequence, the PHY layer may call the Ethernet driver's adjust_link() before it's ready (before phy_start() is called). In other words, adjust_link() may be called before the driver has initialized the descriptors. If that happens, the Ethernet driver touches the uninitialized Tx descriptors, and a kernel oops occurs. The problem is visible in single mode because the eth interface is not brought up. So synop3504_open() is not run. So the Tx descriptors are not already initialized when the PHY layer calls synop3504_handle_link_change() which calls txdesc_reset(), which causes a kernel oops.
2012-11-06cleo/linux/drv/eth: don't netif_carrier_{on|off}() on link change, closes #3254Yacine Belkadi
In the Synop3504 Ethernet driver, it is not necessary to call netif_carrier_{on,off}() on link up/down, because the PHY layer already takes care of that before calling the driver's link change handler. More precisely, in linux/drivers/net/phy.c, phy_state_machine() calls netif_carrier_{on|off}() before calling phydev->adjust_link().
2012-11-06cleo/linux/inc/asm/arch/spc300: change VMALLOC_END value, refs #2842Cyril Jourdan
VMALLOC_START depends on the actual SDRAM size. VMALLOC_END is a constant and its value was the same than VMALLOC_START, considering the use of a SDRAM bigger than 32Mb. That made the virtual addressable space null... The size between VMALLOC_START and VMALLOC_END can be more than SDRAM size, it is not a problem. We just have to be careful about the fact that vmalloc space does not overlap on other areas that we could have reserved (for IO or PLC code, for example). Actually, virtual memory starts to be reserved from 0xEF000000. That is why we chose this new value: it is high enough to allow us to use bigger SDRAMs and low enough to reserve virtual memory space for other potential applications.
2012-11-06cleo/linux/inc/asm/arch/spc300: remove unnecessary defines, refs #2842Cyril Jourdan
VMALLOC_VMADDR is not used on our architecture. VMALLOC_OFFSET and VMALLOC_START are automatically defined by Linux, with exactly the same values.
2012-10-31cleo/{linux, openocd}: add support for w25q64 flash, closes #3447Jean-Philippe SAVE
2012-10-31cleo/{linux, openocd}: suppress duplicated JEDEC info on flashs, closes #3446Jean-Philippe SAVE
The winbond flash w25q32 is declared twice.
2012-10-19cleo/linux/driver/net/arm/synop3504: flush MIU only on MSE500, closes #3408Jean-Philippe SAVE
2012-10-18cleo/linux/{arm/boot,lib}: use XZ decompression in build/config, refs #3204Jérémy Dufour
The new XZ method is now available to compress/uncompress the kernel.
2012-10-18cleo/linux/lib: import XZ decompression method from upstream, refs #3204Jérémy Dufour
This commit import files from upstream kernel (tags/v3.4).
2012-10-18cleo/linux/scripts: import xzkern to build xz compressed image, refs #3204Jérémy Dufour
2012-10-18cleo/linux/script: import size_append function from upstream, refs #3204Jérémy Dufour
The size_append function is import from kernel upstream (tags/v3.4).
2012-10-18cleo/linux/lib: integrate xz library in the build system, refs #3204Jérémy Dufour
2012-10-18cleo/linux/lib/xz: adapt xz library to our linux, refs #3204Jérémy Dufour
2012-10-18cleo/linux/lib: import xz library from upstream (tags/v3.4), refs #3204Jérémy Dufour
2012-10-18cleo/linux/arm/boot: adapt head.S for our architecture, refs #3204Jérémy Dufour
2012-10-18cleo/linux/arm/boot: import head.S from upstream, refs #3204Jérémy Dufour
2012-10-18cleo/linux/arm: import unified assembler syntax helper header, refs #3204Jérémy Dufour
This will be needed for future usage. The file is coming from upstream kernel (tags/v3.4)
2012-10-18cleo/linux/arm/boot: use zlib_inflate method instead of gzip, refs #3204Jérémy Dufour
At this stage, we are building and uncompressing a gziped kernel using the upstream method. This commit replace the function decompress_kernel with the one from upstream (tags/v3.4). It also removes unneeded gzip code: the code present in was using an old method.
2012-10-18cleo/linux/arm/boot: build some maths functions for vmlinux, refs #3204Jérémy Dufour
This will be needed for the new inflate (gzip) implementation and xz compression method.
2012-10-18cleo/linux/arm: use modular compression method at boot, refs #3204Jérémy Dufour
This commit still uses the old gzip method we are using but in a more configurable fashion method.
2012-10-18cleo/linux/arm: integrate new string lib into build, refs #3204Jérémy Dufour
Some functions are duplicated, so we remove the ones not in the string library.
2012-10-18cleo/linux/arm: import string.c from upstream, refs #3204Jérémy Dufour
This commit add some simple string functions, imported from upstream kernel (tags/v3.4), which will be needed for next commits.
2012-10-18cleo/linux/arm: remove unsupported decompression method, refs #3204Jérémy Dufour
2012-10-18cleo/linux/arm: import boot decompression method from upstream, refs #3204Jérémy Dufour
This commit import new decompression code from upstream kernel (tags/v3.4) without any modifications: it is a generic mechanism to decompress the kernel using a method defined by the kernel config.
2012-10-18cleo/linux/lib/zlib_inflate: protect headers, refs #3204Jérémy Dufour
This changes were partially done in the upstream kernel (tags/v3.4). Even if they are not required for our implementation, it won't hurt and prevent a lot of time lost to debug kernel include errors.
2012-10-18cleo/linux: remove unsupported compression methods, refs #3204Jérémy Dufour
2012-10-18cleo/linux: import kernel compression selector from upstream, refs #3204Jérémy Dufour
This commit add new compression kernel selector from upstream kernel (tags/v3.4). No modification has been done from the import.
2012-10-18cleo/linux/lib/decompress: import lib decompress from upstream, refs #3204Jérémy Dufour
This commit copies the new decompress architecture (including generic and gunzip one) from upstream kernel (tags/v3.4). No modification on the files has been done.
2012-10-18{cleo,polux}/linux/arm/wdt: move some functions to header, refs #3272Olivier Dufour
In order to be able to add support for watchdog functions in boot sequence, functions to start and refresh it need to be defined directly in header files.
2012-10-18{cleo,polux}/linux/arm/wdt: support physical address in wdt, refs #3272Olivier Dufour
Before booting the kernel, there is not support for MMU and virtual address. This commit enables to setup and use the watchdog using physical address.
2012-10-18{cleo,polux}/linux: simplify watchdog API, closes #3296Jérémy Dufour
The function spc300_wdt_stop is removed: we can not stop the watchdog. The functions spc300_wdt_restart and spc300_wdt_settimeout are replaced by spc300_wdt_start.
2012-10-18{cleo,polux}/linux/arm/wdt: remove duplicated comments, refs #3296Jérémy Dufour
Those comments already exist in corresponding header file (include/asm-arm/arch-spc300/wdt.h). They do not need to be duplicated.
2012-10-17cleo/linux/driver/net/arm/synop3504: adapt synchro with DMA, closes #3408Jean-Philippe SAVE
- force compiler to set dma own-bit at the end of the descriptor changes. - waiting for miu flush before using dma descriptors changed by dma.
2012-09-21cleo/linux/arch/arm/mach-spc300: do not add GPIO chip without dir, refs #3318Cyril Jourdan
2012-09-20cleo/linux/arch/arm/mach-spc300: fix Kconfig indentJean-Philippe SAVE
2012-09-20common/inc/asm/arch/ips: add timer 3 and 4 defines, refs #3318Cyril Jourdan
2012-09-20cleo/linux: add a driver for mseafe, refs #3318Jean-Philippe SAVE
2012-09-20common/inc/asm/arch/ips/hw: add mseafe.h, refs #3318Jean-Philippe SAVE
2012-09-20cleo/linux/drivers/afe: use 32 bits for read/write functions, refs #3318Jean-Philippe SAVE
2012-09-20cleo/linux/drivers/afe: do not use ad986x afe on mse500, refs #3318Jean-Philippe SAVE
2012-09-20cleo/linux: add IOMUX management for MSE500, refs #3318Jean-Philippe SAVE
2012-09-20cleo/{linux, buildroot}: handle eth clks and rgmii on MSE500, refs #3318Jean-Philippe SAVE
2012-09-20cleo/linux/arch/arm/mach-spc300: handle reset cause on MSE500, refs #3318Cyril Jourdan
2012-09-20{cleo/linux, common/tools/genNVRAM}: handle spi and flash on MSE500, refs #3318Jean-Philippe SAVE
2012-09-20cleo/linux/drivers/spi: extract reset macro from headerJean-Philippe SAVE
2012-09-20cleo/{linux/drivers/mtd/, tools/openocd-r668/}: Support new flashesJulien Lacour
2012-09-20common/inc/asm/arch: handle 64 sources GIC in entry-macro.S, refs #3318Cyril Jourdan
2012-09-20cleo/{buildroot, linux}: create MSE500 machine, refs #3318Jean-Philippe SAVE
Warning: This commit does not compile, but it will be easier to understand.
2012-09-20cleo/linux/arch/arm/mach-spc300: use NVRAM defines, closes #420Jean-Philippe SAVE