source: trunk/target/linux/lantiq/patches-2.6.39/160-falcon-95C3AM1.patch @ 27026

Last change on this file since 27026 was 27026, checked in by blogic, 5 years ago

[lantiq]

  • backport 2.6.8 patches to .39 / .32.33
  • remove lqtapi
  • bump tapi/dsl to .39
  • migrate to new ltq_ style api
  • add amazon_se support
File size: 3.3 KB
  • new file arch/mips/lantiq/falcon/mach-95C3AM1.c

    - +  
     1#include <linux/init.h> 
     2#include <linux/platform_device.h> 
     3#include <linux/i2c-gpio.h> 
     4#include "../machtypes.h" 
     5 
     6#include "devices.h" 
     7#include "dev-leds-gpio.h" 
     8 
     9#define BOARD_95C3AM1_GPIO_LED_0 10 
     10#define BOARD_95C3AM1_GPIO_LED_1 11 
     11#define BOARD_95C3AM1_GPIO_LED_2 12 
     12#define BOARD_95C3AM1_GPIO_LED_3 13 
     13 
     14extern unsigned char ltq_ethaddr[6]; 
     15 
     16#ifdef CONFIG_MTD_PARTITIONS 
     17static struct mtd_partition board_95C3AM1_partitions[] = 
     18{ 
     19        { 
     20                .name   = "uboot", 
     21                .offset = 0x0, 
     22                .size   = 0x40000, 
     23        }, 
     24        { 
     25                .name   = "uboot_env", 
     26                .offset = 0x40000, 
     27                .size   = 0x40000,      /* 2 sectors for redundant env. */ 
     28        }, 
     29        { 
     30                .name   = "linux", 
     31                .offset = 0x80000, 
     32                .size   = 0xF80000,     /* map only 16 MiB */ 
     33        }, 
     34}; 
     35 
     36static struct flash_platform_data board_95C3AM1_flash_platform_data = { 
     37        .name = "sflash", 
     38        .parts = board_95C3AM1_partitions, 
     39        .nr_parts = ARRAY_SIZE(board_95C3AM1_partitions) 
     40}; 
     41#endif 
     42 
     43static struct spi_board_info board_95C3AM1_flash_data __initdata = { 
     44        .modalias               = "m25p80", 
     45        .bus_num                = 0, 
     46        .chip_select            = 0, 
     47        .max_speed_hz           = 10 * 1000 * 1000, 
     48        .mode                   = SPI_MODE_3, 
     49#ifdef CONFIG_MTD_PARTITIONS 
     50        .platform_data          = &board_95C3AM1_flash_platform_data 
     51#endif 
     52}; 
     53 
     54static struct gpio_led board_95C3AM1_leds_gpio[] __initdata = { 
     55        { 
     56                .name           = "power", 
     57                .gpio           = BOARD_95C3AM1_GPIO_LED_0, 
     58                .active_low     = 0, 
     59        }, { 
     60                .name           = "optical", 
     61                .gpio           = BOARD_95C3AM1_GPIO_LED_1, 
     62                .active_low     = 0, 
     63        }, { 
     64                .name           = "lan", 
     65                .gpio           = BOARD_95C3AM1_GPIO_LED_2, 
     66                .active_low     = 0, 
     67        }, { 
     68                .name           = "update", 
     69                .gpio           = BOARD_95C3AM1_GPIO_LED_3, 
     70                .active_low     = 0, 
     71        } 
     72}; 
     73 
     74static struct i2c_gpio_platform_data board_95C3AM1_i2c_gpio_data = { 
     75        .sda_pin        = 107, 
     76        .scl_pin        = 108, 
     77}; 
     78 
     79static struct platform_device board_95C3AM1_i2c_gpio_device = { 
     80        .name           = "i2c-gpio", 
     81        .id             = 0, 
     82        .dev = { 
     83                .platform_data  = &board_95C3AM1_i2c_gpio_data, 
     84        } 
     85}; 
     86 
     87static void __init board_95C3AM1_init(void) 
     88{ 
     89        falcon_register_asc(0); 
     90        falcon_register_gpio(); 
     91        falcon_register_wdt(); 
     92        falcon_register_i2c(); 
     93        falcon_register_spi_flash(&board_95C3AM1_flash_data); 
     94        platform_device_register(&board_95C3AM1_i2c_gpio_device); 
     95        ltq_add_device_leds_gpio(-1, ARRAY_SIZE(board_95C3AM1_leds_gpio), 
     96                                                board_95C3AM1_leds_gpio); 
     97        falcon_register_crypto(); 
     98} 
     99 
     100MIPS_MACHINE(LANTIQ_MACH_95C3AM1, 
     101                        "95C3AM1", 
     102                        "95C3AM1 Board", 
     103                        board_95C3AM1_init); 
  • arch/mips/lantiq/falcon/Kconfig

    a b  
    1010        bool "Easy98020" 
    1111        default y 
    1212 
     13config LANTIQ_MACH_95C3AM1 
     14        bool "95C3AM1" 
     15        default y 
     16 
    1317endmenu 
    1418 
    1519endif 
  • arch/mips/lantiq/falcon/Makefile

    a b  
    33obj-$(CONFIG_LANTIQ_MACH_EASY98000) += mach-easy98000.o 
    44obj-$(CONFIG_LANTIQ_MACH_EASY98000) += dev-leds-easy98000-cpld.o 
    55obj-$(CONFIG_LANTIQ_MACH_EASY98020) += mach-easy98020.o 
     6obj-$(CONFIG_LANTIQ_MACH_95C3AM1)   += mach-95C3AM1.o 
  • arch/mips/lantiq/machtypes.h

    a b  
    2020        LANTIQ_MACH_EASY98000,          /* Falcon Eval Board, NOR Flash */ 
    2121        LANTIQ_MACH_EASY98000SF,        /* Falcon Eval Board, Serial Flash */ 
    2222        LANTIQ_MACH_EASY98020,          /* Falcon Reference Board */ 
     23        LANTIQ_MACH_95C3AM1,            /* Board 95C3AM1 */ 
    2324}; 
    2425 
    2526#endif 
Note: See TracBrowser for help on using the repository browser.