Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
256ae6a7
Commit
256ae6a7
authored
Feb 06, 2008
by
Josh Boyer
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'virtex-for-2.6.25' of
git://git.secretlab.ca/git/linux-2.6-virtex
into for-2.6.25
parents
e8318d98
ef66a9d2
Changes
14
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
2031 additions
and
43 deletions
+2031
-43
Documentation/powerpc/booting-without-of.txt
Documentation/powerpc/booting-without-of.txt
+14
-0
arch/powerpc/platforms/40x/virtex.c
arch/powerpc/platforms/40x/virtex.c
+1
-1
drivers/block/xsysace.c
drivers/block/xsysace.c
+4
-2
drivers/char/Kconfig
drivers/char/Kconfig
+10
-0
drivers/char/Makefile
drivers/char/Makefile
+1
-0
drivers/char/xilinx_hwicap/Makefile
drivers/char/xilinx_hwicap/Makefile
+7
-0
drivers/char/xilinx_hwicap/buffer_icap.c
drivers/char/xilinx_hwicap/buffer_icap.c
+380
-0
drivers/char/xilinx_hwicap/buffer_icap.h
drivers/char/xilinx_hwicap/buffer_icap.h
+57
-0
drivers/char/xilinx_hwicap/fifo_icap.c
drivers/char/xilinx_hwicap/fifo_icap.c
+381
-0
drivers/char/xilinx_hwicap/fifo_icap.h
drivers/char/xilinx_hwicap/fifo_icap.h
+62
-0
drivers/char/xilinx_hwicap/xilinx_hwicap.c
drivers/char/xilinx_hwicap/xilinx_hwicap.c
+904
-0
drivers/char/xilinx_hwicap/xilinx_hwicap.h
drivers/char/xilinx_hwicap/xilinx_hwicap.h
+193
-0
drivers/serial/uartlite.c
drivers/serial/uartlite.c
+15
-38
drivers/video/xilinxfb.c
drivers/video/xilinxfb.c
+2
-2
No files found.
Documentation/powerpc/booting-without-of.txt
View file @
256ae6a7
...
...
@@ -2578,6 +2578,20 @@ platforms are moved over to use the flattened-device-tree model.
Requred properties:
- current-speed : Baud rate of uartlite
v) Xilinx hwicap
Xilinx hwicap devices provide access to the configuration logic
of the FPGA through the Internal Configuration Access Port
(ICAP). The ICAP enables partial reconfiguration of the FPGA,
readback of the configuration information, and some control over
'warm boots' of the FPGA fabric.
Required properties:
- xlnx,family : The family of the FPGA, necessary since the
capabilities of the underlying ICAP hardware
differ between different families. May be
'virtex2p', 'virtex4', or 'virtex5'.
p) Freescale Synchronous Serial Interface
The SSI is a serial device that communicates with audio codecs. It can
...
...
arch/powerpc/platforms/40x/virtex.c
View file @
256ae6a7
...
...
@@ -37,7 +37,7 @@ static int __init virtex_probe(void)
{
unsigned
long
root
=
of_get_flat_dt_root
();
if
(
!
of_flat_dt_is_compatible
(
root
,
"x
ili
nx,virtex"
))
if
(
!
of_flat_dt_is_compatible
(
root
,
"x
l
nx,virtex"
))
return
0
;
return
1
;
...
...
drivers/block/xsysace.c
View file @
256ae6a7
...
...
@@ -1202,8 +1202,10 @@ static int __devexit ace_of_remove(struct of_device *op)
}
/* Match table for of_platform binding */
static
struct
of_device_id
__devinit
ace_of_match
[]
=
{
{
.
compatible
=
"xilinx,xsysace"
,
},
static
struct
of_device_id
ace_of_match
[]
__devinitdata
=
{
{
.
compatible
=
"xlnx,opb-sysace-1.00.b"
,
},
{
.
compatible
=
"xlnx,opb-sysace-1.00.c"
,
},
{
.
compatible
=
"xlnx,xps-sysace-1.00.a"
,
},
{},
};
MODULE_DEVICE_TABLE
(
of
,
ace_of_match
);
...
...
drivers/char/Kconfig
View file @
256ae6a7
...
...
@@ -841,6 +841,16 @@ config DTLK
To compile this driver as a module, choose M here: the
module will be called dtlk.
config XILINX_HWICAP
tristate "Xilinx HWICAP Support"
depends on XILINX_VIRTEX
help
This option enables support for Xilinx Internal Configuration
Access Port (ICAP) driver. The ICAP is used on Xilinx Virtex
FPGA platforms to partially reconfigure the FPGA at runtime.
If unsure, say N.
config R3964
tristate "Siemens R3964 line discipline"
---help---
...
...
drivers/char/Makefile
View file @
256ae6a7
...
...
@@ -77,6 +77,7 @@ obj-$(CONFIG_EFI_RTC) += efirtc.o
obj-$(CONFIG_SGI_DS1286)
+=
ds1286.o
obj-$(CONFIG_SGI_IP27_RTC)
+=
ip27-rtc.o
obj-$(CONFIG_DS1302)
+=
ds1302.o
obj-$(CONFIG_XILINX_HWICAP)
+=
xilinx_hwicap/
ifeq
($(CONFIG_GENERIC_NVRAM),y)
obj-$(CONFIG_NVRAM)
+=
generic_nvram.o
else
...
...
drivers/char/xilinx_hwicap/Makefile
0 → 100644
View file @
256ae6a7
#
# Makefile for the Xilinx OPB hwicap driver
#
obj-$(CONFIG_XILINX_HWICAP)
+=
xilinx_hwicap_m.o
xilinx_hwicap_m-y
:=
xilinx_hwicap.o fifo_icap.o buffer_icap.o
drivers/char/xilinx_hwicap/buffer_icap.c
0 → 100644
View file @
256ae6a7
This diff is collapsed.
Click to expand it.
drivers/char/xilinx_hwicap/buffer_icap.h
0 → 100644
View file @
256ae6a7
/*****************************************************************************
*
* Author: Xilinx, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*
* XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"
* AS A COURTESY TO YOU, SOLELY FOR USE IN DEVELOPING PROGRAMS AND
* SOLUTIONS FOR XILINX DEVICES. BY PROVIDING THIS DESIGN, CODE,
* OR INFORMATION AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE,
* APPLICATION OR STANDARD, XILINX IS MAKING NO REPRESENTATION
* THAT THIS IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,
* AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE
* FOR YOUR IMPLEMENTATION. XILINX EXPRESSLY DISCLAIMS ANY
* WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE
* IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR
* REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF
* INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE.
*
* Xilinx products are not intended for use in life support appliances,
* devices, or systems. Use in such applications is expressly prohibited.
*
* (c) Copyright 2003-2008 Xilinx Inc.
* All rights reserved.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 675 Mass Ave, Cambridge, MA 02139, USA.
*
*****************************************************************************/
#ifndef XILINX_BUFFER_ICAP_H_
/* prevent circular inclusions */
#define XILINX_BUFFER_ICAP_H_
/* by using protection macros */
#include <linux/types.h>
#include <linux/cdev.h>
#include <linux/version.h>
#include <linux/platform_device.h>
#include <asm/io.h>
#include "xilinx_hwicap.h"
void
buffer_icap_reset
(
struct
hwicap_drvdata
*
drvdata
);
/* Loads a partial bitstream from system memory. */
int
buffer_icap_set_configuration
(
struct
hwicap_drvdata
*
drvdata
,
u32
*
data
,
u32
Size
);
/* Loads a partial bitstream from system memory. */
int
buffer_icap_get_configuration
(
struct
hwicap_drvdata
*
drvdata
,
u32
*
data
,
u32
Size
);
#endif
drivers/char/xilinx_hwicap/fifo_icap.c
0 → 100644
View file @
256ae6a7
This diff is collapsed.
Click to expand it.
drivers/char/xilinx_hwicap/fifo_icap.h
0 → 100644
View file @
256ae6a7
/*****************************************************************************
*
* Author: Xilinx, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*
* XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"
* AS A COURTESY TO YOU, SOLELY FOR USE IN DEVELOPING PROGRAMS AND
* SOLUTIONS FOR XILINX DEVICES. BY PROVIDING THIS DESIGN, CODE,
* OR INFORMATION AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE,
* APPLICATION OR STANDARD, XILINX IS MAKING NO REPRESENTATION
* THAT THIS IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,
* AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE
* FOR YOUR IMPLEMENTATION. XILINX EXPRESSLY DISCLAIMS ANY
* WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE
* IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR
* REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF
* INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE.
*
* Xilinx products are not intended for use in life support appliances,
* devices, or systems. Use in such applications is expressly prohibited.
*
* (c) Copyright 2007-2008 Xilinx Inc.
* All rights reserved.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 675 Mass Ave, Cambridge, MA 02139, USA.
*
*****************************************************************************/
#ifndef XILINX_FIFO_ICAP_H_
/* prevent circular inclusions */
#define XILINX_FIFO_ICAP_H_
/* by using protection macros */
#include <linux/types.h>
#include <linux/cdev.h>
#include <linux/version.h>
#include <linux/platform_device.h>
#include <asm/io.h>
#include "xilinx_hwicap.h"
/* Reads integers from the device into the storage buffer. */
int
fifo_icap_get_configuration
(
struct
hwicap_drvdata
*
drvdata
,
u32
*
FrameBuffer
,
u32
NumWords
);
/* Writes integers to the device from the storage buffer. */
int
fifo_icap_set_configuration
(
struct
hwicap_drvdata
*
drvdata
,
u32
*
FrameBuffer
,
u32
NumWords
);
void
fifo_icap_reset
(
struct
hwicap_drvdata
*
drvdata
);
void
fifo_icap_flush_fifo
(
struct
hwicap_drvdata
*
drvdata
);
#endif
drivers/char/xilinx_hwicap/xilinx_hwicap.c
0 → 100644
View file @
256ae6a7
This diff is collapsed.
Click to expand it.
drivers/char/xilinx_hwicap/xilinx_hwicap.h
0 → 100644
View file @
256ae6a7
/*****************************************************************************
*
* Author: Xilinx, Inc.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version.
*
* XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS"
* AS A COURTESY TO YOU, SOLELY FOR USE IN DEVELOPING PROGRAMS AND
* SOLUTIONS FOR XILINX DEVICES. BY PROVIDING THIS DESIGN, CODE,
* OR INFORMATION AS ONE POSSIBLE IMPLEMENTATION OF THIS FEATURE,
* APPLICATION OR STANDARD, XILINX IS MAKING NO REPRESENTATION
* THAT THIS IMPLEMENTATION IS FREE FROM ANY CLAIMS OF INFRINGEMENT,
* AND YOU ARE RESPONSIBLE FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE
* FOR YOUR IMPLEMENTATION. XILINX EXPRESSLY DISCLAIMS ANY
* WARRANTY WHATSOEVER WITH RESPECT TO THE ADEQUACY OF THE
* IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OR
* REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE FROM CLAIMS OF
* INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE.
*
* Xilinx products are not intended for use in life support appliances,
* devices, or systems. Use in such applications is expressly prohibited.
*
* (c) Copyright 2003-2007 Xilinx Inc.
* All rights reserved.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 675 Mass Ave, Cambridge, MA 02139, USA.
*
*****************************************************************************/
#ifndef XILINX_HWICAP_H_
/* prevent circular inclusions */
#define XILINX_HWICAP_H_
/* by using protection macros */
#include <linux/types.h>
#include <linux/cdev.h>
#include <linux/version.h>
#include <linux/platform_device.h>
#include <asm/io.h>
struct
hwicap_drvdata
{
u32
write_buffer_in_use
;
/* Always in [0,3] */
u8
write_buffer
[
4
];
u32
read_buffer_in_use
;
/* Always in [0,3] */
u8
read_buffer
[
4
];
u32
mem_start
;
/* phys. address of the control registers */
u32
mem_end
;
/* phys. address of the control registers */
u32
mem_size
;
void
__iomem
*
base_address
;
/* virt. address of the control registers */
struct
device
*
dev
;
struct
cdev
cdev
;
/* Char device structure */
dev_t
devt
;
const
struct
hwicap_driver_config
*
config
;
const
struct
config_registers
*
config_regs
;
void
*
private_data
;
bool
is_open
;
struct
semaphore
sem
;
};
struct
hwicap_driver_config
{
int
(
*
get_configuration
)(
struct
hwicap_drvdata
*
drvdata
,
u32
*
data
,
u32
size
);
int
(
*
set_configuration
)(
struct
hwicap_drvdata
*
drvdata
,
u32
*
data
,
u32
size
);
void
(
*
reset
)(
struct
hwicap_drvdata
*
drvdata
);
};
/* Number of times to poll the done regsiter */
#define XHI_MAX_RETRIES 10
/************ Constant Definitions *************/
#define XHI_PAD_FRAMES 0x1
/* Mask for calculating configuration packet headers */
#define XHI_WORD_COUNT_MASK_TYPE_1 0x7FFUL
#define XHI_WORD_COUNT_MASK_TYPE_2 0x1FFFFFUL
#define XHI_TYPE_MASK 0x7
#define XHI_REGISTER_MASK 0xF
#define XHI_OP_MASK 0x3
#define XHI_TYPE_SHIFT 29
#define XHI_REGISTER_SHIFT 13
#define XHI_OP_SHIFT 27
#define XHI_TYPE_1 1
#define XHI_TYPE_2 2
#define XHI_OP_WRITE 2
#define XHI_OP_READ 1
/* Address Block Types */
#define XHI_FAR_CLB_BLOCK 0
#define XHI_FAR_BRAM_BLOCK 1
#define XHI_FAR_BRAM_INT_BLOCK 2
struct
config_registers
{
u32
CRC
;
u32
FAR
;
u32
FDRI
;
u32
FDRO
;
u32
CMD
;
u32
CTL
;
u32
MASK
;
u32
STAT
;
u32
LOUT
;
u32
COR
;
u32
MFWR
;
u32
FLR
;
u32
KEY
;
u32
CBC
;
u32
IDCODE
;
u32
AXSS
;
u32
C0R_1
;
u32
CSOB
;
u32
WBSTAR
;
u32
TIMER
;
u32
BOOTSTS
;
u32
CTL_1
;
};
/* Configuration Commands */
#define XHI_CMD_NULL 0
#define XHI_CMD_WCFG 1
#define XHI_CMD_MFW 2
#define XHI_CMD_DGHIGH 3
#define XHI_CMD_RCFG 4
#define XHI_CMD_START 5
#define XHI_CMD_RCAP 6
#define XHI_CMD_RCRC 7
#define XHI_CMD_AGHIGH 8
#define XHI_CMD_SWITCH 9
#define XHI_CMD_GRESTORE 10
#define XHI_CMD_SHUTDOWN 11
#define XHI_CMD_GCAPTURE 12
#define XHI_CMD_DESYNCH 13
#define XHI_CMD_IPROG 15
/* Only in Virtex5 */
#define XHI_CMD_CRCC 16
/* Only in Virtex5 */
#define XHI_CMD_LTIMER 17
/* Only in Virtex5 */
/* Packet constants */
#define XHI_SYNC_PACKET 0xAA995566UL
#define XHI_DUMMY_PACKET 0xFFFFFFFFUL
#define XHI_NOOP_PACKET (XHI_TYPE_1 << XHI_TYPE_SHIFT)
#define XHI_TYPE_2_READ ((XHI_TYPE_2 << XHI_TYPE_SHIFT) | \
(XHI_OP_READ << XHI_OP_SHIFT))
#define XHI_TYPE_2_WRITE ((XHI_TYPE_2 << XHI_TYPE_SHIFT) | \
(XHI_OP_WRITE << XHI_OP_SHIFT))
#define XHI_TYPE2_CNT_MASK 0x07FFFFFF
#define XHI_TYPE_1_PACKET_MAX_WORDS 2047UL
#define XHI_TYPE_1_HEADER_BYTES 4
#define XHI_TYPE_2_HEADER_BYTES 8
/* Constant to use for CRC check when CRC has been disabled */
#define XHI_DISABLED_AUTO_CRC 0x0000DEFCUL
/**
* hwicap_type_1_read: Generates a Type 1 read packet header.
* @parameter: Register is the address of the register to be read back.
*
* Generates a Type 1 read packet header, which is used to indirectly
* read registers in the configuration logic. This packet must then
* be sent through the icap device, and a return packet received with
* the information.
**/
static
inline
u32
hwicap_type_1_read
(
u32
Register
)
{
return
(
XHI_TYPE_1
<<
XHI_TYPE_SHIFT
)
|
(
Register
<<
XHI_REGISTER_SHIFT
)
|
(
XHI_OP_READ
<<
XHI_OP_SHIFT
);
}
/**
* hwicap_type_1_write: Generates a Type 1 write packet header
* @parameter: Register is the address of the register to be read back.
**/
static
inline
u32
hwicap_type_1_write
(
u32
Register
)
{
return
(
XHI_TYPE_1
<<
XHI_TYPE_SHIFT
)
|
(
Register
<<
XHI_REGISTER_SHIFT
)
|
(
XHI_OP_WRITE
<<
XHI_OP_SHIFT
);
}
#endif
drivers/serial/uartlite.c
View file @
256ae6a7
...
...
@@ -17,10 +17,21 @@
#include <linux/tty.h>
#include <linux/delay.h>
#include <linux/interrupt.h>
#include <linux/init.h>
#include <asm/io.h>
#if defined(CONFIG_OF)
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_platform.h>
/* Match table for of_platform binding */
static
struct
of_device_id
ulite_of_match
[]
__devinitdata
=
{
{
.
compatible
=
"xlnx,opb-uartlite-1.00.b"
,
},
{
.
compatible
=
"xlnx,xps-uartlite-1.00.a"
,
},
{}
};
MODULE_DEVICE_TABLE
(
of
,
ulite_of_match
);
#endif
#define ULITE_NAME "ttyUL"
...
...
@@ -275,6 +286,9 @@ static void ulite_release_port(struct uart_port *port)
static
int
ulite_request_port
(
struct
uart_port
*
port
)
{
pr_debug
(
"ulite console: port=%p; port->mapbase=%x
\n
"
,
port
,
port
->
mapbase
);
if
(
!
request_mem_region
(
port
->
mapbase
,
ULITE_REGION
,
"uartlite"
))
{
dev_err
(
port
->
dev
,
"Memory region busy
\n
"
);
return
-
EBUSY
;
...
...
@@ -375,32 +389,6 @@ static void ulite_console_write(struct console *co, const char *s,
spin_unlock_irqrestore
(
&
port
->
lock
,
flags
);
}
#if defined(CONFIG_OF)
static
inline
void
__init
ulite_console_of_find_device
(
int
id
)
{
struct
device_node
*
np
;
struct
resource
res
;
const
unsigned
int
*
of_id
;
int
rc
;
for_each_compatible_node
(
np
,
NULL
,
"xilinx,uartlite"
)
{
of_id
=
of_get_property
(
np
,
"port-number"
,
NULL
);
if
((
!
of_id
)
||
(
*
of_id
!=
id
))
continue
;
rc
=
of_address_to_resource
(
np
,
0
,
&
res
);
if
(
rc
)
continue
;
ulite_ports
[
id
].
mapbase
=
res
.
start
;
of_node_put
(
np
);
return
;
}
}
#else
/* CONFIG_OF */
static
inline
void
__init
ulite_console_of_find_device
(
int
id
)
{
/* do nothing */
}
#endif
/* CONFIG_OF */
static
int
__init
ulite_console_setup
(
struct
console
*
co
,
char
*
options
)
{
struct
uart_port
*
port
;
...
...
@@ -414,11 +402,7 @@ static int __init ulite_console_setup(struct console *co, char *options)
port
=
&
ulite_ports
[
co
->
index
];
/* Check if it is an OF device */
if
(
!
port
->
mapbase
)
ulite_console_of_find_device
(
co
->
index
);
/* Do we have a device now? */
/* Has the device been initialized yet? */
if
(
!
port
->
mapbase
)
{
pr_debug
(
"console on ttyUL%i not present
\n
"
,
co
->
index
);
return
-
ENODEV
;
...
...
@@ -617,13 +601,6 @@ static int __devexit ulite_of_remove(struct of_device *op)
return
ulite_release
(
&
op
->
dev
);
}
/* Match table for of_platform binding */
static
struct
of_device_id
__devinit
ulite_of_match
[]
=
{
{
.
type
=
"serial"
,
.
compatible
=
"xilinx,uartlite"
,
},
{},
};
MODULE_DEVICE_TABLE
(
of
,
ulite_of_match
);
static
struct
of_platform_driver
ulite_of_driver
=
{
.
owner
=
THIS_MODULE
,
.
name
=
"uartlite"
,
...
...
drivers/video/xilinxfb.c
View file @
256ae6a7
...
...
@@ -459,8 +459,8 @@ static int __devexit xilinxfb_of_remove(struct of_device *op)
}
/* Match table for of_platform binding */
static
struct
of_device_id
__devinit
xilinxfb_of_match
[]
=
{
{
.
compatible
=
"x
ilinx,ml300-fb
"
,
},
static
struct
of_device_id
xilinxfb_of_match
[]
__devinitdata
=
{
{
.
compatible
=
"x
lnx,plb-tft-cntlr-ref-1.00.a
"
,
},
{},
};
MODULE_DEVICE_TABLE
(
of
,
xilinxfb_of_match
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment