mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	dump 2.6.25 support
SVN-Revision: 17816
This commit is contained in:
		
							parent
							
								
									f826306179
								
							
						
					
					
						commit
						b88e08839a
					
				@ -1,176 +0,0 @@
 | 
			
		||||
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
 | 
			
		||||
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
 | 
			
		||||
CONFIG_BASE_SMALL=0
 | 
			
		||||
CONFIG_BITREVERSE=y
 | 
			
		||||
CONFIG_BLK_DEV_SD=y
 | 
			
		||||
CONFIG_BOUNCE=y
 | 
			
		||||
# CONFIG_BRIDGE is not set
 | 
			
		||||
CONFIG_CLASSIC_RCU=y
 | 
			
		||||
CONFIG_CRIS=y
 | 
			
		||||
# CONFIG_CRIS_MACH_ARTPEC3 is not set
 | 
			
		||||
# CONFIG_ETRAX100LX is not set
 | 
			
		||||
CONFIG_ETRAX100LX_V2=y
 | 
			
		||||
# CONFIG_ETRAXFS is not set
 | 
			
		||||
CONFIG_ETRAX_ARCH_V10=y
 | 
			
		||||
# CONFIG_ETRAX_ARCH_V32 is not set
 | 
			
		||||
CONFIG_ETRAX_AXISFLASHMAP=y
 | 
			
		||||
CONFIG_ETRAX_CMDLINE="root=/dev/mtdblock1 rootfstype=squashfs,jffs2 noinitrd console=ttyS0,115200"
 | 
			
		||||
# CONFIG_ETRAX_CSP0_LEDS is not set
 | 
			
		||||
# CONFIG_ETRAX_DEBUG_PORT0 is not set
 | 
			
		||||
# CONFIG_ETRAX_DEBUG_PORT1 is not set
 | 
			
		||||
# CONFIG_ETRAX_DEBUG_PORT2 is not set
 | 
			
		||||
# CONFIG_ETRAX_DEBUG_PORT3 is not set
 | 
			
		||||
CONFIG_ETRAX_DEBUG_PORT_NULL=y
 | 
			
		||||
CONFIG_ETRAX_DEF_R_BUS_CONFIG=0x4
 | 
			
		||||
CONFIG_ETRAX_DEF_R_PORT_PA_DATA=0xf0
 | 
			
		||||
CONFIG_ETRAX_DEF_R_PORT_PA_DIR=0x1c
 | 
			
		||||
CONFIG_ETRAX_DEF_R_PORT_PB_CONFIG=0x00
 | 
			
		||||
CONFIG_ETRAX_DEF_R_PORT_PB_DATA=0x03
 | 
			
		||||
CONFIG_ETRAX_DEF_R_PORT_PB_DIR=0xce
 | 
			
		||||
CONFIG_ETRAX_DEF_R_SDRAM_CONFIG=0x09603737
 | 
			
		||||
CONFIG_ETRAX_DEF_R_SDRAM_TIMING=0x80008002
 | 
			
		||||
CONFIG_ETRAX_DEF_R_WAITSTATES=0x95f8
 | 
			
		||||
CONFIG_ETRAX_DRAM_SIZE=32
 | 
			
		||||
CONFIG_ETRAX_DRAM_VIRTUAL_BASE=c0000000
 | 
			
		||||
CONFIG_ETRAX_ETHERNET=y
 | 
			
		||||
CONFIG_ETRAX_FAST_TIMER=y
 | 
			
		||||
CONFIG_ETRAX_FLASH1_SIZE=0
 | 
			
		||||
CONFIG_ETRAX_FLASH_BUSWIDTH=2
 | 
			
		||||
CONFIG_ETRAX_GPIO=y
 | 
			
		||||
# CONFIG_ETRAX_I2C is not set
 | 
			
		||||
# CONFIG_ETRAX_I2C_GVC is not set
 | 
			
		||||
# CONFIG_ETRAX_KMALLOCED_MODULES is not set
 | 
			
		||||
CONFIG_ETRAX_LED1G=2
 | 
			
		||||
CONFIG_ETRAX_LED1R=2
 | 
			
		||||
CONFIG_ETRAX_LED2G=3
 | 
			
		||||
CONFIG_ETRAX_LED2R=3
 | 
			
		||||
CONFIG_ETRAX_LED3G=2
 | 
			
		||||
CONFIG_ETRAX_LED3R=2
 | 
			
		||||
CONFIG_ETRAX_NANDFLASH_BUSWIDTH=1
 | 
			
		||||
CONFIG_ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY=y
 | 
			
		||||
# CONFIG_ETRAX_NETWORK_LED_ON_WHEN_LINK is not set
 | 
			
		||||
# CONFIG_ETRAX_NO_LEDS is not set
 | 
			
		||||
CONFIG_ETRAX_PA_BUTTON_BITMASK=02
 | 
			
		||||
CONFIG_ETRAX_PA_CHANGEABLE_BITS=0xFF
 | 
			
		||||
CONFIG_ETRAX_PA_CHANGEABLE_DIR=0xFF
 | 
			
		||||
CONFIG_ETRAX_PA_LEDS=y
 | 
			
		||||
CONFIG_ETRAX_PB_CHANGEABLE_BITS=0xFF
 | 
			
		||||
CONFIG_ETRAX_PB_CHANGEABLE_DIR=0xFF
 | 
			
		||||
# CONFIG_ETRAX_PB_LEDS is not set
 | 
			
		||||
CONFIG_ETRAX_PTABLE_SECTOR=0
 | 
			
		||||
CONFIG_ETRAX_RESCUE_SER0=y
 | 
			
		||||
# CONFIG_ETRAX_RESCUE_SER1 is not set
 | 
			
		||||
# CONFIG_ETRAX_RESCUE_SER2 is not set
 | 
			
		||||
# CONFIG_ETRAX_RESCUE_SER3 is not set
 | 
			
		||||
# CONFIG_ETRAX_RS485 is not set
 | 
			
		||||
CONFIG_ETRAX_SDRAM=y
 | 
			
		||||
CONFIG_ETRAX_SER0_CD_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_CD_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_DSR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_DSR_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_DTR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_DTR_ON_PB_BIT=-1
 | 
			
		||||
# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_MIXED is not set
 | 
			
		||||
CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE=y
 | 
			
		||||
# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_PA is not set
 | 
			
		||||
# CONFIG_ETRAX_SER0_DTR_RI_DSR_CD_ON_PB is not set
 | 
			
		||||
CONFIG_ETRAX_SER0_RI_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER0_RI_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_CD_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_CD_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_DSR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_DSR_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_DTR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_DTR_ON_PB_BIT=-1
 | 
			
		||||
# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_MIXED is not set
 | 
			
		||||
CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE=y
 | 
			
		||||
# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_PA is not set
 | 
			
		||||
# CONFIG_ETRAX_SER2_DTR_RI_DSR_CD_ON_PB is not set
 | 
			
		||||
CONFIG_ETRAX_SER2_RI_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER2_RI_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_CD_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_CD_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_DSR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_DSR_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_DTR_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_DTR_ON_PB_BIT=-1
 | 
			
		||||
# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_MIXED is not set
 | 
			
		||||
CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE=y
 | 
			
		||||
# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_PA is not set
 | 
			
		||||
# CONFIG_ETRAX_SER3_DTR_RI_DSR_CD_ON_PB is not set
 | 
			
		||||
CONFIG_ETRAX_SER3_RI_ON_PA_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SER3_RI_ON_PB_BIT=-1
 | 
			
		||||
CONFIG_ETRAX_SERIAL=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_FAST_TIMER is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_FLUSH_DMA_FAST is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT0=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT0_DMA0_OUT is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT0_DMA1_IN is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT0_DMA6_OUT is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT0_DMA7_IN is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_IN=y
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT0_NO_DMA_OUT=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT1 is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT2=y
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT2_DMA2_OUT=y
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT2_DMA3_IN=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT2_DMA6_OUT is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT2_DMA7_IN is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_IN is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT2_NO_DMA_OUT is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT3=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_DMA2_OUT is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_DMA3_IN is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT3_DMA4_OUT=y
 | 
			
		||||
CONFIG_ETRAX_SERIAL_PORT3_DMA5_IN=y
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_DMA8_OUT is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_DMA9_IN is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_IN is not set
 | 
			
		||||
# CONFIG_ETRAX_SERIAL_PORT3_NO_DMA_OUT is not set
 | 
			
		||||
CONFIG_ETRAX_SERIAL_RX_TIMEOUT_TICKS=1
 | 
			
		||||
# CONFIG_ETRAX_SOFT_SHUTDOWN is not set
 | 
			
		||||
# CONFIG_ETRAX_SYNCHRONOUS_SERIAL is not set
 | 
			
		||||
CONFIG_ETRAX_USB_HOST=y
 | 
			
		||||
CONFIG_ETRAX_USB_HOST_PORT1=y
 | 
			
		||||
CONFIG_ETRAX_USB_HOST_PORT2=y
 | 
			
		||||
# CONFIG_ETRAX_VCS_SIM is not set
 | 
			
		||||
# CONFIG_ETRAX_WATCHDOG is not set
 | 
			
		||||
CONFIG_EXT2_FS=y
 | 
			
		||||
CONFIG_FORCE_MAX_ZONEORDER=6
 | 
			
		||||
CONFIG_GENERIC_FIND_NEXT_BIT=y
 | 
			
		||||
CONFIG_GENERIC_IOMAP=y
 | 
			
		||||
# CONFIG_GEN_RTC is not set
 | 
			
		||||
# CONFIG_HAMRADIO is not set
 | 
			
		||||
CONFIG_HAS_DMA=y
 | 
			
		||||
CONFIG_HAS_IOMEM=y
 | 
			
		||||
CONFIG_HAVE_IDE=y
 | 
			
		||||
# CONFIG_HAVE_KPROBES is not set
 | 
			
		||||
# CONFIG_HAVE_KRETPROBES is not set
 | 
			
		||||
# CONFIG_HAVE_OPROFILE is not set
 | 
			
		||||
# CONFIG_HW_RANDOM is not set
 | 
			
		||||
# CONFIG_I2C is not set
 | 
			
		||||
# CONFIG_IDE is not set
 | 
			
		||||
CONFIG_INITRAMFS_SOURCE=""
 | 
			
		||||
CONFIG_MTDRAM_ABS_POS=0x0
 | 
			
		||||
CONFIG_MTDRAM_ERASE_SIZE=128
 | 
			
		||||
CONFIG_MTDRAM_TOTAL_SIZE=0
 | 
			
		||||
# CONFIG_MTD_CFI_INTELEXT is not set
 | 
			
		||||
CONFIG_MTD_CONCAT=y
 | 
			
		||||
CONFIG_MTD_MTDRAM=y
 | 
			
		||||
# CONFIG_NETDEV_1000 is not set
 | 
			
		||||
CONFIG_NO_IOPORT=y
 | 
			
		||||
# CONFIG_OOM_REBOOT is not set
 | 
			
		||||
# CONFIG_RTC is not set
 | 
			
		||||
CONFIG_SCSI=y
 | 
			
		||||
# CONFIG_SCSI_LOWLEVEL_PCMCIA is not set
 | 
			
		||||
# CONFIG_SERIAL_8250 is not set
 | 
			
		||||
CONFIG_SLABINFO=y
 | 
			
		||||
# CONFIG_SVINTO_SIM is not set
 | 
			
		||||
# CONFIG_SYSTEM_PROFILER is not set
 | 
			
		||||
CONFIG_UID16=y
 | 
			
		||||
CONFIG_USB=y
 | 
			
		||||
# CONFIG_USB_ARCH_HAS_EHCI is not set
 | 
			
		||||
# CONFIG_USB_ARCH_HAS_HCD is not set
 | 
			
		||||
# CONFIG_USB_ARCH_HAS_OHCI is not set
 | 
			
		||||
# CONFIG_VLAN_8021Q is not set
 | 
			
		||||
# CONFIG_WLAN_80211 is not set
 | 
			
		||||
@ -1,49 +0,0 @@
 | 
			
		||||
#ifndef _LINUX_ETRAXI2C_H
 | 
			
		||||
#define _LINUX_ETRAXI2C_H
 | 
			
		||||
 | 
			
		||||
/* etraxi2c _IOC_TYPE, bits 8 to 15 in ioctl cmd */
 | 
			
		||||
 | 
			
		||||
#define ETRAXI2C_IOCTYPE 44
 | 
			
		||||
 | 
			
		||||
/* supported ioctl _IOC_NR's */
 | 
			
		||||
 | 
			
		||||
/* in write operations, the argument contains both i2c
 | 
			
		||||
 * slave, register and value.
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#define I2C_WRITEARG(slave, reg, value) (((slave) << 16) | ((reg) << 8) | (value))
 | 
			
		||||
#define I2C_READARG(slave, reg) (((slave) << 16) | ((reg) << 8))
 | 
			
		||||
 | 
			
		||||
#define I2C_ARGSLAVE(arg) ((arg) >> 16)
 | 
			
		||||
#define I2C_ARGREG(arg) (((arg) >> 8) & 0xff)
 | 
			
		||||
#define I2C_ARGVALUE(arg) ((arg) & 0xff)
 | 
			
		||||
 | 
			
		||||
#define I2C_WRITEREG    0x1   /* write to an I2C register */
 | 
			
		||||
#define I2C_READREG     0x2   /* read from an I2C register */
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
EXAMPLE usage:
 | 
			
		||||
 | 
			
		||||
    i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val);
 | 
			
		||||
    ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg);
 | 
			
		||||
 | 
			
		||||
    i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
 | 
			
		||||
    val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
 | 
			
		||||
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
/* Extended part */
 | 
			
		||||
#define I2C_READ        0x4     /* reads from I2C device */
 | 
			
		||||
#define I2C_WRITE       0x3     /* writes to I2C device */
 | 
			
		||||
#define I2C_WRITEREAD   0x5	    /* writes to I2C device where to start reading */
 | 
			
		||||
 | 
			
		||||
typedef struct _I2C_DATA 
 | 
			
		||||
{
 | 
			
		||||
    unsigned char slave;        /* I2C address (8-bit representation) of slave device */
 | 
			
		||||
    unsigned char wbuf[256];    /* Write buffer (length = 256 bytes) */
 | 
			
		||||
	unsigned int  wlen;         /* Number of bytes to write from wbuf[] */   
 | 
			
		||||
	unsigned char rbuf[256];    /* Read buffer (length = 256 bytes) */
 | 
			
		||||
    unsigned int  rlen;         /* Number of bytes to read into rbuf[] */
 | 
			
		||||
} I2C_DATA;
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@ -1,20 +0,0 @@
 | 
			
		||||
#ifndef _I2C_ERRNO_H
 | 
			
		||||
#define _I2C_ERRNO_H
 | 
			
		||||
 | 
			
		||||
#define EI2CNOERRORS  0     /* All fine */
 | 
			
		||||
#define EI2CBUSNFREE  1     /* I2C bus not free */
 | 
			
		||||
#define EI2CWADDRESS  2     /* Address write failed */
 | 
			
		||||
#define EI2CRADDRESS  3     /* Address read failed */
 | 
			
		||||
#define EI2CSENDDATA  4     /* Sending data failed */
 | 
			
		||||
#define EI2CRECVDATA  5     /* Receiving data failed */
 | 
			
		||||
#define EI2CSTRTCOND  6     /* Start condition failed */
 | 
			
		||||
#define EI2CRSTACOND  7     /* Repeated start condition failed */
 | 
			
		||||
#define EI2CSTOPCOND  8     /* Stop condition failed */
 | 
			
		||||
#define EI2CNOSNDBYT  9     /* Number of send bytes is 0, while there's a send buffer defined */ 
 | 
			
		||||
#define EI2CNOSNDBUF  10    /* No send buffer defined, while number of send bytes is not 0 */
 | 
			
		||||
#define EI2CNORCVBYT  11    /* Number of receive bytes is 0, while there's a receive buffer defined */
 | 
			
		||||
#define EI2CNORCVBUF  12    /* No receive buffer defined, while number of receive bytes is not 0 */
 | 
			
		||||
#define EI2CNOACKNLD  13    /* No acknowledge received from slave */
 | 
			
		||||
#define EI2CNOMNUMBR  14    /* No MAJOR number received from kernel while registering the device */
 | 
			
		||||
 | 
			
		||||
#endif /* _I2C_ERRNO_H */
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -1,30 +0,0 @@
 | 
			
		||||
#ifndef _I2C_H
 | 
			
		||||
#define _I2C_H
 | 
			
		||||
 | 
			
		||||
int i2c_init(void);
 | 
			
		||||
 | 
			
		||||
/* High level I2C actions */
 | 
			
		||||
int i2c_writereg(unsigned char theSlave, unsigned char theReg, unsigned char theValue);
 | 
			
		||||
unsigned char i2c_readreg(unsigned char theSlave, unsigned char theReg);
 | 
			
		||||
 | 
			
		||||
/* Low level I2C */
 | 
			
		||||
int i2c_start(void);
 | 
			
		||||
int i2c_stop(void);
 | 
			
		||||
int i2c_outbyte(unsigned char x);
 | 
			
		||||
unsigned char i2c_inbyte(void);
 | 
			
		||||
int i2c_getack(void);
 | 
			
		||||
void i2c_sendack(void);
 | 
			
		||||
void i2c_sendnack(void);
 | 
			
		||||
 | 
			
		||||
/**GVC**/
 | 
			
		||||
/* New low level I2C functions */
 | 
			
		||||
int i2c_read( unsigned char slave, unsigned char* rbuf, unsigned char rlen );
 | 
			
		||||
int i2c_write( unsigned char slave, unsigned char* wbuf, unsigned char wlen );
 | 
			
		||||
int i2c_writeread( unsigned char  slave
 | 
			
		||||
                 , unsigned char* wbuf
 | 
			
		||||
                 , unsigned char  wlen
 | 
			
		||||
                 , unsigned char* rbuf
 | 
			
		||||
                 , unsigned char  rlen
 | 
			
		||||
                 );
 | 
			
		||||
/**END GVC**/
 | 
			
		||||
#endif /* _I2C_H */
 | 
			
		||||
@ -1,141 +0,0 @@
 | 
			
		||||
 | 
			
		||||
/* macros for debug output */
 | 
			
		||||
 | 
			
		||||
#define hcd_dbg(hcd, fmt, args...) \
 | 
			
		||||
	dev_info(hcd->self.controller, fmt, ## args)
 | 
			
		||||
#define hcd_err(hcd, fmt, args...) \
 | 
			
		||||
	dev_err(hcd->self.controller, fmt, ## args)
 | 
			
		||||
#define hcd_info(hcd, fmt, args...) \
 | 
			
		||||
	dev_info(hcd->self.controller, fmt, ## args)
 | 
			
		||||
#define hcd_warn(hcd, fmt, args...) \
 | 
			
		||||
	dev_warn(hcd->self.controller, fmt, ## args)
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define devdrv_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "usb_devdrv dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define devdrv_dbg(fmt, args...) {}
 | 
			
		||||
 | 
			
		||||
#define devdrv_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "usb_devdrv error: ");printk(fmt, ## args)
 | 
			
		||||
#define devdrv_info(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "usb_devdrv: ");printk(fmt, ## args)
 | 
			
		||||
 | 
			
		||||
#define irq_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_irq dbg: ");printk(fmt, ## args)
 | 
			
		||||
#define irq_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "crisv10_irq error: ");printk(fmt, ## args)
 | 
			
		||||
#define irq_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_irq warn: ");printk(fmt, ## args)
 | 
			
		||||
#define irq_info(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_hcd: ");printk(fmt, ## args)
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define rh_dbg(fmt, args...) \
 | 
			
		||||
  printk(KERN_DEBUG "crisv10_rh dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define rh_dbg(fmt, args...) {}
 | 
			
		||||
 | 
			
		||||
#define rh_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "crisv10_rh error: ");printk(fmt, ## args)
 | 
			
		||||
#define rh_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_rh warning: ");printk(fmt, ## args)
 | 
			
		||||
#define rh_info(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_rh: ");printk(fmt, ## args)
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define tc_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_tc dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define tc_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
#define tc_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "crisv10_tc error: ");printk(fmt, ## args)
 | 
			
		||||
/*
 | 
			
		||||
#define tc_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_tc warning: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define tc_warn(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
#define tc_info(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_tc: ");printk(fmt, ## args)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Debug print-outs for various traffic types */
 | 
			
		||||
 | 
			
		||||
#define intr_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_intr warning: ");printk(fmt, ## args)
 | 
			
		||||
/*
 | 
			
		||||
#define intr_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_DEBUG "crisv10_intr dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define intr_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define isoc_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "crisv10_isoc error: ");printk(fmt, ## args)
 | 
			
		||||
/*
 | 
			
		||||
#define isoc_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_isoc warning: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define isoc_warn(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define isoc_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_isoc dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define isoc_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define timer_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_timer warning: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define timer_warn(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
#define timer_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_timer dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define timer_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Debug printouts for events related to late finishing of URBs */
 | 
			
		||||
/*
 | 
			
		||||
#define late_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_late dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define late_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
#define late_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_late warning: ");printk(fmt, ## args)
 | 
			
		||||
/*
 | 
			
		||||
#define errno_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_errno dbg: ");printk(fmt, ## args)
 | 
			
		||||
*/
 | 
			
		||||
#define errno_dbg(fmt, args...) {while(0){}}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define dma_dbg(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_dma dbg: ");printk(fmt, ## args)
 | 
			
		||||
#define dma_err(fmt, args...) \
 | 
			
		||||
        printk(KERN_ERR "crisv10_dma error: ");printk(fmt, ## args)
 | 
			
		||||
#define dma_warn(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_dma warning: ");printk(fmt, ## args)
 | 
			
		||||
#define dma_info(fmt, args...) \
 | 
			
		||||
        printk(KERN_INFO "crisv10_dma: ");printk(fmt, ## args)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define str_dir(pipe) \
 | 
			
		||||
	(usb_pipeout(pipe) ? "out" : "in")
 | 
			
		||||
#define str_type(pipe) \
 | 
			
		||||
	({								\
 | 
			
		||||
		char *s = "?";						\
 | 
			
		||||
		switch (usb_pipetype(pipe)) {				\
 | 
			
		||||
		case PIPE_ISOCHRONOUS:	s = "iso";  break;		\
 | 
			
		||||
		case PIPE_INTERRUPT:	s = "intr"; break;		\
 | 
			
		||||
		case PIPE_CONTROL:	s = "ctrl"; break;		\
 | 
			
		||||
		case PIPE_BULK:		s = "bulk"; break;		\
 | 
			
		||||
		};							\
 | 
			
		||||
		s;							\
 | 
			
		||||
	})
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -1,333 +0,0 @@
 | 
			
		||||
#ifndef __LINUX_ETRAX_USB_H
 | 
			
		||||
#define __LINUX_ETRAX_USB_H
 | 
			
		||||
 | 
			
		||||
#include <linux/types.h>
 | 
			
		||||
#include <linux/list.h>
 | 
			
		||||
 | 
			
		||||
struct USB_IN_Desc {
 | 
			
		||||
  volatile __u16 sw_len;
 | 
			
		||||
  volatile __u16 command;
 | 
			
		||||
  volatile unsigned long next;
 | 
			
		||||
  volatile unsigned long buf;
 | 
			
		||||
  volatile __u16 hw_len;
 | 
			
		||||
  volatile __u16 status;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct USB_SB_Desc {
 | 
			
		||||
  volatile __u16 sw_len;
 | 
			
		||||
  volatile __u16 command;
 | 
			
		||||
  volatile unsigned long next;
 | 
			
		||||
  volatile unsigned long buf;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
struct USB_EP_Desc {
 | 
			
		||||
  volatile __u16 hw_len;
 | 
			
		||||
  volatile __u16 command;
 | 
			
		||||
  volatile unsigned long sub;
 | 
			
		||||
  volatile unsigned long next;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Root Hub port status struct */
 | 
			
		||||
struct crisv10_rh {
 | 
			
		||||
  volatile __u16 wPortChange[2];
 | 
			
		||||
  volatile __u16 wPortStatusPrev[2];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* HCD description */
 | 
			
		||||
struct crisv10_hcd {
 | 
			
		||||
  spinlock_t		lock;
 | 
			
		||||
  __u8			num_ports;
 | 
			
		||||
  __u8                  running;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Endpoint HC private data description */
 | 
			
		||||
struct crisv10_ep_priv {
 | 
			
		||||
  int epid;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Additional software state info for a USB Controller epid */
 | 
			
		||||
struct etrax_epid {
 | 
			
		||||
  __u8 inuse;       /* !0 = setup in Etrax and used for a endpoint */
 | 
			
		||||
  __u8 disabled;    /* !0 = Temporarly disabled to avoid resubmission */
 | 
			
		||||
  __u8 type;        /* Setup as: PIPE_BULK, PIPE_CONTROL ... */
 | 
			
		||||
  __u8 out_traffic; /* !0 = This epid is for out traffic */
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Struct to hold information of scheduled later URB completion */
 | 
			
		||||
struct urb_later_data {
 | 
			
		||||
  struct delayed_work dws;
 | 
			
		||||
  struct usb_hcd *hcd;
 | 
			
		||||
  struct urb *urb;
 | 
			
		||||
  int urb_num;
 | 
			
		||||
  int status;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
typedef enum {
 | 
			
		||||
  STARTED,
 | 
			
		||||
  NOT_STARTED,
 | 
			
		||||
  UNLINK,
 | 
			
		||||
} crisv10_urb_state_t;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
struct crisv10_urb_priv {
 | 
			
		||||
  /* Sequence number for this URB. Every new submited URB gets this from
 | 
			
		||||
     a incrementing counter. Used when a URB is scheduled for later finish to
 | 
			
		||||
     be sure that the intended URB hasn't already been completed (device
 | 
			
		||||
     drivers has a tendency to reuse URBs once they are completed, causing us
 | 
			
		||||
     to not be able to single old ones out only based on the URB pointer.) */
 | 
			
		||||
  __u32 urb_num;
 | 
			
		||||
 | 
			
		||||
  /* The first_sb field is used for freeing all SB descriptors belonging
 | 
			
		||||
     to an urb. The corresponding ep descriptor's sub pointer cannot be
 | 
			
		||||
     used for this since the DMA advances the sub pointer as it processes
 | 
			
		||||
     the sb list. */
 | 
			
		||||
  struct USB_SB_Desc *first_sb;
 | 
			
		||||
 | 
			
		||||
  /* The last_sb field referes to the last SB descriptor that belongs to
 | 
			
		||||
     this urb. This is important to know so we can free the SB descriptors
 | 
			
		||||
     that ranges between first_sb and last_sb. */
 | 
			
		||||
  struct USB_SB_Desc *last_sb;
 | 
			
		||||
  
 | 
			
		||||
  /* The rx_offset field is used in ctrl and bulk traffic to keep track
 | 
			
		||||
     of the offset in the urb's transfer_buffer where incoming data should be
 | 
			
		||||
     copied to. */
 | 
			
		||||
  __u32 rx_offset;
 | 
			
		||||
  
 | 
			
		||||
  /* Counter used in isochronous transfers to keep track of the
 | 
			
		||||
     number of packets received/transmitted.  */
 | 
			
		||||
  __u32 isoc_packet_counter;
 | 
			
		||||
 | 
			
		||||
  /* Flag that marks if this Isoc Out URB has finished it's transfer. Used
 | 
			
		||||
     because several URBs can be finished before list is processed */
 | 
			
		||||
  __u8  isoc_out_done;
 | 
			
		||||
  
 | 
			
		||||
  /* This field is used to pass information about the urb's current state
 | 
			
		||||
     between the various interrupt handlers (thus marked volatile). */
 | 
			
		||||
  volatile crisv10_urb_state_t urb_state;
 | 
			
		||||
  
 | 
			
		||||
  /* In Ctrl transfers consist of (at least) 3 packets: SETUP, IN and ZOUT.
 | 
			
		||||
     When DMA8 sub-channel 2 has processed the SB list for this sequence we
 | 
			
		||||
     get a interrupt. We also get a interrupt for In transfers and which
 | 
			
		||||
     one of these interrupts that comes first depends of data size and device.
 | 
			
		||||
     To be sure that we have got both interrupts before we complete the URB
 | 
			
		||||
     we have these to flags that shows which part that has completed.
 | 
			
		||||
     We can then check when we get one of the interrupts that if the other has
 | 
			
		||||
     occured it's safe for us to complete the URB, otherwise we set appropriate
 | 
			
		||||
     flag and do the completion when we get the other interrupt. */
 | 
			
		||||
  volatile unsigned char ctrl_zout_done;
 | 
			
		||||
  volatile unsigned char ctrl_rx_done;
 | 
			
		||||
 | 
			
		||||
  /* Connection between the submitted urb and ETRAX epid number */
 | 
			
		||||
  __u8 epid;
 | 
			
		||||
  
 | 
			
		||||
  /* The rx_data_list field is used for periodic traffic, to hold
 | 
			
		||||
     received data for later processing in the the complete_urb functions,
 | 
			
		||||
     where the data us copied to the urb's transfer_buffer. Basically, we
 | 
			
		||||
     use this intermediate storage because we don't know when it's safe to
 | 
			
		||||
     reuse the transfer_buffer (FIXME?). */
 | 
			
		||||
  struct list_head rx_data_list;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  /* The interval time rounded up to closest 2^N */
 | 
			
		||||
  int interval;
 | 
			
		||||
 | 
			
		||||
  /* Pool of EP descriptors needed if it's a INTR transfer.
 | 
			
		||||
     Amount of EPs in pool correspons to how many INTR that should
 | 
			
		||||
     be inserted in TxIntrEPList (max 128, defined by MAX_INTR_INTERVAL) */
 | 
			
		||||
  struct USB_EP_Desc* intr_ep_pool[128];
 | 
			
		||||
 | 
			
		||||
  /* The mount of EPs allocated for this INTR URB */
 | 
			
		||||
  int intr_ep_pool_length;
 | 
			
		||||
 | 
			
		||||
  /* Pointer to info struct if URB is scheduled to be finished later */
 | 
			
		||||
  struct urb_later_data* later_data;
 | 
			
		||||
 | 
			
		||||
  /* Allocated bandwidth for isochronous and interrupt traffic */
 | 
			
		||||
  int bandwidth;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* This struct is for passing data from the top half to the bottom half irq
 | 
			
		||||
   handlers */
 | 
			
		||||
struct crisv10_irq_reg {
 | 
			
		||||
  struct usb_hcd* hcd;
 | 
			
		||||
  __u32 r_usb_epid_attn;
 | 
			
		||||
  __u8 r_usb_status;
 | 
			
		||||
  __u16 r_usb_rh_port_status_1;
 | 
			
		||||
  __u16 r_usb_rh_port_status_2;
 | 
			
		||||
  __u32 r_usb_irq_mask_read;
 | 
			
		||||
  __u32 r_usb_fm_number;
 | 
			
		||||
  struct work_struct usb_bh;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* This struct is for passing data from the isoc top half to the isoc bottom
 | 
			
		||||
   half. */
 | 
			
		||||
struct crisv10_isoc_complete_data {
 | 
			
		||||
  struct usb_hcd *hcd;
 | 
			
		||||
  struct urb *urb;
 | 
			
		||||
  struct work_struct usb_bh;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* Entry item for URB lists for each endpint */
 | 
			
		||||
typedef struct urb_entry
 | 
			
		||||
{
 | 
			
		||||
	struct urb *urb;
 | 
			
		||||
	struct list_head list;
 | 
			
		||||
} urb_entry_t;
 | 
			
		||||
 | 
			
		||||
/* ---------------------------------------------------------------------------
 | 
			
		||||
   Virtual Root HUB
 | 
			
		||||
   ------------------------------------------------------------------------- */
 | 
			
		||||
/* destination of request */
 | 
			
		||||
#define RH_INTERFACE               0x01
 | 
			
		||||
#define RH_ENDPOINT                0x02
 | 
			
		||||
#define RH_OTHER                   0x03
 | 
			
		||||
 | 
			
		||||
#define RH_CLASS                   0x20
 | 
			
		||||
#define RH_VENDOR                  0x40
 | 
			
		||||
 | 
			
		||||
/* Requests: bRequest << 8 | bmRequestType */
 | 
			
		||||
#define RH_GET_STATUS           0x0080
 | 
			
		||||
#define RH_CLEAR_FEATURE        0x0100
 | 
			
		||||
#define RH_SET_FEATURE          0x0300
 | 
			
		||||
#define RH_SET_ADDRESS		0x0500
 | 
			
		||||
#define RH_GET_DESCRIPTOR	0x0680
 | 
			
		||||
#define RH_SET_DESCRIPTOR       0x0700
 | 
			
		||||
#define RH_GET_CONFIGURATION	0x0880
 | 
			
		||||
#define RH_SET_CONFIGURATION	0x0900
 | 
			
		||||
#define RH_GET_STATE            0x0280
 | 
			
		||||
#define RH_GET_INTERFACE        0x0A80
 | 
			
		||||
#define RH_SET_INTERFACE        0x0B00
 | 
			
		||||
#define RH_SYNC_FRAME           0x0C80
 | 
			
		||||
/* Our Vendor Specific Request */
 | 
			
		||||
#define RH_SET_EP               0x2000
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* Hub port features */
 | 
			
		||||
#define RH_PORT_CONNECTION         0x00
 | 
			
		||||
#define RH_PORT_ENABLE             0x01
 | 
			
		||||
#define RH_PORT_SUSPEND            0x02
 | 
			
		||||
#define RH_PORT_OVER_CURRENT       0x03
 | 
			
		||||
#define RH_PORT_RESET              0x04
 | 
			
		||||
#define RH_PORT_POWER              0x08
 | 
			
		||||
#define RH_PORT_LOW_SPEED          0x09
 | 
			
		||||
#define RH_C_PORT_CONNECTION       0x10
 | 
			
		||||
#define RH_C_PORT_ENABLE           0x11
 | 
			
		||||
#define RH_C_PORT_SUSPEND          0x12
 | 
			
		||||
#define RH_C_PORT_OVER_CURRENT     0x13
 | 
			
		||||
#define RH_C_PORT_RESET            0x14
 | 
			
		||||
 | 
			
		||||
/* Hub features */
 | 
			
		||||
#define RH_C_HUB_LOCAL_POWER       0x00
 | 
			
		||||
#define RH_C_HUB_OVER_CURRENT      0x01
 | 
			
		||||
 | 
			
		||||
#define RH_DEVICE_REMOTE_WAKEUP    0x00
 | 
			
		||||
#define RH_ENDPOINT_STALL          0x01
 | 
			
		||||
 | 
			
		||||
/* Our Vendor Specific feature */
 | 
			
		||||
#define RH_REMOVE_EP               0x00
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define RH_ACK                     0x01
 | 
			
		||||
#define RH_REQ_ERR                 -1
 | 
			
		||||
#define RH_NACK                    0x00
 | 
			
		||||
 | 
			
		||||
/* Field definitions for */
 | 
			
		||||
 | 
			
		||||
#define USB_IN_command__eol__BITNR      0 /* command macros */
 | 
			
		||||
#define USB_IN_command__eol__WIDTH      1
 | 
			
		||||
#define USB_IN_command__eol__no         0
 | 
			
		||||
#define USB_IN_command__eol__yes        1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_command__intr__BITNR     3
 | 
			
		||||
#define USB_IN_command__intr__WIDTH     1
 | 
			
		||||
#define USB_IN_command__intr__no        0
 | 
			
		||||
#define USB_IN_command__intr__yes       1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_status__eop__BITNR       1 /* status macros. */
 | 
			
		||||
#define USB_IN_status__eop__WIDTH       1
 | 
			
		||||
#define USB_IN_status__eop__no          0
 | 
			
		||||
#define USB_IN_status__eop__yes         1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_status__eot__BITNR       5
 | 
			
		||||
#define USB_IN_status__eot__WIDTH       1
 | 
			
		||||
#define USB_IN_status__eot__no          0
 | 
			
		||||
#define USB_IN_status__eot__yes         1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_status__error__BITNR     6
 | 
			
		||||
#define USB_IN_status__error__WIDTH     1
 | 
			
		||||
#define USB_IN_status__error__no        0
 | 
			
		||||
#define USB_IN_status__error__yes       1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_status__nodata__BITNR    7
 | 
			
		||||
#define USB_IN_status__nodata__WIDTH    1
 | 
			
		||||
#define USB_IN_status__nodata__no       0
 | 
			
		||||
#define USB_IN_status__nodata__yes      1
 | 
			
		||||
 | 
			
		||||
#define USB_IN_status__epid__BITNR      8
 | 
			
		||||
#define USB_IN_status__epid__WIDTH      5
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__eol__BITNR      0
 | 
			
		||||
#define USB_EP_command__eol__WIDTH      1
 | 
			
		||||
#define USB_EP_command__eol__no         0
 | 
			
		||||
#define USB_EP_command__eol__yes        1
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__eof__BITNR      1
 | 
			
		||||
#define USB_EP_command__eof__WIDTH      1
 | 
			
		||||
#define USB_EP_command__eof__no         0
 | 
			
		||||
#define USB_EP_command__eof__yes        1
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__intr__BITNR     3
 | 
			
		||||
#define USB_EP_command__intr__WIDTH     1
 | 
			
		||||
#define USB_EP_command__intr__no        0
 | 
			
		||||
#define USB_EP_command__intr__yes       1
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__enable__BITNR   4
 | 
			
		||||
#define USB_EP_command__enable__WIDTH   1
 | 
			
		||||
#define USB_EP_command__enable__no      0
 | 
			
		||||
#define USB_EP_command__enable__yes     1
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__hw_valid__BITNR 5
 | 
			
		||||
#define USB_EP_command__hw_valid__WIDTH 1
 | 
			
		||||
#define USB_EP_command__hw_valid__no    0
 | 
			
		||||
#define USB_EP_command__hw_valid__yes   1
 | 
			
		||||
 | 
			
		||||
#define USB_EP_command__epid__BITNR     8
 | 
			
		||||
#define USB_EP_command__epid__WIDTH     5
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__eol__BITNR      0 /* command macros. */
 | 
			
		||||
#define USB_SB_command__eol__WIDTH      1
 | 
			
		||||
#define USB_SB_command__eol__no         0
 | 
			
		||||
#define USB_SB_command__eol__yes        1
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__eot__BITNR      1
 | 
			
		||||
#define USB_SB_command__eot__WIDTH      1
 | 
			
		||||
#define USB_SB_command__eot__no         0
 | 
			
		||||
#define USB_SB_command__eot__yes        1
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__intr__BITNR     3
 | 
			
		||||
#define USB_SB_command__intr__WIDTH     1
 | 
			
		||||
#define USB_SB_command__intr__no        0
 | 
			
		||||
#define USB_SB_command__intr__yes       1
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__tt__BITNR       4
 | 
			
		||||
#define USB_SB_command__tt__WIDTH       2
 | 
			
		||||
#define USB_SB_command__tt__zout        0
 | 
			
		||||
#define USB_SB_command__tt__in          1
 | 
			
		||||
#define USB_SB_command__tt__out         2
 | 
			
		||||
#define USB_SB_command__tt__setup       3
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__rem__BITNR      8
 | 
			
		||||
#define USB_SB_command__rem__WIDTH      6
 | 
			
		||||
 | 
			
		||||
#define USB_SB_command__full__BITNR     6
 | 
			
		||||
#define USB_SB_command__full__WIDTH     1
 | 
			
		||||
#define USB_SB_command__full__no        0
 | 
			
		||||
#define USB_SB_command__full__yes       1
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
@ -1,74 +0,0 @@
 | 
			
		||||
Index: linux-2.6.25.16/arch/cris/arch-v10/drivers/ds1302.c
 | 
			
		||||
===================================================================
 | 
			
		||||
--- linux-2.6.25.16.o/arch/cris/arch-v10/drivers/ds1302.c	2008-10-26 15:54:02.000000000 +0100
 | 
			
		||||
+++ linux-2.6.25.16/arch/cris/arch-v10/drivers/ds1302.c	2008-10-26 15:59:37.000000000 +0100
 | 
			
		||||
@@ -21,6 +21,7 @@
 | 
			
		||||
 #include <linux/delay.h>
 | 
			
		||||
 #include <linux/bcd.h>
 | 
			
		||||
 #include <linux/capability.h>
 | 
			
		||||
+#include <linux/device.h>
 | 
			
		||||
 
 | 
			
		||||
 #include <asm/uaccess.h>
 | 
			
		||||
 #include <asm/system.h>
 | 
			
		||||
@@ -489,6 +490,10 @@
 | 
			
		||||
 	return 0;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
+#ifdef CONFIG_SYSFS
 | 
			
		||||
+static struct class *rtc_class;
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
 static int __init ds1302_register(void)
 | 
			
		||||
 {
 | 
			
		||||
 	ds1302_init();
 | 
			
		||||
@@ -497,6 +502,12 @@
 | 
			
		||||
 		       ds1302_name, RTC_MAJOR_NR);
 | 
			
		||||
 		return -1;
 | 
			
		||||
 	}
 | 
			
		||||
+	#ifdef CONFIG_SYSFS
 | 
			
		||||
+	rtc_class = class_create(THIS_MODULE, "rtc");
 | 
			
		||||
+	class_device_create(rtc_class, NULL, MKDEV(RTC_MAJOR_NR, 0),
 | 
			
		||||
+		NULL, "rtc");
 | 
			
		||||
+	#endif
 | 
			
		||||
+
 | 
			
		||||
         return 0;
 | 
			
		||||
 
 | 
			
		||||
 }
 | 
			
		||||
Index: linux-2.6.25.16/arch/cris/arch-v10/drivers/gpio.c
 | 
			
		||||
===================================================================
 | 
			
		||||
--- linux-2.6.25.16.o/arch/cris/arch-v10/drivers/gpio.c	2008-10-26 15:56:28.000000000 +0100
 | 
			
		||||
+++ linux-2.6.25.16/arch/cris/arch-v10/drivers/gpio.c	2008-10-26 15:57:41.000000000 +0100
 | 
			
		||||
@@ -20,6 +20,7 @@
 | 
			
		||||
 #include <linux/poll.h>
 | 
			
		||||
 #include <linux/init.h>
 | 
			
		||||
 #include <linux/interrupt.h>
 | 
			
		||||
+#include <linux/device.h>
 | 
			
		||||
 
 | 
			
		||||
 #include <asm/etraxgpio.h>
 | 
			
		||||
 #include <asm/arch/svinto.h>
 | 
			
		||||
@@ -768,6 +769,10 @@
 | 
			
		||||
 
 | 
			
		||||
 /* main driver initialization routine, called from mem.c */
 | 
			
		||||
 
 | 
			
		||||
+#ifdef CONFIG_SYSFS
 | 
			
		||||
+static struct class *gpio_class;
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
 static int __init gpio_init(void)
 | 
			
		||||
 {
 | 
			
		||||
 	int res;
 | 
			
		||||
@@ -781,6 +786,13 @@
 | 
			
		||||
 		return res;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
+#ifdef CONFIG_SYSFS
 | 
			
		||||
+	gpio_class = class_create(THIS_MODULE, "gpio");
 | 
			
		||||
+	class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 0), NULL, "gpioa");
 | 
			
		||||
+	class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 1), NULL, "gpiob");
 | 
			
		||||
+	class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 2), NULL, "leds");
 | 
			
		||||
+	class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 3), NULL, "gpiog");
 | 
			
		||||
+#endif
 | 
			
		||||
 	/* Clear all leds */
 | 
			
		||||
 #if defined (CONFIG_ETRAX_CSP0_LEDS) ||  defined (CONFIG_ETRAX_PA_LEDS) || defined (CONFIG_ETRAX_PB_LEDS)
 | 
			
		||||
 	CRIS_LED_NETWORK_SET(0);
 | 
			
		||||
 | 
			
		||||
@ -1,302 +0,0 @@
 | 
			
		||||
--- a/arch/cris/Makefile
 | 
			
		||||
+++ b/arch/cris/Makefile
 | 
			
		||||
@@ -33,7 +33,7 @@ endif
 | 
			
		||||
 
 | 
			
		||||
 LD = $(CROSS_COMPILE)ld -mcrislinux
 | 
			
		||||
 
 | 
			
		||||
-OBJCOPYFLAGS := -O binary -R .note -R .comment -S
 | 
			
		||||
+OBJCOPYFLAGS := -O binary -R .bss -R .note -R .note.gnu.build-id -R .comment -S
 | 
			
		||||
 
 | 
			
		||||
 CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
 | 
			
		||||
 
 | 
			
		||||
--- a/arch/cris/arch-v10/boot/Makefile
 | 
			
		||||
+++ b/arch/cris/arch-v10/boot/Makefile
 | 
			
		||||
@@ -2,9 +2,6 @@
 | 
			
		||||
 # arch/cris/arch-v10/boot/Makefile
 | 
			
		||||
 #
 | 
			
		||||
 
 | 
			
		||||
-OBJCOPY = objcopy-cris
 | 
			
		||||
-OBJCOPYFLAGS = -O binary --remove-section=.bss
 | 
			
		||||
-
 | 
			
		||||
 subdir- := compressed rescue
 | 
			
		||||
 targets := Image
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +11,6 @@ $(obj)/Image: vmlinux FORCE
 | 
			
		||||
 
 | 
			
		||||
 $(obj)/compressed/vmlinux: $(obj)/Image FORCE
 | 
			
		||||
 	$(Q)$(MAKE) $(build)=$(obj)/compressed $@
 | 
			
		||||
-	$(Q)$(MAKE) $(build)=$(obj)/rescue $(obj)/rescue/rescue.bin
 | 
			
		||||
 
 | 
			
		||||
 $(obj)/zImage:  $(obj)/compressed/vmlinux
 | 
			
		||||
 	@cp $< $@
 | 
			
		||||
--- a/arch/cris/arch-v10/boot/compressed/Makefile
 | 
			
		||||
+++ b/arch/cris/arch-v10/boot/compressed/Makefile
 | 
			
		||||
@@ -2,13 +2,9 @@
 | 
			
		||||
 # arch/cris/arch-v10/boot/compressed/Makefile
 | 
			
		||||
 #
 | 
			
		||||
 
 | 
			
		||||
-CC = gcc-cris -melf $(LINUXINCLUDE)
 | 
			
		||||
 ccflags-y += -O2
 | 
			
		||||
-LD = ld-cris
 | 
			
		||||
 ldflags-y += -T $(obj)/decompress.ld
 | 
			
		||||
 OBJECTS = $(obj)/head.o $(obj)/misc.o
 | 
			
		||||
-OBJCOPY = objcopy-cris
 | 
			
		||||
-OBJCOPYFLAGS = -O binary --remove-section=.bss
 | 
			
		||||
 
 | 
			
		||||
 quiet_cmd_image = BUILD   $@
 | 
			
		||||
 cmd_image = cat $(obj)/decompress.bin $(obj)/piggy.gz > $@
 | 
			
		||||
@@ -21,12 +17,6 @@
 | 
			
		||||
 $(obj)/decompress.bin: $(obj)/decompress.o FORCE
 | 
			
		||||
 	$(call if_changed,objcopy)
 | 
			
		||||
 
 | 
			
		||||
-$(obj)/head.o: $(obj)/head.S .config
 | 
			
		||||
-	@$(CC) -D__ASSEMBLY__ -traditional -c $< -o $@
 | 
			
		||||
-
 | 
			
		||||
-$(obj)/misc.o: $(obj)/misc.c .config
 | 
			
		||||
-	@$(CC) -D__KERNEL__ -c $< -o $@
 | 
			
		||||
-
 | 
			
		||||
 $(obj)/vmlinux: $(obj)/piggy.gz $(obj)/decompress.bin FORCE
 | 
			
		||||
 	$(call if_changed,image)
 | 
			
		||||
 
 | 
			
		||||
--- a/arch/cris/arch-v10/boot/compressed/decompress.ld
 | 
			
		||||
+++ b/arch/cris/arch-v10/boot/compressed/decompress.ld
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
-OUTPUT_FORMAT(elf32-us-cris)
 | 
			
		||||
+OUTPUT_FORMAT(elf32-cris)
 | 
			
		||||
 
 | 
			
		||||
 MEMORY 
 | 
			
		||||
 	{
 | 
			
		||||
--- a/arch/cris/arch-v10/boot/compressed/head.S
 | 
			
		||||
+++ b/arch/cris/arch-v10/boot/compressed/head.S
 | 
			
		||||
@@ -10,13 +10,14 @@
 | 
			
		||||
 
 | 
			
		||||
 #define ASSEMBLER_MACROS_ONLY
 | 
			
		||||
 #include <asm/arch/sv_addr_ag.h>
 | 
			
		||||
+#include <linux/autoconf.h>
 | 
			
		||||
 
 | 
			
		||||
 #define RAM_INIT_MAGIC 0x56902387
 | 
			
		||||
 #define COMMAND_LINE_MAGIC 0x87109563
 | 
			
		||||
 
 | 
			
		||||
 	;; Exported symbols
 | 
			
		||||
 	
 | 
			
		||||
-	.globl	_input_data
 | 
			
		||||
+	.globl	input_data
 | 
			
		||||
 
 | 
			
		||||
 	
 | 
			
		||||
 	.text
 | 
			
		||||
@@ -26,7 +27,7 @@
 | 
			
		||||
 
 | 
			
		||||
 ;; We need to initialze DRAM registers before we start using the DRAM
 | 
			
		||||
 	
 | 
			
		||||
-	cmp.d	RAM_INIT_MAGIC, r8	; Already initialized?
 | 
			
		||||
+	cmp.d	RAM_INIT_MAGIC, $r8	; Already initialized?
 | 
			
		||||
 	beq	dram_init_finished
 | 
			
		||||
 	nop
 | 
			
		||||
 	
 | 
			
		||||
@@ -36,91 +37,91 @@ dram_init_finished:	
 | 
			
		||||
 		
 | 
			
		||||
 	;; Initiate the PA and PB ports
 | 
			
		||||
 
 | 
			
		||||
-	move.b   CONFIG_ETRAX_DEF_R_PORT_PA_DATA, r0
 | 
			
		||||
-	move.b   r0, [R_PORT_PA_DATA]
 | 
			
		||||
+	move.b   CONFIG_ETRAX_DEF_R_PORT_PA_DATA, $r0
 | 
			
		||||
+	move.b   $r0, [R_PORT_PA_DATA]
 | 
			
		||||
 
 | 
			
		||||
-	move.b   CONFIG_ETRAX_DEF_R_PORT_PA_DIR, r0
 | 
			
		||||
-	move.b   r0, [R_PORT_PA_DIR]
 | 
			
		||||
+	move.b   CONFIG_ETRAX_DEF_R_PORT_PA_DIR, $r0
 | 
			
		||||
+	move.b   $r0, [R_PORT_PA_DIR]
 | 
			
		||||
 
 | 
			
		||||
-	move.b   CONFIG_ETRAX_DEF_R_PORT_PB_DATA, r0
 | 
			
		||||
-	move.b   r0, [R_PORT_PB_DATA]
 | 
			
		||||
+	move.b   CONFIG_ETRAX_DEF_R_PORT_PB_DATA, $r0
 | 
			
		||||
+	move.b   $r0, [R_PORT_PB_DATA]
 | 
			
		||||
 
 | 
			
		||||
-	move.b   CONFIG_ETRAX_DEF_R_PORT_PB_DIR, r0
 | 
			
		||||
-	move.b   r0, [R_PORT_PB_DIR]
 | 
			
		||||
+	move.b   CONFIG_ETRAX_DEF_R_PORT_PB_DIR, $r0
 | 
			
		||||
+	move.b   $r0, [R_PORT_PB_DIR]
 | 
			
		||||
 
 | 
			
		||||
 	;; Setup the stack to a suitably high address.
 | 
			
		||||
 	;; We assume 8 MB is the minimum DRAM in an eLinux
 | 
			
		||||
 	;; product and put the sp at the top for now.
 | 
			
		||||
 
 | 
			
		||||
-	move.d	0x40800000, sp
 | 
			
		||||
+	move.d	0x40800000, $sp
 | 
			
		||||
 
 | 
			
		||||
 	;; Figure out where the compressed piggyback image is
 | 
			
		||||
 	;; in the flash (since we wont try to copy it to DRAM
 | 
			
		||||
 	;; before unpacking). It is at _edata, but in flash.
 | 
			
		||||
 	;; Use (_edata - basse) as offset to the current PC.
 | 
			
		||||
 	
 | 
			
		||||
-basse:	move.d	pc, r5
 | 
			
		||||
-	and.d	0x7fffffff, r5	; strip any non-cache bit
 | 
			
		||||
-	subq	2, r5		; compensate for the move.d pc instr
 | 
			
		||||
-	move.d	r5, r0		; save for later - flash address of 'basse'
 | 
			
		||||
-	add.d	_edata, r5
 | 
			
		||||
-	sub.d	basse, r5	; r5 = flash address of '_edata'
 | 
			
		||||
+basse:	move.d	$pc, $r5
 | 
			
		||||
+	and.d	0x7fffffff, $r5	; strip any non-cache bit
 | 
			
		||||
+	subq	2, $r5		; compensate for the move.d pc instr
 | 
			
		||||
+	move.d	$r5, $r0		; save for later - flash address of 'basse'
 | 
			
		||||
+	add.d	_edata, $r5
 | 
			
		||||
+	sub.d	basse, $r5	; r5 = flash address of '_edata'
 | 
			
		||||
 	
 | 
			
		||||
 	;; Copy text+data to DRAM
 | 
			
		||||
 	
 | 
			
		||||
-	move.d	basse, r1	; destination
 | 
			
		||||
-	move.d	_edata, r2	; end destination
 | 
			
		||||
-1:	move.w	[r0+], r3
 | 
			
		||||
-	move.w	r3, [r1+]
 | 
			
		||||
-	cmp.d	r2, r1
 | 
			
		||||
+	move.d	basse, $r1	; destination
 | 
			
		||||
+	move.d	_edata, $r2	; end destination
 | 
			
		||||
+1:	move.w	[$r0+], $r3
 | 
			
		||||
+	move.w	$r3, [$r1+]
 | 
			
		||||
+	cmp.d	$r2, $r1
 | 
			
		||||
 	bcs	1b
 | 
			
		||||
 	nop
 | 
			
		||||
 
 | 
			
		||||
-	move.d	r5, [_input_data] ; for the decompressor
 | 
			
		||||
+	move.d	$r5, [input_data] ; for the decompressor
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 	;; Clear the decompressors BSS (between _edata and _end)
 | 
			
		||||
 	
 | 
			
		||||
-	moveq	0, r0
 | 
			
		||||
-	move.d	_edata, r1
 | 
			
		||||
-	move.d	_end, r2
 | 
			
		||||
-1:	move.w	r0, [r1+]
 | 
			
		||||
-	cmp.d	r2, r1
 | 
			
		||||
+	moveq	0, $r0
 | 
			
		||||
+	move.d	_edata, $r1
 | 
			
		||||
+	move.d	_end, $r2
 | 
			
		||||
+1:	move.w	$r0, [$r1+]
 | 
			
		||||
+	cmp.d	$r2, $r1
 | 
			
		||||
 	bcs	1b
 | 
			
		||||
 	nop
 | 
			
		||||
 
 | 
			
		||||
 	;;  Save command line magic and address.
 | 
			
		||||
-	move.d	_cmd_line_magic, $r12
 | 
			
		||||
+	move.d	cmd_line_magic, $r12
 | 
			
		||||
 	move.d  $r10, [$r12]
 | 
			
		||||
-	move.d	_cmd_line_addr, $r12
 | 
			
		||||
+	move.d	cmd_line_addr, $r12
 | 
			
		||||
 	move.d  $r11, [$r12]
 | 
			
		||||
 	
 | 
			
		||||
 	;; Do the decompression and save compressed size in _inptr
 | 
			
		||||
 
 | 
			
		||||
-	jsr	_decompress_kernel
 | 
			
		||||
+	jsr	decompress_kernel
 | 
			
		||||
 	
 | 
			
		||||
 	;; Put start address of root partition in r9 so the kernel can use it
 | 
			
		||||
 	;; when mounting from flash
 | 
			
		||||
 
 | 
			
		||||
-	move.d	[_input_data], r9	; flash address of compressed kernel
 | 
			
		||||
-	add.d	[_inptr], r9		; size of compressed kernel
 | 
			
		||||
+	move.d	[input_data], $r9	; flash address of compressed kernel
 | 
			
		||||
+	add.d	[inptr], $r9		; size of compressed kernel
 | 
			
		||||
 
 | 
			
		||||
 	;; Restore command line magic and address.
 | 
			
		||||
-	move.d  _cmd_line_magic, $r10
 | 
			
		||||
+	move.d  cmd_line_magic, $r10
 | 
			
		||||
 	move.d  [$r10], $r10
 | 
			
		||||
-	move.d  _cmd_line_addr, $r11
 | 
			
		||||
+	move.d  cmd_line_addr, $r11
 | 
			
		||||
 	move.d  [$r11], $r11
 | 
			
		||||
 
 | 
			
		||||
 	;; Enter the decompressed kernel
 | 
			
		||||
-	move.d	RAM_INIT_MAGIC, r8	; Tell kernel that DRAM is initialized
 | 
			
		||||
+	move.d	RAM_INIT_MAGIC, $r8	; Tell kernel that DRAM is initialized
 | 
			
		||||
 	jump	0x40004000	; kernel is linked to this address
 | 
			
		||||
 	
 | 
			
		||||
 	.data
 | 
			
		||||
 
 | 
			
		||||
-_input_data:
 | 
			
		||||
+input_data:
 | 
			
		||||
 	.dword	0		; used by the decompressor
 | 
			
		||||
-_cmd_line_magic:
 | 
			
		||||
+cmd_line_magic:
 | 
			
		||||
 	.dword 0
 | 
			
		||||
-_cmd_line_addr:
 | 
			
		||||
+cmd_line_addr:
 | 
			
		||||
 	.dword 0
 | 
			
		||||
 #include "../../lib/hw_settings.S"
 | 
			
		||||
--- a/arch/cris/arch-v10/boot/compressed/misc.c
 | 
			
		||||
+++ b/arch/cris/arch-v10/boot/compressed/misc.c
 | 
			
		||||
@@ -5,7 +5,7 @@
 | 
			
		||||
  * adapted for Linux.
 | 
			
		||||
  *
 | 
			
		||||
  * malloc by Hannu Savolainen 1993 and Matthias Urlichs 1994
 | 
			
		||||
- * puts by Nick Holloway 1993, better puts by Martin Mares 1995
 | 
			
		||||
+ * putstr by Nick Holloway 1993, better putstr by Martin Mares 1995
 | 
			
		||||
  * adaptation for Linux/CRIS Axis Communications AB, 1999
 | 
			
		||||
  *
 | 
			
		||||
  */
 | 
			
		||||
@@ -99,12 +99,12 @@ static void error(char *m);
 | 
			
		||||
 static void gzip_mark(void **);
 | 
			
		||||
 static void gzip_release(void **);
 | 
			
		||||
  
 | 
			
		||||
-static void puts(const char *);
 | 
			
		||||
+static void putstr(const char *);
 | 
			
		||||
 
 | 
			
		||||
 /* the "heap" is put directly after the BSS ends, at end */
 | 
			
		||||
   
 | 
			
		||||
-extern int end;
 | 
			
		||||
-static long free_mem_ptr = (long)&end;
 | 
			
		||||
+extern int _end;
 | 
			
		||||
+static long free_mem_ptr = (long)&_end;
 | 
			
		||||
  
 | 
			
		||||
 #include "../../../../../lib/inflate.c"
 | 
			
		||||
 
 | 
			
		||||
@@ -139,7 +139,7 @@ static void gzip_release(void **ptr)
 | 
			
		||||
 /* decompressor info and error messages to serial console */
 | 
			
		||||
 
 | 
			
		||||
 static void
 | 
			
		||||
-puts(const char *s)
 | 
			
		||||
+putstr(const char *s)
 | 
			
		||||
 {
 | 
			
		||||
 #ifndef CONFIG_ETRAX_DEBUG_PORT_NULL
 | 
			
		||||
 	while(*s) {
 | 
			
		||||
@@ -209,9 +209,9 @@ flush_window()
 | 
			
		||||
 static void
 | 
			
		||||
 error(char *x)
 | 
			
		||||
 {
 | 
			
		||||
-	puts("\n\n");
 | 
			
		||||
-	puts(x);
 | 
			
		||||
-	puts("\n\n -- System halted\n");
 | 
			
		||||
+	putstr("\n\n");
 | 
			
		||||
+	putstr(x);
 | 
			
		||||
+	putstr("\n\n -- System halted\n");
 | 
			
		||||
 
 | 
			
		||||
 	while(1);	/* Halt */
 | 
			
		||||
 }
 | 
			
		||||
@@ -257,14 +257,7 @@ decompress_kernel()
 | 
			
		||||
 
 | 
			
		||||
 	makecrc();
 | 
			
		||||
 
 | 
			
		||||
-	__asm__ volatile ("move vr,%0" : "=rm" (revision));
 | 
			
		||||
-	if (revision < 10)
 | 
			
		||||
-	{
 | 
			
		||||
-		puts("You need an ETRAX 100LX to run linux 2.6\n");
 | 
			
		||||
-		while(1);
 | 
			
		||||
-	}
 | 
			
		||||
-
 | 
			
		||||
-	puts("Uncompressing Linux...\n");
 | 
			
		||||
+	putstr("Uncompressing Linux...\n");
 | 
			
		||||
 	gunzip();
 | 
			
		||||
-	puts("Done. Now booting the kernel.\n");
 | 
			
		||||
+	putstr("Done. Now booting the kernel.\n");
 | 
			
		||||
 }
 | 
			
		||||
--- a/arch/cris/arch-v10/mm/init.c
 | 
			
		||||
+++ b/arch/cris/arch-v10/mm/init.c
 | 
			
		||||
@@ -184,6 +184,9 @@ paging_init(void)
 | 
			
		||||
 
 | 
			
		||||
 	free_area_init_node(0, &contig_page_data, zones_size, PAGE_OFFSET >> PAGE_SHIFT, 0);
 | 
			
		||||
 }
 | 
			
		||||
+void free_initrd_mem(unsigned long start, unsigned long end)
 | 
			
		||||
+{
 | 
			
		||||
+}
 | 
			
		||||
 
 | 
			
		||||
 /* Initialize remaps of some I/O-ports. It is important that this
 | 
			
		||||
  * is called before any driver is initialized.
 | 
			
		||||
@ -1,11 +0,0 @@
 | 
			
		||||
--- a/drivers/net/cris/eth_v10.c
 | 
			
		||||
+++ b/drivers/net/cris/eth_v10.c
 | 
			
		||||
@@ -1707,7 +1707,7 @@ e100_set_network_leds(int active)
 | 
			
		||||
 static void
 | 
			
		||||
 e100_netpoll(struct net_device* netdev)
 | 
			
		||||
 {
 | 
			
		||||
-	e100rxtx_interrupt(NETWORK_DMA_TX_IRQ_NBR, netdev, NULL);
 | 
			
		||||
+	e100rxtx_interrupt(NETWORK_DMA_TX_IRQ_NBR, netdev);
 | 
			
		||||
 }
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -1,11 +0,0 @@
 | 
			
		||||
--- a/include/asm-cris/Kbuild
 | 
			
		||||
+++ b/include/asm-cris/Kbuild
 | 
			
		||||
@@ -1,7 +1,6 @@
 | 
			
		||||
 include include/asm-generic/Kbuild.asm
 | 
			
		||||
 
 | 
			
		||||
-header-$(CONFIG_ETRAX_ARCH_V10) += arch-v10/
 | 
			
		||||
-header-$(CONFIG_ETRAX_ARCH_V32) += arch-v32/
 | 
			
		||||
+header-y += arch-v10/ arch-v32/
 | 
			
		||||
 
 | 
			
		||||
 header-y += ethernet.h
 | 
			
		||||
 header-y += rtc.h
 | 
			
		||||
@ -1,13 +0,0 @@
 | 
			
		||||
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
 | 
			
		||||
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
 | 
			
		||||
@@ -297,8 +297,8 @@ struct mtd_info *cfi_cmdset_0002(struct 
 | 
			
		||||
 			return NULL;
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
-		if (extp->MajorVersion != '1' ||
 | 
			
		||||
-		    (extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
 | 
			
		||||
+		if (extp->MajorVersion < '0' || extp->MajorVersion > '3' ||
 | 
			
		||||
+			(extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
 | 
			
		||||
 		        if (cfi->mfr == MANUFACTURER_SAMSUNG &&
 | 
			
		||||
 			    (extp->MajorVersion == '3' && extp->MinorVersion == '3')) {
 | 
			
		||||
 			    printk(KERN_NOTICE "  Newer Samsung flash detected, "
 | 
			
		||||
@ -1,88 +0,0 @@
 | 
			
		||||
--- a/arch/cris/arch-v10/lib/hw_settings.S
 | 
			
		||||
+++ b/arch/cris/arch-v10/lib/hw_settings.S
 | 
			
		||||
@@ -60,3 +60,5 @@
 | 
			
		||||
 	.dword R_PORT_PB_SET
 | 
			
		||||
 	.dword PB_SET_VALUE
 | 
			
		||||
 	.dword 0 ; No more register values
 | 
			
		||||
+	.ascii "ACME_PART_MAGIC" 
 | 
			
		||||
+	.dword 0xdeadc0de
 | 
			
		||||
--- a/arch/cris/arch-v10/drivers/axisflashmap.c
 | 
			
		||||
+++ b/arch/cris/arch-v10/drivers/axisflashmap.c
 | 
			
		||||
@@ -113,7 +113,7 @@ static struct map_info map_cse1 = {
 | 
			
		||||
 
 | 
			
		||||
 /* If no partition-table was found, we use this default-set. */
 | 
			
		||||
 #define MAX_PARTITIONS         7
 | 
			
		||||
-#define NUM_DEFAULT_PARTITIONS 3
 | 
			
		||||
+#define NUM_DEFAULT_PARTITIONS 2
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
  * Default flash size is 2MB. CONFIG_ETRAX_PTABLE_SECTOR is most likely the
 | 
			
		||||
@@ -122,19 +122,14 @@ static struct map_info map_cse1 = {
 | 
			
		||||
  */
 | 
			
		||||
 static struct mtd_partition axis_default_partitions[NUM_DEFAULT_PARTITIONS] = {
 | 
			
		||||
 	{
 | 
			
		||||
-		.name = "boot firmware",
 | 
			
		||||
-		.size = CONFIG_ETRAX_PTABLE_SECTOR,
 | 
			
		||||
-		.offset = 0
 | 
			
		||||
-	},
 | 
			
		||||
-	{
 | 
			
		||||
 		.name = "kernel",
 | 
			
		||||
-		.size = 0x200000 - (6 * CONFIG_ETRAX_PTABLE_SECTOR),
 | 
			
		||||
-		.offset = CONFIG_ETRAX_PTABLE_SECTOR
 | 
			
		||||
+		.size = 0x00,
 | 
			
		||||
+		.offset = 0
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
-		.name = "filesystem",
 | 
			
		||||
-		.size = 5 * CONFIG_ETRAX_PTABLE_SECTOR,
 | 
			
		||||
-		.offset = 0x200000 - (5 * CONFIG_ETRAX_PTABLE_SECTOR)
 | 
			
		||||
+		.name = "rootfs",
 | 
			
		||||
+		.size = 0x200000 ,
 | 
			
		||||
+		.offset = 0x200000
 | 
			
		||||
 	}
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@@ -281,6 +276,11 @@ static int __init init_axis_flash(void)
 | 
			
		||||
 	struct partitiontable_entry *ptable;
 | 
			
		||||
 	int use_default_ptable = 1; /* Until proven otherwise. */
 | 
			
		||||
 	const char pmsg[] = "  /dev/flash%d at 0x%08x, size 0x%08x\n";
 | 
			
		||||
+	unsigned int kernel_part_size = 0;
 | 
			
		||||
+	unsigned char *flash_mem = (unsigned char*)(FLASH_CACHED_ADDR);
 | 
			
		||||
+	unsigned int flash_scan_count = 0;
 | 
			
		||||
+	const char *part_magic = "ACME_PART_MAGIC";
 | 
			
		||||
+	unsigned int magic_len = strlen(part_magic);
 | 
			
		||||
 
 | 
			
		||||
 	if (!(mymtd = flash_probe())) {
 | 
			
		||||
 		/* There's no reason to use this module if no flash chip can
 | 
			
		||||
@@ -292,6 +292,31 @@ static int __init init_axis_flash(void)
 | 
			
		||||
 		       mymtd->name, mymtd->size);
 | 
			
		||||
 		axisflash_mtd = mymtd;
 | 
			
		||||
 	}
 | 
			
		||||
+	/* scan flash to findout where out partition starts */
 | 
			
		||||
+
 | 
			
		||||
+	printk(KERN_INFO "Scanning flash for end of kernel magic\n");
 | 
			
		||||
+	for(flash_scan_count = 0; flash_scan_count < 100000; flash_scan_count++){
 | 
			
		||||
+		if(strncmp(&flash_mem[flash_scan_count], part_magic, magic_len - 1) == 0)
 | 
			
		||||
+		{
 | 
			
		||||
+			kernel_part_size = flash_mem[flash_scan_count + magic_len ];
 | 
			
		||||
+			kernel_part_size <<= 8;
 | 
			
		||||
+			kernel_part_size += flash_mem[flash_scan_count + magic_len + 2];
 | 
			
		||||
+			kernel_part_size <<= 8;
 | 
			
		||||
+			kernel_part_size += flash_mem[flash_scan_count + magic_len + 1];
 | 
			
		||||
+			kernel_part_size <<= 8;
 | 
			
		||||
+			kernel_part_size += flash_mem[flash_scan_count + magic_len + 3];
 | 
			
		||||
+			printk(KERN_INFO "Kernel ends at 0x%.08X\n", kernel_part_size);
 | 
			
		||||
+			flash_scan_count = 1100000;
 | 
			
		||||
+		}
 | 
			
		||||
+	}
 | 
			
		||||
+
 | 
			
		||||
+
 | 
			
		||||
+	if(kernel_part_size){
 | 
			
		||||
+		kernel_part_size = (kernel_part_size & 0xffff0000);
 | 
			
		||||
+		axis_default_partitions[0].size = kernel_part_size;
 | 
			
		||||
+		axis_default_partitions[1].size =  mymtd->size - axis_default_partitions[0].size;
 | 
			
		||||
+		axis_default_partitions[1].offset = axis_default_partitions[0].size;
 | 
			
		||||
+	}
 | 
			
		||||
 
 | 
			
		||||
 	if (mymtd) {
 | 
			
		||||
 		mymtd->owner = THIS_MODULE;
 | 
			
		||||
@ -1,43 +0,0 @@
 | 
			
		||||
--- a/drivers/serial/crisv10.c
 | 
			
		||||
+++ b/drivers/serial/crisv10.c
 | 
			
		||||
@@ -27,6 +27,7 @@ static char *serial_version = "$Revision
 | 
			
		||||
 #include <linux/kernel.h>
 | 
			
		||||
 #include <linux/mutex.h>
 | 
			
		||||
 #include <linux/bitops.h>
 | 
			
		||||
+#include <linux/device.h>
 | 
			
		||||
 
 | 
			
		||||
 #include <asm/io.h>
 | 
			
		||||
 #include <asm/irq.h>
 | 
			
		||||
@@ -4384,6 +4385,7 @@ static const struct tty_operations rs_op
 | 
			
		||||
 	.tiocmset = rs_tiocmset
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
+static struct class *rs_class;
 | 
			
		||||
 static int __init
 | 
			
		||||
 rs_init(void)
 | 
			
		||||
 {
 | 
			
		||||
@@ -4518,6 +4520,24 @@ rs_init(void)
 | 
			
		||||
 #endif
 | 
			
		||||
 #endif /* CONFIG_SVINTO_SIM */
 | 
			
		||||
 
 | 
			
		||||
+	rs_class = class_create(THIS_MODULE, "rs_tty");
 | 
			
		||||
+#ifdef CONFIG_ETRAX_SERIAL_PORT0 
 | 
			
		||||
+	class_device_create(rs_class, NULL,
 | 
			
		||||
+		MKDEV(TTY_MAJOR, 64), NULL, "ttyS0");
 | 
			
		||||
+#endif
 | 
			
		||||
+#ifdef CONFIG_ETRAX_SERIAL_PORT1 
 | 
			
		||||
+	class_device_create(rs_class, NULL,
 | 
			
		||||
+		MKDEV(TTY_MAJOR, 65), NULL, "ttyS1");
 | 
			
		||||
+#endif
 | 
			
		||||
+#ifdef CONFIG_ETRAX_SERIAL_PORT2 
 | 
			
		||||
+	class_device_create(rs_class, NULL,
 | 
			
		||||
+		MKDEV(TTY_MAJOR, 66), NULL, "ttyS2");
 | 
			
		||||
+#endif
 | 
			
		||||
+#ifdef CONFIG_ETRAX_SERIAL_PORT3 
 | 
			
		||||
+	class_device_create(rs_class, NULL,
 | 
			
		||||
+		MKDEV(TTY_MAJOR, 67), NULL, "ttyS3");
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
 	return 0;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -1,33 +0,0 @@
 | 
			
		||||
diff -Naur linux-2.6.26/drivers/usb/host/Makefile os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/host/Makefile
 | 
			
		||||
--- linux-2.6.26/drivers/usb/host/Makefile	2008-07-13 23:51:29.000000000 +0200
 | 
			
		||||
+++ os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/host/Makefile	2008-08-21 10:39:44.000000000 +0200
 | 
			
		||||
@@ -16,6 +16,7 @@
 | 
			
		||||
 obj-$(CONFIG_USB_UHCI_HCD)	+= uhci-hcd.o
 | 
			
		||||
 obj-$(CONFIG_USB_SL811_HCD)	+= sl811-hcd.o
 | 
			
		||||
 obj-$(CONFIG_USB_SL811_CS)	+= sl811_cs.o
 | 
			
		||||
+obj-$(CONFIG_ETRAX_ARCH_V10)	+= hc-crisv10.o
 | 
			
		||||
 obj-$(CONFIG_USB_U132_HCD)	+= u132-hcd.o
 | 
			
		||||
 obj-$(CONFIG_USB_R8A66597_HCD)	+= r8a66597-hcd.o
 | 
			
		||||
 obj-$(CONFIG_USB_ISP1760_HCD)	+= isp1760.o
 | 
			
		||||
diff -Naur linux-2.6.26/drivers/usb/Kconfig os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/Kconfig
 | 
			
		||||
--- linux-2.6.26/drivers/usb/Kconfig	2008-07-13 23:51:29.000000000 +0200
 | 
			
		||||
+++ os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/Kconfig	2008-06-10 11:18:30.000000000 +0200
 | 
			
		||||
@@ -21,6 +21,7 @@
 | 
			
		||||
 	default y if USB_ARCH_HAS_EHCI
 | 
			
		||||
 	default y if PCMCIA && !M32R			# sl811_cs
 | 
			
		||||
 	default y if ARM				# SL-811
 | 
			
		||||
+	default y if ETRAXFS
 | 
			
		||||
 	default y if SUPERH				# r8a66597-hcd
 | 
			
		||||
 	default PCI
 | 
			
		||||
 
 | 
			
		||||
diff -Naur linux-2.6.26/drivers/usb/Makefile os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/Makefile
 | 
			
		||||
--- linux-2.6.26/drivers/usb/Makefile	2008-07-13 23:51:29.000000000 +0200
 | 
			
		||||
+++ os/linux-2.6-tag--devboard-R2_20-5/drivers/usb/Makefile	2008-10-01 10:56:43.000000000 +0200
 | 
			
		||||
@@ -16,6 +16,7 @@
 | 
			
		||||
 obj-$(CONFIG_USB_SL811_HCD)	+= host/
 | 
			
		||||
 obj-$(CONFIG_USB_U132_HCD)	+= host/
 | 
			
		||||
 obj-$(CONFIG_USB_R8A66597_HCD)	+= host/
 | 
			
		||||
+obj-$(CONFIG_ETRAX_USB_HOST)	+= host/
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_USB_C67X00_HCD)	+= c67x00/
 | 
			
		||||
 
 | 
			
		||||
@ -1,16 +0,0 @@
 | 
			
		||||
Index: linux-2.6.25.20/arch/cris/Kconfig
 | 
			
		||||
===================================================================
 | 
			
		||||
--- linux-2.6.25.20.orig/arch/cris/Kconfig	2008-11-10 19:50:34.000000000 +0100
 | 
			
		||||
+++ linux-2.6.25.20/arch/cris/Kconfig	2009-01-30 13:03:46.000000000 +0100
 | 
			
		||||
@@ -660,6 +660,10 @@
 | 
			
		||||
 
 | 
			
		||||
 source "drivers/ide/Kconfig"
 | 
			
		||||
 
 | 
			
		||||
+source "drivers/scsi/Kconfig"
 | 
			
		||||
+
 | 
			
		||||
+source "drivers/media/Kconfig"
 | 
			
		||||
+
 | 
			
		||||
 source "drivers/net/Kconfig"
 | 
			
		||||
 
 | 
			
		||||
 source "drivers/i2c/Kconfig"
 | 
			
		||||
 | 
			
		||||
@ -1,45 +0,0 @@
 | 
			
		||||
Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig
 | 
			
		||||
===================================================================
 | 
			
		||||
--- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Kconfig	2009-02-09 09:30:40.000000000 +0100
 | 
			
		||||
+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig	2009-02-09 21:23:12.000000000 +0100
 | 
			
		||||
@@ -450,11 +450,18 @@
 | 
			
		||||
 	  i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
 | 
			
		||||
 	  val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
 | 
			
		||||
 
 | 
			
		||||
+config ETRAX_I2C_GVC
 | 
			
		||||
+	bool "I2C GVC support"
 | 
			
		||||
+	depends on ETRAX_ARCH_V10 && !ETRAX_I2C
 | 
			
		||||
+	select ETRAX_I2C_USES_PB_NOT_PB_I2C
 | 
			
		||||
+	help
 | 
			
		||||
+	  Enables an I2C driver with Geert Vancompernolle improvement.
 | 
			
		||||
+
 | 
			
		||||
 # this is true for most products since PB-I2C seems to be somewhat
 | 
			
		||||
 # flawed..
 | 
			
		||||
 config ETRAX_I2C_USES_PB_NOT_PB_I2C
 | 
			
		||||
 	bool "I2C uses PB not PB-I2C"
 | 
			
		||||
-	depends on ETRAX_I2C
 | 
			
		||||
+	depends on ETRAX_I2C || ETRAX_I2C_GVC
 | 
			
		||||
 	help
 | 
			
		||||
 	  Select whether to use the special I2C mode in the PB I/O register or
 | 
			
		||||
 	  not.  This option needs to be selected in order to use some drivers
 | 
			
		||||
@@ -478,7 +485,7 @@
 | 
			
		||||
 
 | 
			
		||||
 config ETRAX_I2C_EEPROM
 | 
			
		||||
 	bool "I2C EEPROM (non-volatile RAM) support"
 | 
			
		||||
-	depends on ETRAX_I2C
 | 
			
		||||
+	depends on ETRAX_I2C || ETRAX_I2C_GVC
 | 
			
		||||
 	help
 | 
			
		||||
 	  Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
 | 
			
		||||
 	  driver.  Select size option: Probed, 2k, 8k, 16k.
 | 
			
		||||
Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile
 | 
			
		||||
===================================================================
 | 
			
		||||
--- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Makefile	2009-02-09 09:30:41.000000000 +0100
 | 
			
		||||
+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile	2009-02-09 09:35:39.000000000 +0100
 | 
			
		||||
@@ -4,6 +4,7 @@
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_ETRAX_AXISFLASHMAP)	+= axisflashmap.o
 | 
			
		||||
 obj-$(CONFIG_ETRAX_I2C)			+= i2c.o
 | 
			
		||||
+obj-$(CONFIG_ETRAX_I2C_GVC)		+= i2c_gvc.o
 | 
			
		||||
 obj-$(CONFIG_ETRAX_I2C_EEPROM)		+= eeprom.o
 | 
			
		||||
 obj-$(CONFIG_ETRAX_GPIO)		+= gpio.o
 | 
			
		||||
 obj-$(CONFIG_ETRAX_DS1302)		+= ds1302.o
 | 
			
		||||
@ -73,37 +73,6 @@ define Host/Prepare/lzma
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/
 | 
			
		||||
endef
 | 
			
		||||
 | 
			
		||||
# XXX: the following are needed to build a cris toolchain
 | 
			
		||||
ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,2.6.28)),1)
 | 
			
		||||
  define Host/Prepare/pre/cris
 | 
			
		||||
	ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/include/asm-cris/arch
 | 
			
		||||
	ln -sf $(HOST_BUILD_DIR)/include/asm-cris/arch-v10 $(HOST_BUILD_DIR)/arch/cris/arch
 | 
			
		||||
  endef
 | 
			
		||||
 | 
			
		||||
  define Host/Prepare/post/cris
 | 
			
		||||
	$(CP) \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/linux/user.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/linux/autoconf.h \
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/linux/
 | 
			
		||||
	$(CP) \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/elf.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/page.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/user.h \
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/
 | 
			
		||||
	$(CP) \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-generic/memory_model.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-generic/page.h \
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm-generic/
 | 
			
		||||
 | 
			
		||||
	mkdir -p $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/arch
 | 
			
		||||
	$(CP) \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/arch/elf.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/arch/page.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/arch/ptrace.h \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/asm-cris/arch/user.h \
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/arch/
 | 
			
		||||
  endef
 | 
			
		||||
else
 | 
			
		||||
define Host/Prepare/post/cris
 | 
			
		||||
	$(CP) \
 | 
			
		||||
		$(HOST_BUILD_DIR)/include/linux/user.h \
 | 
			
		||||
@ -113,7 +82,6 @@ else
 | 
			
		||||
		$(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/arch
 | 
			
		||||
	$(SED) '/#include <asm\/page\.h>/d' $(BUILD_DIR_TOOLCHAIN)/linux-dev/usr/include/asm/user.h
 | 
			
		||||
endef
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
define Host/Prepare/post/ubicom32
 | 
			
		||||
	$(CP) \
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user