18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifndef __ASM_MIPSPROM_H
38c2ecf20Sopenharmony_ci#define __ASM_MIPSPROM_H
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#define PROM_RESET		0
68c2ecf20Sopenharmony_ci#define PROM_EXEC		1
78c2ecf20Sopenharmony_ci#define PROM_RESTART		2
88c2ecf20Sopenharmony_ci#define PROM_REINIT		3
98c2ecf20Sopenharmony_ci#define PROM_REBOOT		4
108c2ecf20Sopenharmony_ci#define PROM_AUTOBOOT		5
118c2ecf20Sopenharmony_ci#define PROM_OPEN		6
128c2ecf20Sopenharmony_ci#define PROM_READ		7
138c2ecf20Sopenharmony_ci#define PROM_WRITE		8
148c2ecf20Sopenharmony_ci#define PROM_IOCTL		9
158c2ecf20Sopenharmony_ci#define PROM_CLOSE		10
168c2ecf20Sopenharmony_ci#define PROM_GETCHAR		11
178c2ecf20Sopenharmony_ci#define PROM_PUTCHAR		12
188c2ecf20Sopenharmony_ci#define PROM_SHOWCHAR		13	/* XXX */
198c2ecf20Sopenharmony_ci#define PROM_GETS		14	/* XXX */
208c2ecf20Sopenharmony_ci#define PROM_PUTS		15	/* XXX */
218c2ecf20Sopenharmony_ci#define PROM_PRINTF		16	/* XXX */
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ci/* What are these for? */
248c2ecf20Sopenharmony_ci#define PROM_INITPROTO		17	/* XXX */
258c2ecf20Sopenharmony_ci#define PROM_PROTOENABLE	18	/* XXX */
268c2ecf20Sopenharmony_ci#define PROM_PROTODISABLE	19	/* XXX */
278c2ecf20Sopenharmony_ci#define PROM_GETPKT		20	/* XXX */
288c2ecf20Sopenharmony_ci#define PROM_PUTPKT		21	/* XXX */
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci/* More PROM shit.  Probably has to do with VME RMW cycles??? */
318c2ecf20Sopenharmony_ci#define PROM_ORW_RMW		22	/* XXX */
328c2ecf20Sopenharmony_ci#define PROM_ORH_RMW		23	/* XXX */
338c2ecf20Sopenharmony_ci#define PROM_ORB_RMW		24	/* XXX */
348c2ecf20Sopenharmony_ci#define PROM_ANDW_RMW		25	/* XXX */
358c2ecf20Sopenharmony_ci#define PROM_ANDH_RMW		26	/* XXX */
368c2ecf20Sopenharmony_ci#define PROM_ANDB_RMW		27	/* XXX */
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci/* Cache handling stuff */
398c2ecf20Sopenharmony_ci#define PROM_FLUSHCACHE		28	/* XXX */
408c2ecf20Sopenharmony_ci#define PROM_CLEARCACHE		29	/* XXX */
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci/* Libc alike stuff */
438c2ecf20Sopenharmony_ci#define PROM_SETJMP		30	/* XXX */
448c2ecf20Sopenharmony_ci#define PROM_LONGJMP		31	/* XXX */
458c2ecf20Sopenharmony_ci#define PROM_BEVUTLB		32	/* XXX */
468c2ecf20Sopenharmony_ci#define PROM_GETENV		33	/* XXX */
478c2ecf20Sopenharmony_ci#define PROM_SETENV		34	/* XXX */
488c2ecf20Sopenharmony_ci#define PROM_ATOB		35	/* XXX */
498c2ecf20Sopenharmony_ci#define PROM_STRCMP		36	/* XXX */
508c2ecf20Sopenharmony_ci#define PROM_STRLEN		37	/* XXX */
518c2ecf20Sopenharmony_ci#define PROM_STRCPY		38	/* XXX */
528c2ecf20Sopenharmony_ci#define PROM_STRCAT		39	/* XXX */
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci/* Misc stuff */
558c2ecf20Sopenharmony_ci#define PROM_PARSER		40	/* XXX */
568c2ecf20Sopenharmony_ci#define PROM_RANGE		41	/* XXX */
578c2ecf20Sopenharmony_ci#define PROM_ARGVIZE		42	/* XXX */
588c2ecf20Sopenharmony_ci#define PROM_HELP		43	/* XXX */
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci/* Entry points for some PROM commands */
618c2ecf20Sopenharmony_ci#define PROM_DUMPCMD		44	/* XXX */
628c2ecf20Sopenharmony_ci#define PROM_SETENVCMD		45	/* XXX */
638c2ecf20Sopenharmony_ci#define PROM_UNSETENVCMD	46	/* XXX */
648c2ecf20Sopenharmony_ci#define PROM_PRINTENVCMD	47	/* XXX */
658c2ecf20Sopenharmony_ci#define PROM_BEVEXCEPT		48	/* XXX */
668c2ecf20Sopenharmony_ci#define PROM_ENABLECMD		49	/* XXX */
678c2ecf20Sopenharmony_ci#define PROM_DISABLECMD		50	/* XXX */
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci#define PROM_CLEARNOFAULT	51	/* XXX */
708c2ecf20Sopenharmony_ci#define PROM_NOTIMPLEMENT	52	/* XXX */
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_ci#define PROM_NV_GET		53	/* XXX */
738c2ecf20Sopenharmony_ci#define PROM_NV_SET		54	/* XXX */
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ciextern char *prom_getenv(char *);
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ci#endif /* __ASM_MIPSPROM_H */
78