mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-24 12:03:39 +00:00
e856bdcfb4
We repeated partial moves for CONFIG_SYS_NO_FLASH, but this is not completed. Finish this work by the tool. During this move, let's rename it to CONFIG_MTD_NOR_FLASH. Actually, we have more instances of "#ifndef CONFIG_SYS_NO_FLASH" than those of "#ifdef CONFIG_SYS_NO_FLASH". Flipping the logic will make the code more readable. Besides, negative meaning symbols do not fit in obj-$(CONFIG_...) style Makefiles. This commit was created as follows: [1] Edit "default n" to "default y" in the config entry in common/Kconfig. [2] Run "tools/moveconfig.py -y -r HEAD SYS_NO_FLASH" [3] Rename the instances in defconfigs by the following: find . -path './configs/*_defconfig' | xargs sed -i \ -e '/CONFIG_SYS_NO_FLASH=y/d' \ -e 's/# CONFIG_SYS_NO_FLASH is not set/CONFIG_MTD_NOR_FLASH=y/' [4] Change the conditionals by the following: find . -name '*.[ch]' | xargs sed -i \ -e 's/ifndef CONFIG_SYS_NO_FLASH/ifdef CONFIG_MTD_NOR_FLASH/' \ -e 's/ifdef CONFIG_SYS_NO_FLASH/ifndef CONFIG_MTD_NOR_FLASH/' \ -e 's/!defined(CONFIG_SYS_NO_FLASH)/defined(CONFIG_MTD_NOR_FLASH)/' \ -e 's/defined(CONFIG_SYS_NO_FLASH)/!defined(CONFIG_MTD_NOR_FLASH)/' [5] Modify the following manually - Rename the rest of instances - Remove the description from README - Create the new Kconfig entry in drivers/mtd/Kconfig - Remove the old Kconfig entry from common/Kconfig - Remove the garbage comments from include/configs/*.h Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> |
||
---|---|---|
.. | ||
bsc9132qds.c | ||
ddr.c | ||
Kconfig | ||
law.c | ||
MAINTAINERS | ||
Makefile | ||
README | ||
spl_minimal.c | ||
tlb.c |
Overview -------- The BSC9132 is a highly integrated device that targets the evolving Microcell, Picocell, and Enterprise-Femto base station market subsegments. The BSC9132 device combines Power Architecture e500 and DSP StarCore SC3850 core technologies with MAPLE-B2P baseband acceleration processing elements to address the need for a high performance, low cost, integrated solution that handles all required processing layers without the need for an external device except for an RF transceiver or, in a Micro base station configuration, a host device that handles the L3/L4 and handover between sectors. The BSC9132 SoC includes the following function and features: - Power Architecture subsystem including two e500 processors with 512-Kbyte shared L2 cache - Two StarCore SC3850 DSP subsystems, each with a 512-Kbyte private L2 cache - 32 Kbyte of shared M3 memory - The Multi Accelerator Platform Engine for Pico BaseStation Baseband Processing (MAPLE-B2P) - Two DDR3/3L memory interfaces with 32-bit data width (40 bits including ECC), up to 1333 MHz data rate - Dedicated security engine featuring trusted boot - Two DMA controllers - OCNDMA with four bidirectional channels - SysDMA with sixteen bidirectional channels - Interfaces - Four-lane SerDes PHY - PCI Express controller complies with the PEX Specification-Rev 2.0 - Two Common Public Radio Interface (CPRI) controller lanes - High-speed USB 2.0 host and device controller with ULPI interface - Enhanced secure digital (SD/MMC) host controller (eSDHC) - Antenna interface controller (AIC), supporting four industry standard JESD207/four custom ADI RF interfaces - ADI lanes support both full duplex FDD support & half duplex TDD - Universal Subscriber Identity Module (USIM) interface that facilitates communication to SIM cards or Eurochip pre-paid phone cards - Two DUART, two eSPI, and two I2C controllers - Integrated Flash memory controller (IFC) - GPIO - Sixteen 32-bit timers The SC3850 core subsystem consists of the following: - 32 KB, 8-way, level 1 instruction cache (L1 ICache) - 32 KB, 8-way, level 1 data cache (L1 DCache) - 512 KB, 8-way, level 2 unified instruction/data cache (L2 cache/M2 memory) - Memory management unit (MMU) - Global interrupt controller ( GIC) - Debug and profiling unit (DPU) - Two 32-bit quad timers BSC9132QDS board Overview ------------------------- 2Gbyte DDR3 (on board DDR), Dual Ranki 32Mbyte 16bit NOR flash 128Mbyte 2K page size NAND Flash 256 Kbit M24256 I2C EEPROM 128 Mbit SPI Flash memory SD slot USB-ULPI eTSEC1: Connected to SGMII PHY eTSEC2: Connected to SGMII PHY PCIe CPRI SerDes I2C RTC DUART interface: supports one UARTs up to 115200 bps for console display Frequency Combinations Supported -------------------------------- Core MHz/CCB MHz/DDR(MT/s) 1. CPU0/CPU1/CCB/DDR: 1000MHz/1000MHz/500MHz/800MHz (SYSCLK = 100MHz, DDRCLK = 100MHz) 2. CPU0/CPU1/CCB/DDR: 1200MHz/1200MHz/600MHz/1330MHz (SYSCLK = 100MHz, DDRCLK = 133MHz) Boot Methods Supported ----------------------- 1. NOR Flash 2. NAND Flash 3. SD Card 4. SPI flash Default Boot Method -------------------- NOR boot Building U-Boot -------------- To build the U-Boot for BSC9132QDS: 1. NOR Flash make BSC9132QDS_NOR_DDRCLK100 : For 100MHZ DDR CLK make BSC9132QDS_NOR_DDRCLK133 : For 133MHZ DDR CLK 2. NAND Flash : It is currently not supported 3. SPI Flash make BSC9132QDS_SPIFLASH_DDRCLK100 : For 100MHZ DDR CLK make BSC9132QDS_SPIFLASH_DDRCLK133 : For 133MHZ DDR CLK 4. SD Card make BSC9132QDS_SDCARD_DDRCLK100 : For 100MHZ DDR CLK make BSC9132QDS_SDCARD_DDRCLK133 : For 133MHZ DDR CLK Memory map ----------- 0x0000_0000 0x7FFF_FFFF DDR 2G cacheable 0x8000_0000 0x8FFF_FFFF NOR Flash 256M 0x9000_0000 0x9FFF_FFFF PCIe Memory 256M 0xA000_0000 0xA7FF_FFFF DSP core1 L2 space 128M 0xB000_0000 0xB0FF_FFFF DSP core0 M2 space 16M 0xB100_0000 0xB1FF_FFFF DSP core1 M2 space 16M 0xC000_0000 0xC000_7FFF M3 Memory 32K 0xC001_0000 0xC001_FFFF PCI Express I/O 64K 0xC100_0000 0xC13F_FFFF MAPLE-2F 4M 0xC1F0_0000 0xC1F7_FFFF PA SRAM Region 0 512K 0xC1F8_0000 0xC1FB_FFFF PA SRAM Region 1 512K 0xFED0_0000 0xFED0_3FFF SEC Secured RAM 16K 0xFEE0_0000 0xFEE0_0FFF DSP Boot ROM 4K 0xFF60_0000 0xFF6F_FFFF DSP CCSR 1M 0xFF70_0000 0xFF7F_FFFF PA CCSR 1M 0xFF80_0000 0xFFFF_FFFF Boot Page & NAND Buffer 8M Flashing Images --------------- To place a new U-Boot image in the NAND flash and then boot with that new image temporarily, use this: tftp 1000000 u-boot-nand.bin nand erase 0 100000 nand write 1000000 0 100000 reset Using the Device Tree Source File --------------------------------- To create the DTB (Device Tree Binary) image file, use a command similar to this: dtc -b 0 -f -I dts -O dtb bsc9132qds.dts > bsc9132qds.dtb Likely, that .dts file will come from here; linux-2.6/arch/powerpc/boot/dts/bsc9132qds.dts Booting Linux ------------- Place a linux uImage in the TFTP disk area. tftp 1000000 uImage tftp 2000000 rootfs.ext2.gz.uboot tftp c00000 bsc9132qds.dtb bootm 1000000 2000000 c00000