summaryrefslogtreecommitdiffstats
path: root/app/prototypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'app/prototypes.h')
-rw-r--r--app/prototypes.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/app/prototypes.h b/app/prototypes.h
new file mode 100644
index 0000000..52b504f
--- /dev/null
+++ b/app/prototypes.h
@@ -0,0 +1,57 @@
+/* tims_keyboard.c */
+extern int main(void);
+/* dfu.c */
+extern const struct usb_dfu_descriptor dfu_function;
+extern const struct usb_interface_descriptor dfu_iface;
+extern int dfu_control_request(usbd_device *usbd_dev, struct usb_setup_data *req, uint8_t **buf, uint16_t *len, void (**complete)(usbd_device *usbd_dev, struct usb_setup_data *req));
+/* keyboard.c */
+extern const struct usb_endpoint_descriptor keyboard_endpoint;
+extern const struct usb_interface_descriptor keyboard_iface;
+extern void keyboard_get_descriptor(uint8_t **buf, uint16_t *len);
+extern void keyboard_test(void);
+/* usb.c */
+extern const struct usb_device_descriptor dev;
+extern const struct usb_interface ifaces[];
+extern const struct usb_config_descriptor config;
+extern usbd_device *usbd_dev;
+extern void usb_set_config(usbd_device *usbd_dev, uint16_t wValue);
+extern void usb_init(void);
+extern void usb_run(void);
+/* consumer.c */
+extern const struct usb_endpoint_descriptor consumer_endpoint;
+extern const struct usb_interface_descriptor consumer_iface;
+extern void consumer_get_descriptor(uint8_t **buf, uint16_t *len);
+/* ps2.c */
+extern void exti0_isr(void);
+extern void atkbd_set(int clk, int dat);
+extern int atkbd_send(uint8_t d);
+extern void atkbd_init(void);
+/* ring.c */
+extern void ring_init(volatile ring_t *r, uint8_t *buf, size_t len);
+extern int ring_write_byte(volatile ring_t *r, uint8_t c);
+extern int ring_read_byte(volatile ring_t *r, uint8_t *c);
+extern int ring_write(volatile ring_t *r, uint8_t *buf, size_t len, int blocking);
+extern int ring_empty(volatile ring_t *r);
+/* usart.c */
+extern ring_t rx1_ring;
+extern ring_t tx1_ring;
+extern void usart1_isr(void);
+extern void usart1_queue(uint8_t d);
+extern void usart1_drain(void);
+extern int usart1_write(char *ptr, int len, int blocking);
+extern void usart_init(void);
+/* stdio.c */
+extern int _open(const char *name, int flags, int mode);
+extern int _close(int file);
+extern int _write(int file, char *buf, int nbytes);
+extern int _read(int file, char *buf, int nbytes);
+extern int _lseek(int file, int offset, int whence);
+extern int isatty(int file);
+extern void stdio_drain(void);
+/* ticker.c */
+extern volatile uint32_t ticks;
+extern void delay_us(uint32_t d);
+extern void sys_tick_handler(void);
+extern void delay_ms(uint32_t d);
+extern int timed_out(uint32_t then, unsigned int ms);
+extern void ticker_init(void);