+/* can_delete_procentry removes device entries from CAN tree in the proc system */
+int can_delete_procentry(struct candevice_t *candev)
+{
+ if (remove_channel_from_procdir(candev))
+ return -ENODEV;
+
+ return 0;
+}
+
+static int can_chip_procinfo(char *buf, char **start, off_t offset,
+ int count, int *eof, void *data)
+{
+ struct canchip_t *chip=data;
+ int len=0;
+
+ /* Generic chip info */
+ len += sprintf(buf+len,"type : %s\n",chip->chip_type);
+ len += sprintf(buf+len,"index : %d\n",chip->chip_idx);
+ len += sprintf(buf+len,"irq : %d\n",chip->chip_irq);
+ len += sprintf(buf+len,"addr : %lu\n",
+ can_ioptr2ulong(chip->chip_base_addr));
+ len += sprintf(buf+len,"config : %s\n",
+ (chip->flags & CHIP_CONFIGURED) ? "yes":"no");
+ len += sprintf(buf+len,"clock : %ld Hz\n",chip->clock);
+ len += sprintf(buf+len,"baud : %ld\n",chip->baudrate);
+ len += sprintf(buf+len,"num obj : %d\n",chip->max_objects);
+
+
+#if 0
+ /* Chip specific info if available */
+ if(chip->chipspecops->get_info)
+ len += (chip->chipspecops->get_info)(chip,buf+len);
+#endif
+
+ *eof = 1;
+ return len;
+}
+
+