summaryrefslogtreecommitdiff
path: root/cleopatre/linux-2.6.25.10-spc300
AgeCommit message (Collapse)Author
2013-01-08cleo/linux/mach-spc300: remove un-needed include arch.h, refs #3579Jérémy Dufour
As asm/mach/arch.h include is not protected against multiple includes and also because it is not used by spc300-devices.c, it is easier to remove it now for next commit.
2013-01-08cleo/linux/mach-spc300: make NVRAM offset extern, refs #3579Jérémy Dufour
2013-01-08cleo/linux/mach-spc300: remove duplicated comments & empty line, refs #3579Jérémy Dufour
2013-01-08cleo/linux/arch/arm: use dynamic position in tables, refs #3579Jérémy Dufour
2013-01-02cleo/linux/arch/arm/spc300: fix "Ignoring unrecognised tag 0x00000000", ↵Yacine Belkadi
closes #3650 On SPC300, u-boot passes an ATAG_SPC300 tag to the Linux kernel. That tag is intercepted by spc300_fixup(). This function consumes the tag, then turns it into an ATAG_NONE. The problem is that the function doesn't set the size to 0. Then when the kernel parses the tags, it fails to recognize the ATAG_NONE, and prints the boot message: "Ignoring unrecognised tag 0x00000000" Fix that by setting the size of the new ATAG_NONE tag to 0.
2012-12-21cleo/linux/arch/arm/spc300/pm: update system time on resume, closes #3568Olivier Dufour
The system time is now updated when returning from pm procedure, with an error margin below 10ms (duration of a tick timer).
2012-12-21cleo/linux/arch/arm/spc300/pm: use dynamic mapping for some API, refs #3568Olivier Dufour
API that are not used at all by the linux kernel should not necessarily be staticaly mapped, but rather dynamicaly when needed. It also helps keeping as low as possible the number of VA in cache during the SRAM code execution.
2012-12-21cleo/app/pmd: add a daemon to handle power state changes, closes #2633Olivier Dufour
pmd polls /proc/pm/suspend_cmd, and triggers the suspend script when the criterias are matched. The criterias are defined and handled by the kernel, pmd only reads the status entry and triggers the script, as it cannot be done from kernel space.
2012-12-21cleo/linux: create a proc entry to manage standby mode, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: wake up on eth link up, refs #2633Olivier Dufour
There is now a data section in SRAM, that contains dynamic parameters for pm_process function in SRAM.
2012-12-21cleo/linux/arch/arm/spc300: change WDT timeout, refs #2633Olivier Dufour
We use WDT timeout as poll timer when in stanbdby mode. Because of the PLLs bypass, old 4s value became about 90s. We want to wake up every second so we chose the closest value available, that is 1.4s.
2012-12-21cleo/linux/arch/arm/spc300: put SDRAM in self-refresh mode, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: handle WDT refresh in low power mode, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: shut down PLLs in low power mode, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: map PLL registers in virtual memory, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: transfer ARM sleep procedure in SRAM, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: Add SRAM in MMU mapping, refs #2633Olivier Dufour
SRAM is remapped in virtual memory as an IO device. It enables access and code execution.
2012-12-21cleo/buildroot/target/Spidcom: add CONFIG_CHIP_FEATURE_SRAM, refs #2633Olivier Dufour
2012-12-21cleo/linux/drv/net/arm: switch off ethernet clocks, refs #2633Olivier Dufour
2012-12-21cleo/linux/arch/arm/spc300: manage IRQ on suspend/resume, refs #2633Nicolas Schodet
2012-12-21cleo/linux/arch/arm/spc300: enable power management, refs #2633Cyril Jourdan
2012-12-18cleo/linux/drivers/mtd: try to erase by 64K sector if possible, refs #3520Jérémy Dufour
2012-12-18cleo/linux/drivers/mtd: store sector size in flash structure, refs #3520Jérémy Dufour
2012-12-18cleo/linux/drivers/mtd: store 4K sector flag in flash structure, refs #3520Jérémy Dufour
2012-12-18cleo/linux/drivers/mtd: add helper function for 4K erasing config, refs #3520Jérémy Dufour
2012-12-11cleo/linux/scripts/cpincludes: preserve timestamps when copying, refs #3514Yacine Belkadi
The files copied by cpincludes had new timestamps. As a consequence, the build process rebuilt dependent files, even if no actual changes happened. Ask cp to preserve timestamps, in order to avoid messing with the dependencies.
2012-12-06cleo/linux/driver/mtd: remove the 4K support for winbond, closes #3559Olivier Dufour
2012-11-21common/tools/mksimage: generate 200 and 300 image descriptor, refs #3452Jérémy Dufour
mksimage is now able to generate image descriptor for 200 or 300 boards.
2012-11-21common: move spid_img_desc.h to common/include, refs #3452Jérémy Dufour
spid_img_desc.h header is used by the kernel and other applications: it is more suitable to have it in common include directory.
2012-11-21{common, cleo/linux/scripts}: move mksimage from linux to common, refs #3452Jérémy Dufour
In order to have a common mksimage between SPC300 and MSE500-200, we move mksimage to common and replace it by a symbolic link.
2012-11-06cleo/arch/arm/spc300: Add support of eth2 for MSE500, closes #3413Olivier Dufour
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.