diff options
Diffstat (limited to 'drivers/char')
-rw-r--r-- | drivers/char/hw_random/Kconfig | 2 | ||||
-rw-r--r-- | drivers/char/virtio_console.c | 7 | ||||
-rw-r--r-- | drivers/char/xilinx_hwicap/xilinx_hwicap.c | 30 | ||||
-rw-r--r-- | drivers/char/xilinx_hwicap/xilinx_hwicap.h | 2 |
4 files changed, 39 insertions, 2 deletions
diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig index 0689bf6b0183..b2402eb076c7 100644 --- a/drivers/char/hw_random/Kconfig +++ b/drivers/char/hw_random/Kconfig | |||
@@ -62,7 +62,7 @@ config HW_RANDOM_AMD | |||
62 | 62 | ||
63 | config HW_RANDOM_ATMEL | 63 | config HW_RANDOM_ATMEL |
64 | tristate "Atmel Random Number Generator support" | 64 | tristate "Atmel Random Number Generator support" |
65 | depends on HW_RANDOM && ARCH_AT91SAM9G45 | 65 | depends on HW_RANDOM && HAVE_CLK |
66 | default HW_RANDOM | 66 | default HW_RANDOM |
67 | ---help--- | 67 | ---help--- |
68 | This driver provides kernel-side support for the Random Number | 68 | This driver provides kernel-side support for the Random Number |
diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c index ddf86b6500b7..cdf2f5451c76 100644 --- a/drivers/char/virtio_console.c +++ b/drivers/char/virtio_console.c | |||
@@ -1895,6 +1895,13 @@ static int virtcons_restore(struct virtio_device *vdev) | |||
1895 | 1895 | ||
1896 | /* Get port open/close status on the host */ | 1896 | /* Get port open/close status on the host */ |
1897 | send_control_msg(port, VIRTIO_CONSOLE_PORT_READY, 1); | 1897 | send_control_msg(port, VIRTIO_CONSOLE_PORT_READY, 1); |
1898 | |||
1899 | /* | ||
1900 | * If a port was open at the time of suspending, we | ||
1901 | * have to let the host know that it's still open. | ||
1902 | */ | ||
1903 | if (port->guest_connected) | ||
1904 | send_control_msg(port, VIRTIO_CONSOLE_PORT_OPEN, 1); | ||
1898 | } | 1905 | } |
1899 | return 0; | 1906 | return 0; |
1900 | } | 1907 | } |
diff --git a/drivers/char/xilinx_hwicap/xilinx_hwicap.c b/drivers/char/xilinx_hwicap/xilinx_hwicap.c index 31ba11ca75e1..2c5d15beea35 100644 --- a/drivers/char/xilinx_hwicap/xilinx_hwicap.c +++ b/drivers/char/xilinx_hwicap/xilinx_hwicap.c | |||
@@ -167,6 +167,7 @@ static const struct config_registers v4_config_registers = { | |||
167 | .BOOTSTS = UNIMPLEMENTED, | 167 | .BOOTSTS = UNIMPLEMENTED, |
168 | .CTL_1 = UNIMPLEMENTED, | 168 | .CTL_1 = UNIMPLEMENTED, |
169 | }; | 169 | }; |
170 | |||
170 | static const struct config_registers v5_config_registers = { | 171 | static const struct config_registers v5_config_registers = { |
171 | .CRC = 0, | 172 | .CRC = 0, |
172 | .FAR = 1, | 173 | .FAR = 1, |
@@ -192,6 +193,31 @@ static const struct config_registers v5_config_registers = { | |||
192 | .CTL_1 = 19, | 193 | .CTL_1 = 19, |
193 | }; | 194 | }; |
194 | 195 | ||
196 | static const struct config_registers v6_config_registers = { | ||
197 | .CRC = 0, | ||
198 | .FAR = 1, | ||
199 | .FDRI = 2, | ||
200 | .FDRO = 3, | ||
201 | .CMD = 4, | ||
202 | .CTL = 5, | ||
203 | .MASK = 6, | ||
204 | .STAT = 7, | ||
205 | .LOUT = 8, | ||
206 | .COR = 9, | ||
207 | .MFWR = 10, | ||
208 | .FLR = UNIMPLEMENTED, | ||
209 | .KEY = UNIMPLEMENTED, | ||
210 | .CBC = 11, | ||
211 | .IDCODE = 12, | ||
212 | .AXSS = 13, | ||
213 | .C0R_1 = 14, | ||
214 | .CSOB = 15, | ||
215 | .WBSTAR = 16, | ||
216 | .TIMER = 17, | ||
217 | .BOOTSTS = 22, | ||
218 | .CTL_1 = 24, | ||
219 | }; | ||
220 | |||
195 | /** | 221 | /** |
196 | * hwicap_command_desync - Send a DESYNC command to the ICAP port. | 222 | * hwicap_command_desync - Send a DESYNC command to the ICAP port. |
197 | * @drvdata: a pointer to the drvdata. | 223 | * @drvdata: a pointer to the drvdata. |
@@ -744,6 +770,8 @@ static int __devinit hwicap_of_probe(struct platform_device *op, | |||
744 | regs = &v4_config_registers; | 770 | regs = &v4_config_registers; |
745 | } else if (!strcmp(family, "virtex5")) { | 771 | } else if (!strcmp(family, "virtex5")) { |
746 | regs = &v5_config_registers; | 772 | regs = &v5_config_registers; |
773 | } else if (!strcmp(family, "virtex6")) { | ||
774 | regs = &v6_config_registers; | ||
747 | } | 775 | } |
748 | } | 776 | } |
749 | return hwicap_setup(&op->dev, id ? *id : -1, &res, config, | 777 | return hwicap_setup(&op->dev, id ? *id : -1, &res, config, |
@@ -785,6 +813,8 @@ static int __devinit hwicap_drv_probe(struct platform_device *pdev) | |||
785 | regs = &v4_config_registers; | 813 | regs = &v4_config_registers; |
786 | } else if (!strcmp(family, "virtex5")) { | 814 | } else if (!strcmp(family, "virtex5")) { |
787 | regs = &v5_config_registers; | 815 | regs = &v5_config_registers; |
816 | } else if (!strcmp(family, "virtex6")) { | ||
817 | regs = &v6_config_registers; | ||
788 | } | 818 | } |
789 | } | 819 | } |
790 | 820 | ||
diff --git a/drivers/char/xilinx_hwicap/xilinx_hwicap.h b/drivers/char/xilinx_hwicap/xilinx_hwicap.h index 8cca11981c5f..d31ee23c9f13 100644 --- a/drivers/char/xilinx_hwicap/xilinx_hwicap.h +++ b/drivers/char/xilinx_hwicap/xilinx_hwicap.h | |||
@@ -86,7 +86,7 @@ struct hwicap_driver_config { | |||
86 | }; | 86 | }; |
87 | 87 | ||
88 | /* Number of times to poll the done regsiter */ | 88 | /* Number of times to poll the done regsiter */ |
89 | #define XHI_MAX_RETRIES 10 | 89 | #define XHI_MAX_RETRIES 5000 |
90 | 90 | ||
91 | /************ Constant Definitions *************/ | 91 | /************ Constant Definitions *************/ |
92 | 92 | ||