11da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* 21da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Definitions for talking to the CUDA. The CUDA is a microcontroller 31da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * which controls the ADB, system power, RTC, and various other things. 41da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * 51da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds * Copyright (C) 1996 Paul Mackerras. 61da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds */ 71da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 8fde28451359b476ba065a9a16fa83aa44168fe59David Howells#ifndef _LINUX_CUDA_H 9fde28451359b476ba065a9a16fa83aa44168fe59David Howells#define _LINUX_CUDA_H 10fde28451359b476ba065a9a16fa83aa44168fe59David Howells 111da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds/* CUDA commands (2nd byte) */ 121da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_WARM_START 0 131da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_AUTOPOLL 1 141da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_6805_ADDR 2 151da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_TIME 3 161da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_PRAM 7 171da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_6805_ADDR 8 181da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_TIME 9 191da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_POWERDOWN 0xa 201da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_POWERUP_TIME 0xb 211da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_PRAM 0xc 221da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_MS_RESET 0xd 231da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SEND_DFAC 0xe 241da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_RESET_SYSTEM 0x11 251da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_IPL 0x12 261da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_AUTO_RATE 0x14 271da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_AUTO_RATE 0x16 281da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_SET_DEVICE_LIST 0x19 291da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_DEVICE_LIST 0x1a 301da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#define CUDA_GET_SET_IIC 0x22 311da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 321da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#ifdef __KERNEL__ 331da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 341da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsextern int find_via_cuda(void); 351da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsextern int cuda_request(struct adb_request *req, 361da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds void (*done)(struct adb_request *), int nbytes, ...); 371da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvaldsextern void cuda_poll(void); 381da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds 391da177e4c3f41524e886b7f1b8a0c1fc7321cacLinus Torvalds#endif /* __KERNEL */ 40fde28451359b476ba065a9a16fa83aa44168fe59David Howells 41fde28451359b476ba065a9a16fa83aa44168fe59David Howells#endif /* _LINUX_CUDA_H */ 42