Initial commit of public repository open_pdks.
diff --git a/sky130/sky130.magicrc b/sky130/sky130.magicrc
new file mode 100644
index 0000000..feaf6b5
--- /dev/null
+++ b/sky130/sky130.magicrc
@@ -0,0 +1,114 @@
+###
+### Source file sky130.magicrc
+### Process this file with the m4 processor
+###
+puts stdout "Sourcing design .magicrc for technology TECHNAME ..."
+
+# Put grid on 0.005 pitch. This is important, as some commands don't
+# rescale the grid automatically (such as lef read?).
+
+set scalefac [tech lambda]
+if {[lindex $scalefac 1] < 2} {
+ scalegrid 1 2
+}
+
+# drc off
+drc euclidean on
+
+# Allow override of PDK path from environment variable PDKPATH
+if {[catch {set PDKPATH $env(PDKPATH)}]} {
+ set PDKPATH "STAGING_PATH/TECHNAME"
+}
+
+# loading technology
+#ifdef FULLTECH
+tech load $PDKPATH/MAGIC_CURRENT/TECHNAME-F.tech
+#else
+tech load $PDKPATH/MAGIC_CURRENT/TECHNAME.tech
+#endif
+
+# load device generator
+source $PDKPATH/MAGIC_CURRENT/TECHNAME.tcl
+
+# load bind keys (optional)
+# source $PDKPATH/MAGIC_CURRENT/TECHNAME-BindKeys
+
+# set units to lambda grid
+snap lambda
+
+# set sky130 standard power, ground, and substrate names
+set VDD VPWR
+set GND VGND
+set SUB VSUBS
+
+# Allow override of type of magic library views used, "mag" or "maglef",
+# from environment variable MAGTYPE
+
+if {[catch {set MAGTYPE $env(MAGTYPE)}]} {
+ set MAGTYPE maglef
+}
+
+# add path to reference cells
+if {[file isdir ${PDKPATH}/libs.ref/${MAGTYPE}]} {
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_pr_base
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_pr_rf
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_pr_rf2
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_io
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hd
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hdll
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hs
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_hvl
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_lp
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_ls
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_fd_sc_ms
+ addpath ${PDKPATH}/libs.ref/${MAGTYPE}/sky130_osu130
+} else {
+ addpath ${PDKPATH}/libs.ref/sky130_fd_pr_base/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_pr_rf/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_pr_rf2/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_io/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hd/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hdll/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hs/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_hvl/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_lp/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_ls/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_fd_sc_ms/${MAGTYPE}
+ addpath ${PDKPATH}/libs.ref/sky130_osu130/${MAGTYPE}
+}
+
+# add path to GDS cells
+#ifdef FULLTECH
+if {[file isdir ${PDKPATH}/libs.ref/gds}]} {
+ path cell ${PDKPATH}/libs.ref/gds/sky130_fd_pr_base
+ path cell ${PDKPATH}/libs.ref/gds/sky130_fd_pr_rf
+ path cell ${PDKPATH}/libs.ref/gds/sky130_fd_pr_rf2
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_io
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_hd
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_hdll
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_hs
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_hvl
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_lp
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_ls
+ path cell +${PDKPATH}/libs.ref/gds/sky130_fd_sc_ms
+ path cell +${PDKPATH}/libs.ref/gds/sky130_osu130
+} else {
+ path cell ${PDKPATH}/libs.ref/sky130_fd_pr_base/gds
+ path cell ${PDKPATH}/libs.ref/sky130_fd_pr_rf/gds
+ path cell ${PDKPATH}/libs.ref/sky130_fd_pr_rf2/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_io/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_hd/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_hdll/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_hs/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_hvl/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_lp/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_ls/gds
+ path cell +${PDKPATH}/libs.ref/sky130_fd_sc_ms/gds
+ path cell +${PDKPATH}/libs.ref/sky130_osu130/gds
+}
+#endif (FULLTECH)
+
+# add path to IP from catalog. This procedure defined in the PDK script.
+catch {magic::query_mylib_ip}
+# add path to local IP from user design space. Defined in the PDK script.
+catch {magic::query_my_projects}